This page is about deploying a test application with BOINC/Debian, and this will replace add functionality section of the BOINC/ServerGuide page.
1. Add an example app to BOINC project.
Install the application package, boinc-app-examples. The example application used in the document is upper_case, which converts text inside a file to uppercase.
1.1. Create a directory and add to app to project configuration.
% mkdir $installroot/$fileprojectname/apps/upper_case % cp /usr/lib/boinc-server/apps/upper_case apps/uppercase/uppercase_$(arch)-pc-linux-gnu
Now add following lines to project.xml in the project root
<app> <name>upper_case</name> <user_friendly_name>Convert to Upper Case</user_friendly_name> </app>
and run
./bin/xadd
The xadd tool will parse the project.xml and will put the configurations to the database.
1.2. Sign the application binary
BOINC need to sign the application binaries before dispatch for security reasons.
./bin/sign_executable apps/upper_case/upper_case_$(arch)-pc-linux-gnu code_sighn_private_key_file te >> apps/upper_case/upper_case_$(arch)-pc-linux-gnu.sig
Update the boinc database,
./bin/update_versions
and prompt yes when asked for confirmation.
1.3. Add a Work Unit
A work unit is the portion of data that the project should be analyzed, a work unit has following parts, * Input file(s) * Work Unit template * Result Template
Create a test input file, with some text in $installroot/$fileprojectname/download/in
echo test string >> download/input_file
Copy the default work unit and result template for upper case application to the templates folder.
# The paths are to be changed in the next version of package, so watch out. % cp /usr/share/doc/boinc-server-maker/examples/upper_case_* $installroot/$fileprojectname/templates/
and finally create the work,
./bin/create_work -appname upper_case -wu_name test -wu_template templates/upper_case_wu -result_temp late templates/upper_case_result input_file
This will create one work unit named test in the database.
1.4. Start the project.
Now its time to start the project.
./bin/start