[Debian Wiki] Update of "BOINC/ServerGuide/AppDeployment" by dhananjay
Debian Wiki
debian-www at lists.debian.org
Fri Jul 8 09:15:03 UTC 2011
Dear Wiki user,
You have subscribed to a wiki page or wiki category on "Debian Wiki" for change notification.
The "BOINC/ServerGuide/AppDeployment" page has been changed by dhananjay:
http://wiki.debian.org/BOINC/ServerGuide/AppDeployment?action=diff&rev1=13&rev2=14
Comment:
Added sample outputs to start and status programs, fixed xadd output.
Now add following lines to project.xml in the project root
-
- (you have used "upper_case" below and "uppercase" above ?!?!?)
{{{
[ -z "$installroot" -o -z "$fileprojectname" ] || . ~/.boinc_test.conf
@@ -90, +88 @@
fi
}}}
- It is somewhat sad but apparently so that those platforms need to be specified manually.
+ The platforms need not be defined here, since the default ''project.xml'' contains entries for all platforms, They are shown here for the user to understand finer details, and having duplicate entries on database will generate errors. In most cases, you can just append the application entries to the default ''project.xml'' file and run xadd.
+
Change to the projectroot {{{
cd "$installroot"/"$fileprojectname"
@@ -100, +99 @@
}}}
The local screen output will be similar to {{{
+ Processing <Platform#None i686-pc-linux-gnu> ...
+ Committed <Platform#3 i686-pc-linux-gnu> ; values:
+ {'_dirty': False,
+ '_lazy_lookups': {},
+ 'create_time': 1308988632L,
+ 'deprecated': 0,
+ 'id': 3L,
+ 'name': 'i686-pc-linux-gnu',
+ 'user_friendly_name': 'Linux running on an Intel x86-compatible CPU'}
+
Processing <App#None upper_case> ...
/var/tmp/boinc/boinctest/py/Boinc/db_base.py:63: Warning: Field 'host_scale_check' doesn't have a default value
cursor.execute(command)
@@ -119, +128 @@
'user_friendly_name': 'upperCASE',
'weight': 1.0}
}}}
+ This is the output of xadd parsing a single platform specification and a single application, the actual output is much longer due the increased number of platforms. Also it should be noted that currently xadd has no provision to delete from databases, it always appends the entries to databse, if you want to remove/change existing entries, you should do it manually.
- And when executing that line again, nothing happens: {{{
+ And when executing that line again, nothing happens since everything here is already inside database, : {{{
# bin/xadd
Processing <App#None upper_case> ...
Skipped existing <App#None upper_case>
@@ -129, +139 @@
The file ''project.xml'' is not touched.
- The database has now seen the application:
+ The database has now seen the application and platforms:
{{{
$ echo "select * from app" | mysql -u root -p $dbprojectname
Enter password:
- id create_time name min_version deprecated user_friendly_name homogeneous_redundancy weight beta target_nresults min_avg_pfc host_scale_check
+ id create_time name min_version deprecated user_friendly_name homogeneous_redundancy weight beta target_nresults min_avg_pfc host_scale_check
- 1 1309734539 upper_case 0 0 upperCASE 0 1 0 0 1 0
+ 1 1308465648 upper_case 0 0 upperCASE 0 1 0 0 1 0
+
+
+ $ echo "select * from platform;"| mysql -u root -p test
+ Enter password:
+ id create_time name user_friendly_name deprecated
+ 1 1308465648 i686-pc-linux-gnu Linux running on an Intel x86-compatible CPU 0
+ 2 1308465648 x86_64-pc-linux-gnu Linux running on an AMD x86_64 or Intel EM64T CPU 0
+
}}}
= Sign the application binary =
BOINC need to sign the application binaries before dispatch for security reasons.
-
- (Is this a different upper_case folder? If not, where is the version of the upper_case/uppercase filenames? sm)
{{{
privateKeyfile="./keys/code_sign_private"
@@ -165, +181 @@
Sample output:
{{{
-
- # ./bin/xadd
- Processing <App#None upper_case> ...
- Skipped existing <App#None upper_case>
- Processing <Platform#None i686-pc-linux-gnu> ...
- Committed <Platform#1 i686-pc-linux-gnu> ; values:
- {'_dirty': False,
- '_lazy_lookups': {},
- 'create_time': 1309737932L,
- 'deprecated': 0,
- 'id': 1L,
- 'name': 'i686-pc-linux-gnu',
- 'user_friendly_name': 'Linux/x86'}
- Processing <Platform#None x86_64-pc-linux-gnu> ...
- Committed <Platform#2 x86_64-pc-linux-gnu> ; values:
- {'_dirty': False,
- '_lazy_lookups': {},
- 'create_time': 1309737932L,
- 'deprecated': 0,
- 'id': 2L,
- 'name': 'x86_64-pc-linux-gnu',
- 'user_friendly_name': 'Linux/amd64'}
Toshiba:/var/tmp/boinc/boinctest# ./bin/update_versions
Found <App#11 upper_case> version 612 for <Platform#2 x86_64-pc-linux-gnu>: upper_case_6.12_x86_64-pc-linux-gnu
Using signature file /var/tmp/boinc/boinctest/apps/upper_case/upper_case_6.12_x86_64-pc-linux-gnu.sig
@@ -202, +196 @@
= 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)
+ * Input file(s)
- * Work Unit template
+ * Work Unit template
- * Result Template
+ * Result Template
- Create a test input file, with some text in $installroot/$fileprojectname/download/in
+ Create a test input file, with some text in $installroot/$fileprojectname/download/input_file
{{{
- echo test string >> download/input_file
+ $ 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/
+ $ cp /usr/share/doc/boinc-server-maker/examples/upper_case_* $installroot/$fileprojectname/templates/
}}}
- and finally create the work,
+ We will call the workunit test and to commit it to the databse, execute
{{{
- cd $installroot/$fileprojectname
+ $ cd $installroot/$fileprojectname
- ./bin/create_work -appname upper_case -wu_name test -wu_template templates/upper_case_wu -result_temp
+ $ ./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.
= Start the project. =
Now its time to start the project, assuming we are still inside the project root,
{{{
- ./bin/start
+ $./bin/start
+ Staying in ENABLED mode
+ Starting daemons
+ Starting daemon: feeder -d 3
+ Starting daemon: transitioner -d 3
+ Starting daemon: file_deleter -d 3
}}}
And ''./bin/status'' can be used to check status of the project.
+ {{{
+ $ ./bin/status
+ BOINC is ENABLED
+ DAEMON pid status lockfile disabled commandline
+ 1 16574 running locked no feeder -d 3
+ 2 16576 running locked no transitioner -d 3
+ 3 16579 running locked no file_deleter -d 3
+
+ TASK last run period next run lock file disabled commandline
+ 1 ? 24 hours NOW unlocked yes db_dump -d 2 -dump_spec ../db_dump_spec.xml
+ 2 ? 1 days NOW unlocked yes run_in_ops ./update_uotd.php
+ 3 ? 1 hour NOW unlocked yes run_in_ops ./update_forum_activities.php
+ 4 ? 7 days NOW unlocked yes update_stats -update_users -update_teams -update_hosts
+ 5 ? 24 hours NOW unlocked yes run_in_ops ./update_profile_pages.php
+ 6 ? 24 hours NOW unlocked yes run_in_ops ./team_import.php
+ 7 ? 24 hours NOW unlocked yes run_in_ops ./notify.php
+ }}}
+
More information about the pkg-boinc-commits
mailing list