381e0caf14
This supports the TACC use case, in the jobs in a batch can use different Docker images and different input and output file signatures, none of which are known in advance. Python API binding: - A JOB_DESC object can optionally contain wu_template and result_template elements, which are the templates (the actual XML) to use for that job. Add these to the XML request message if present. - Added the same capability to the PHP binding, but not C++. - Added and debugged test cases for both languages. Also, submit_batch() can take either a batch name (in which case the batch is created) or a batch ID (in which the batch was created prior to remotely staging files). RPC handler: - in submit_batch(), check for jobs with templates specified and store them in files. For input templates (which are deleted after creating jobs) we put them in /tmp, and use a map so that if two templates are the same we use 1 file. For output templates (which have to last until all jobs are done) we put them in templates/tmp, with content-based filenames to economize. - When creating jobs, or generating SQL strings for multiple jobs, use these names as --wu_template_filename and --result_template_filename args to create_work (either cmdline args or stdin args) - Delete WU templates when done create_work.cpp: handle per-job --wu_template and --result_template args in stdin job lines (the names of per-job WU and result templates). Maintain a map mapping WU template name to contents, to avoid repeatedly reading them. For jobs that don't specify templates, use the ones specified at the batch level, or the defaults. |
||
---|---|---|
.tx | ||
android | ||
api | ||
apps | ||
build | ||
client | ||
clientctrl | ||
clientgui | ||
clientscr | ||
clientsetup/win | ||
clienttray | ||
coprocs/NVIDIA | ||
curl | ||
db | ||
doc | ||
drupal | ||
html | ||
lib | ||
locale | ||
m4 | ||
mac3rdParty | ||
mac_build | ||
mac_installer | ||
packages | ||
py | ||
samples | ||
sched | ||
stripchart | ||
test | ||
tools | ||
vda | ||
win_build | ||
xcompile | ||
zip | ||
.gitattributes | ||
.gitignore | ||
.scrutinizer.yml | ||
.travis.yml | ||
.vimrc | ||
COPYING | ||
COPYING.LESSER | ||
COPYRIGHT | ||
INSTALL | ||
Makefile.am | ||
Makefile.incl | ||
README.md | ||
TODO_OLD | ||
_autosetup | ||
bolt_checkin_notes.txt | ||
build_pos | ||
checkin_notes | ||
checkin_notes_2002 | ||
checkin_notes_2003 | ||
checkin_notes_2004 | ||
checkin_notes_2005 | ||
checkin_notes_2006 | ||
checkin_notes_2007 | ||
checkin_notes_2008 | ||
checkin_notes_2009 | ||
checkin_notes_2010 | ||
checkin_notes_2011 | ||
checkin_notes_2012 | ||
checkin_notes_samples | ||
configure.ac | ||
coverity-model.cpp | ||
generate_svn_version.sh | ||
gitlog2boinclog.sh | ||
gl.py | ||
notes | ||
project_specific_defines.h | ||
set-version | ||
testbase | ||
todo | ||
version.h | ||
version.h.in | ||
version.log |
README.md
Status
BOINC
Project Website: https://boinc.berkeley.edu
Want to create a project
See: https://boinc.berkeley.edu/trac/wiki
Want to help translate
See: https://boinc.berkeley.edu/trac/wiki/TranslateIntro
Want to contribute
See: https://boinc.berkeley.edu/trac/wiki/SoftwareDevelopment
Note
The University of California holds the copyright on all BOINC source code. By submitting contributions to the BOINC code, you irrevocably assign all right, title, and interest, including copyright and all copyright rights, in such contributions to The Regents of the University of California, who may then use the code for any purpose that it desires.
License
BOINC is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
BOINC is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with BOINC. If not, see http://www.gnu.org/licenses/.