Changes between Version 16 and Version 17 of WrapperApp


Ignore:
Timestamp:
Jul 20, 2007, 9:12:01 AM (17 years ago)
Author:
davea
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • WrapperApp

    v16 v17  
    5252 * Compile the program 'worker' from the [ExampleApps boinc_samples] tree, producing (say) 'worker_5.10_windows_intelx86.exe'. This is the legacy app. If reads from stdin and writes to stdout; it also opens and reads a file 'in', and opens and writes a file 'out'. It takes one command-line argument: the number of CPU seconds to use.
    5353 * Compile the program 'wrapper' from the [ExampleApps boinc_samples] tree, producing (say) 'wrapper_5.10_windows_intelx86.exe'. This program executes your legacy application, and acts as a proxy for it (to report CPU time etc.).
    54  * Using the [MakeProject make_project worker] command (in BOINC_SOURCE/tools/), create the server components of your project, called 'worker'. In the 'project/worker/apps' directory create the following sub-directories: 'worker/wrapper_5.10_windows_intelx86.exe/'. Put the files 'wrapper_5.10_windows_intelx86.exe', and 'worker_5.10_windows_intelx86.exe' there.
     54 * [MakeProject Create a project] if you haven't already done so.
     55 * [AppVersion Create an application] named 'worker' and a corresponding directory 'PROJECT/apps/worker'. In this directory, create a directory 'wrapper_5.10_windows_intelx86.exe'. Put the files 'wrapper_5.10_windows_intelx86.exe', and 'worker_5.10_windows_intelx86.exe' there.
    5556 * In the same directory, create a file 'job.xml=job_1.12.xml' (1.12 is a version number) containing
    5657{{{
     
    6566}}}
    6667 This file (which has logical name 'job.xml' and physical name 'job_1.12.xml') is read by 'wrapper'; it tells it the name of the legacy program, what files to connect to its stdin/stdout, and a command line.
    67  * In the 'project/worker/templates' directory create a workunit template file, e.g., 'worker_wu'
     68 * In the 'PROJECT/templates' directory create a workunit template file called 'worker_wu':
    6869{{{
    6970<file_info>
     
    8788</workunit>
    8889}}}
    89  and a result template file, e.g., 'worker_result'
     90 and a result template file called 'worker_result'
    9091{{{
    9192<file_info>
     
    115116</result>
    116117}}}
    117  * Make sure the application name and the user friendly name (given in the make_project command above) in the last few lines of the 'project/worker/project.xml' file are correct ('worker' in this case).
    118  * In the 'project/worker/config.xml' file change the value of <disable_account_creation> form 0 to 1 if you want to enable people connecting to your project to create accounts.
    119  * At the end of this file is where you can change or add daemons to control your application.
    120  * Run [XaddTool bin/xadd] from the '/project/worker' directory to add platform and application records to the BOINC database.
    121  * Run [UpdateVersions bin/update_versions] to create an app version and to copy the files needed by Boinc to the 'project/worker/download' directory.
     118 * Run [UpdateVersions bin/update_versions] to create an app version and to copy the application files to the 'PROJECT/download' directory.
    122119 * Run [StartTool 'bin/start'] to start the daemons.
    123120 * Run a script like
    124121{{{
     122#! /bin/sh
    125123cp download/input `bin/dir_hier_path input`
    126124cp download/input2 `bin/dir_hier_path input2`
     
    131129input input2
    132130}}}
    133  to generate a workunit. Note that the order of the input files in the 'create_work' command has to be the same as in the workunit template file (worker_wu). If this is not satisfied, the client will generate errors when processing the workunit.
     131 to generate a workunit. The order of the input files in the 'create_work' command has to be the same as in the workunit template file (worker_wu). Otherwise the client will generate errors when processing the workunit.
    134132
    135133To understand how all this works: at the beginning of execution, the file layout is: