
[BLEND_FILE, FRAME_DIR, frame])
jobFile.write("Log = %s/frame%d.log\n" % [LOGS_HOME, frame])
jobFile.write("Output = %s/frame%d.out\n" % [LOGS_HOME, frame])
jobFile.write("Error = %s/frame%d.err\n" % [LOGS_HOME, frame])
jobFile.write("transfer_executable = false\n")
jobFile.write("Requirements = Arch =?= \"X86_64\"\n")
jobFile.write("QUEUE\n")
jobFile.close
end
movieFile = File.new("%s/create_movie.sub"%[JOBS_HOME], "w")
movieFile.write("Universe = vanilla\n")
movieFile.write("Executable = /usr/bin/mencoder\n")
movieFile.write("Arguments = mf://%s/*.png -mf fps=5:type=png -ovc lavc -oac copy -o %s/output.avi\n"
% [FRAME_DIR, MOVIE_DIR])
movieFile.write("Log = %s/create_movie.log\n" % [LOGS_HOME])
movieFile.write("Output = %s/create_movie.out\n" % [LOGS_HOME])
movieFile.write("Error = %s/create_movie.err\n" % [LOGS_HOME])
movieFile.write("Requirements = Arch =?= \"X86_64\"\n")
movieFile.write("transfer_executable = false\n")
movieFile.write("QUEUE\n")
movieFile.close
dagFile = File.new("%s/render.dag" % [JOBS_HOME], "w")
dagFile.write("JOB Setup %s/testjob\n" % [JOBS_HOME] )
for frame in 1..NUM_FRAMES
dagFile.write("JOB Frame_%d frame%d.sub\n" % [frame, frame])
end
dagFile.write("JOB Create_Movie create_movie.sub\n")
dagFile.write("PARENT Setup CHILD")
for frame in 1..NUM_FRAMES
dagFile.write(" Frame_%d" % [frame])
end
dagFile.write("\nPARENT")
for frame in 1..NUM_FRAMES
dagFile.write(" Frame_%d" % [frame])
end
dagFile.write(" CHILD Create_Movie\n")
dagFile.close
start_job.sh – script which clean up and current/previous jobs, then submits the job as
prepared by setup_jobs.rb
#!/bin/bash
echo Removing all jobs in the queue ...
condor_rm -all
sleep 5
echo Cleaning up log/out/err files ....
rm -f /home/admin/render/production/logs/*.{log,out,err}
rm -f /home/admin/render/production/frames/frame*.*
rm -f /home/admin/render/production/jobs/render.dag.*
www.redhat.com 174
Komentáře k této Příručce