Skip to content

BUDA setup

David Anderson edited this page Dec 18, 2024 · 5 revisions

To enable BUDA on your BOINC project:

Create app and app versions

In your project's admin web page, click Manage application. Add an application with name buda and description BUDA.

In your project's apps/ directory, create directories

buda/
    1.0/
        windows_x86_64__docker/
        x86_64-apple-darwin__docker/
        x86_64-pc-linux-gnu__docker/

Download the current version of the Docker wrapper for each platform and put it in the corresponding directory.

In each of these directories, create a file version.inc containing

<version>
    <file>
        <physical_name>docker_wrapper_3_windows_x86_64.exe</physical_name>
        <main_program/>
    </file>
    <is_wrapper/>
</version>

with the filename of the Docker wrapper for that platform.

Web coniguration

In your project's html/project/project.inc, add

$web_apps = [];
function web_app($appname, $submit_url, $assim_move) {
    global $web_apps;
    $x = new StdClass;
    $x->submit_url = $submit_url;
    $x->assim_move = $assim_move;
    $web_apps[$appname] = $x;
}
web_app("buda", "buda.php", true);

This will add a BUDA link on your web site's Computing / Job Submission page.

Set up a validator and assimilator

Edit your project's config.xml and add the following to the <daemons> section:

<daemon>
  <cmd>script_validator --app buda --init_script "validate_init.py" --compare_script "validate_compare.py"</cmd>
</daemon>
<daemon>
  <cmd>script_assimilator -d 3 --app buda --script "sample_assimilate.py wu_name batch_id files"</cmd>
</daemon>

Deploy BUDA

  • Download and compile the current BOINC code.

  • Stop the project.

  • Run bin/upgrade.

  • Run bin/update_versions.

  • Start the project.

Clone this wiki locally