2016-08-15 2 views
1

는 좀 바르있어 :가능성 : 기본값없이 변수를 가질 수있는 방법이 있습니까?

vars: 
    var1: foo 
    var2: bar 

나는 VAR3을 가지고 싶지만 그것은 런타임을 설정하는 내가 좋아하는 것입니다.

  • 사용자 개입이 필요하므로 vars_prompt을 사용하고 싶지 않습니다.
  • 이 전선도가 호출 될 때 강제로 전화하고 싶습니다. 전화 번호는 --extra-vars var3=bat입니다.
  • {{ var3 }}을 어딘가에서 참조하고 싶지 않습니다.이 플레이 북의 아이디어가 다소 자체적으로 문서화되기를 좋아하기 때문입니다.
  • 나는이 상황이 요구하고 표준이 아닌 한 일종의 include_vars 파일을 작성하지 않을 것입니다.
  • 나는 다음은 허용되지 않습니다 믿습니다

    vars: 
        var1: foo 
        var2: bar 
        var3 
    

어떻게해야합니까?

답변

2

assert이면 해결 방법으로 충분합니까?
이것은 게임 북을 잘 읽을 수있게 해줍니다.
는 첫 번째 작업으로 추가

- assert: 
    that: 
     - var3 is defined 
     - var3 in ['one', 'two', 'three'] 
+0

이 멋진 해결 방법처럼 보인다! 다른 어떤 생각을 할 수 있습니까? 그들이 존재하는지 궁금하다. –

+0

아니, 나는 보통 이렇게한다. –

+0

자기 문서화를 원하면이 방법을 사용하십시오. 그렇지 않으면, 귀하의 작전 지침서에있는 변수를 사용하고 추가 정보로 지시하십시오. 포함시키지 않으면, Anabilities는 정의되지 않은 var에 대해 오류를 발생시킵니다. – smiller171

관련 문제