2017-10-11 3 views
-1

요리사 레시피에서 기존 아티팩트를 백업 할 디렉토리를 만들고 싶습니다. 나는 뒤에 오는 체재를 가진 백업 전화 번호부를 창조하고 싶다.요리사에 타임 스탬프가 포함 된 디렉토리 생성

appname_bkp_17-10-11-125845

예를 들어이 디렉토리를 만들고 디렉토리 이름을 다음과 같은 변수에 추가해야합니다.

bkp_dir_name = appname_bkp_17-10-11-125845

+0

시도해 보셨습니까? 어디서 붙어 있니? –

+0

나는 이것을 얻었다. '시간 = Time.now.strftime ("% F- %의 T")'' Dir.mkdir "# 노드 {[ '디폴트'] [ 'default_backup_path']}/{APPNAME _ # 시간}"' 하지만 지금은 내 문제는이 디렉토리 이름을 변수로 만드는 방법입니다. – kkrrss

답변

1

요리사는 DSL이지만 여전히 가장 중요한 순수 루비입니다. 루비의 기본에 대해 조금 배우기 전에 쉐프에게 전적으로 의지하십시오. 왜냐하면 언어를 아는 것이 더 효율적이기 때문입니다.

time = Time.now.strftime("%F-%T").gsub(':','') 
dir = "appname_bkp_#{time}" 
path = ::File.join(node['default']['default_backup_path'], dir) 

# Chef resource to create a directory with default properties 
directory path 
+0

감사합니다 꽃병. 나는 아래와 같은 것을 시도하고있다. "FileUtils.cp_r Dir.glob"# {node [ 'default'] [ 'home']}/standalone/deployments/('*. ear') ","# {node [ 'default'] [ 'default_backup_path ']}/oms_bkp _ # {time}/"' 오류가 발생합니다. 이걸 좀 도와 주실 래요? TypeError : String을 Integer로 암시 적으로 변환하지 않습니다. – kkrrss

관련 문제