[ANSIBLE] with_sequence와 when 사용하기

2021. 3. 2. 16:18·OPEN SOURCE/ANSIBLE
목차
  1. with_sequence
  2. with_sequence와 when 함께 사용하기
728x90
반응형

with_sequence

with_sequence를 이용하면 범위에 맞는 값들을 format 형식으로 넣어줍니다.

- name: with_sequence
  debug: msg="{{ item }}"
  with_sequence: start=1 end=4 format=test%02x
  
# result
test01
test02
test03
test04
  • format을 test{{ 2자리 수로 sequence }}로 두었기 때문에 위와 같은 결과를 보여줍니다.
  • with_sequence에서 루프를 돌 때의 변수는 item입니다.
    • C, C++, JAVA 등에서 for(int i = 0; i < 8; i++)할 때의 i를 item이라는 이름의 변수로 사용한다고 생각하면 됩니다.

만약, with_sequence에 들어가는 start ~ end값이 특정 변수에 의해 작성이 된다면, 아래와 같이 작성하는 것이 좋습니다. 

- name: with_sequence
  debug: msg="{{ item }}"
  with_sequence: start=0 end={{ count.stdout|int - 1 if count.stdout|int >= 1 else 0 }}
  • 만약 count.stdout|int 값이 0보다 작을 경우, end가 start 보다 작아 실행 시 오류를 내뱉습니다.
  • 따라서, 위와 같이 end문에 if ~ else 문을 넣으면 오류를 방지할 수 있습니다.

with_sequence와 when 함께 사용하기

when의 경우, with_sequence와 함께 사용하면 with_sequence의 각 루프마다 확인하는 용도로 사용됩니다.

따라서, 아래의 예시와 같이 루프 중 특정 루프는 건너뛰고자 할 때 사용할 수 있습니다.

- name: with_sequence + when
  debug: msg="{{ item }}"
  with_sequence: start=1 end=4 format=test%02x
  when: {{ item|int }} != 3
  
# result
test01
test02
test04
  • when 조건을 with_sequence의 각 루프마다 체크하여 item값이 3인 경우에 해당 루프를 실행하지 않도록 합니다.
728x90
반응형

'OPEN SOURCE > ANSIBLE' 카테고리의 다른 글

[Jinja2] Jinja2에서 조건식 사용하기  (0) 2021.02.26
  1. with_sequence
  2. with_sequence와 when 함께 사용하기
'OPEN SOURCE/ANSIBLE' 카테고리의 다른 글
  • [Jinja2] Jinja2에서 조건식 사용하기
EARTH_ROOPRETELCHAM
EARTH_ROOPRETELCHAM
반응형
EARTH_ROOPRETELCHAM
ROOPRETELCHAM
EARTH_ROOPRETELCHAM
전체
오늘
어제
  • 분류 전체보기
    • FRAMEWORK
      • Spring
    • PROGRAMMING LANGUAGE
      • KOTLIN
      • JAVA
    • DB
      • PostgreSQL
      • MySQL
      • Oracle
    • OPEN SOURCE
      • KAFKA
      • NGINX
      • TOMCAT
      • ANSIBLE
      • DOCKER
      • OPEN API
    • DEVELOPMENT TOOLS
      • eclipse
      • IntelliJ
      • Git
      • Build Tool
    • TECH BOOK
    • SECURITY
      • CHROME
    • MAC
      • DEVELOP
    • Server
      • LINUX
      • CLOUD
    • ALGORITHM
      • C++
      • Greedy
      • DFS(Depth First Search
      • BFS(Breath First Search
      • Recursion
    • WINDOWS
      • TIP
    • PRODUCTS
      • IT
    • IT Knowledge

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

MYSQL
Oracle
coroutine
코틀린
git
mac
IntelliJ
PostgreSQL
springboot
스프링부트
effective kotlin
이펙티브 코틀린
elastic beanstalk
게시판
코틀린 완벽 가이드
kotlin
Spring
java
자바
게시판프로젝트

최근 댓글

최근 글

hELLO· Designed By정상우.v4.5.3
EARTH_ROOPRETELCHAM
[ANSIBLE] with_sequence와 when 사용하기
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.