Rails 프로젝트에서 나는 Rake를 사용하여 외부에서 제공하는 특정 파일 목록을 가지고있다.Rake : 지정된 소스 디렉토리의 파일 처리
rake foofiles:process[vendor/sources]
은 현재 내가 (소스 디렉토리 내에서 자신의 상대 경로) 파일 이름을 지정하고있어 할당 된 FileList
를 사용 : 내 목표는 그래서 같은 인수로 이러한 파일의 소스 디렉토리를 지정 할 수있다 일정 :
REQUIRED_FILES = FileList[
'blah.csv',
'subdir/something.csv',
'subdir/monkeys/foo.bar',
...
]
내가 그 디렉토리에 존재하는 파일에 의존하는 작업을 할 수 있도록
가 어떻게 내 소스 디렉토리 인수로 각 파일을 붙일 수 ? 나는 위의 입력으로 rake
명령을 사용하면 내가 vendor/sources/blah.csv, vendor/sources/subdir/something.csv, vendor/sources/subdir/monkeys/foo.bar
등
편집에 따라 내 작업을해야 할 것, 예를 들어,
(이상적으로 아무것도 모든 해당 파일이 존재 없이 일어나지 않을 것입니다) : 배열/목록의 각 요소에 접두어를 추가하는 것은 비교적 간단합니다. 필자가 제공 한 소스 폴더 인수에 실제로 액세스 할 수 있도록 내 작업과 종속성을 구조화하는 방법에 대해 더 혼란 스럽습니다. 실제 작업을 수행하는 처리 작업에 대한 종속성으로서 새로운 prepended 파일 목록.
주요 발생 된 태스크 거입니다 내가 상단에 사용되는 구문하려면이 같은 것을보고있다 :
namespace :foofiles do
task :process, [:source_directory] => [???, my_newly_prepended_file_list] do |t, args|
# Do stuff
end
end
을하지만 작업에 :source_directory
인수를 제공하는 방법을 모른다 그 다음에 prepended를 수행 한 다음, 종속 파일로 미리 첨부 된 파일 목록을 :process
태스크로 리턴합니다.
당신은 "나는 공급 업체에 따라 내 작업을해야 할 것입니다/소스/blah.csv, 공급 업체/소스/하위 디렉터리/something.csv, 공급 업체/소스/하위 디렉터리/원숭이/foo에 의해 무슨 뜻 이죠. 바 등? " 이러한 파일을 레이크 작업의 인수로 전달하거나 레이크 작업 간의 종속성 또는 다른 모든 것을 이야기하고 싶습니까? –