2013-08-22 2 views
2

인형 매니페스트를 사용하여 사용하려는 빌드 스크립트가 있습니다. ant 빌드 스크립트는 다음 환경 변수가 작동하도록 설정해야합니다. 거기서 온라인으로 읽는 것은 꼭두각시가 길에 대한 변수를 설정하는 좋은 방법이 아닙니다. 어떤 제안.경로 변수 ins 인형 매니페스트 설정

export JAVA_HOME=/usr/java/jdk1.6.0_26 
export CATALINA_HOME=/usr/share/apache-tomcat-6.0.37 
export SERVICEMIX_HOME=/opt/apache-servicemix-3.3.2 
export ANT_HOME=/opt/opt/apache-ant-1.8.4 
PATH=$JAVA_HOME/bin:$CATALINA_HOME/bin:$SERVICEMIX_HOME/bin:$ANT_HOME/bin:$PATH 

이러한 설정이 끝나면 개미 모두 또는 일부 다른 빌드 스크립트로 EXEC를 호출 할 수 있습니다.

모든 안내가 훌륭합니다.

답변

0

Type Reference = exec를 살펴 보자이 같은
뭔가 작동합니다 ('환경'에주의하십시오) :

exec { 'my_nifty_command.sh': 
    environment => [JAVA_HOME=/usr/java/jdk1.6.0_26, CATALINA_HOME=/usr/share/apache-tomcat-6.0.37, SERVICEMIX_HOME=/opt/apache-servicemix-3.3.2, ANT_HOME=/opt/opt/apache-ant-1.8.4 ], 
    path  => "$JAVA_HOME/bin:$CATALINA_HOME/bin:$SERVICEMIX_HOME/bin:$ANT_HOME/bin:$PATH" 
} 
+1

를 반전해야한다. 평가 변수가있는 문자열에는 큰 따옴표가 필요하고 평가 변수가없는 문자열에는 작은 따옴표를 사용해야합니다 (평가를 건너 뛰려면 평가) - http://docs.puppetlabs.com/puppet/latest/reference/lang_datatypes.html#strings – bennylope

+0

@bennylope , 나는 따옴표를 고쳤다. – ptierno

0

숨바꼭질을

예를 들어 예를 수정하여 지속적으로 환경 변수를 설정하십시오/etc/environment

file { "/etc/environment": 
    [...] 
    content => inline_template("JAVA_HOME=/usr/java/jdk1.6.0_26\nCATALINA_HOME=/usr/share/apache-tomcat-6.0.37\nSERVICEMIX_HOME=/opt/apache-servicemix-3.3.2\nANT_HOME=/opt/opt/apache-ant-1.8.4\nPATH=$JAVA_HOME/bin:$CATALINA_HOME/bin:$SERVICEMIX_HOME/bin:$ANT_HOME/bin:$PATH"), 
} 

그렇습니다. 아이디어를 얻는 데는 매우 못생긴 발췌 문장입니다. 이것이 기본 접근법입니다. 변수의 내용 (데이터)을 hiera에서 가져 와서 인형 코드와 데이터를 구분할 수있는 조언.

감사 ITL은 인용 부호는 여기에 자신의 사용으로