2012-12-28 2 views
4

저는 꼭두각시 배치에 익숙하지 않습니다. 두 클래스를 정의했습니다.꼭두각시 클래스의 실행 순서를 확인하는 방법은 무엇입니까?

class taskname{ 
     exec{ "deploy_script": 
     command = "cp ${old_path} ${new path}", 
     user = root, 
     } 

     cron{"cron_script2": 
     command = "pyrhton ${new_path}", 
     user = root, 
     require = Exec["deploy_script"] 
     } 

} 

class taksname2{ 

     exec{ "deploy_script2": 
     command = "cp ${old_path} ${new path}", 
     user = root, 
     } 

     cron{"cron_script": 
     command = "pyrhton ${new_path}", 
     user = root, 
     require = Exec["deploy_script2"] 
     } 



} 

어떻게이 두 클래스의 실행 순서를 확인해야합니까? 나는 두 번째 작업은 첫 번째 작업하기 전에 실행 것으로 보인다 이러한 두 개의 클래스

include taskname 
include taskname2 

을 포함하는 새로운 매니페스트 파일에

init.pp을 시도했습니다. 실행 순서는 어떻게 적용합니까?

답변

5

Use one of these metaparameters.

그래서 요약하기 : 자원이 다른 자원에 의존 할 때마다, ->으로 before 또는 require metaparameter 또는 체인에게 자원을 사용합니다. 다른 리소스가 변경되면 리소스를 새로 고쳐야 할 때마다 은 notify 또는 subscribe 메타 매개 변수를 사용하거나 ~>과 리소스를 연결합니다. 일부 리소스는 다른 리소스를 볼 경우 자동으로 응답합니다. 은 약간의 노력을 줄일 수 있습니다.

.

리소스와 유사한 구문으로 선언 할 때 클래스는 메타 매개 변수를 사용할 수 있습니다. 이 경우, 클래스에 포함 된 모든 자원에는 해당 메타 매개 변수도 있습니다. 그러므로 noop => true이라는 클래스를 선언하면 클래스의 모든 리소스는 특별히 무시하지 않는 한 noop => true, 이됩니다.(관계 메타 매개 변수와 같은) 하나 이상의 값을 취할 수있는 메타 매개 변수는 컨테이너의 값과 개별 리소스의 특정 값을 병합합니다.

+0

을 참조하십시오. 클래스 내의 함수간에이 순서를 이해하지만 클래스 간의 순서는 어떻게됩니까? – icn

관련 문제