boinc/doc/tool_update_versions.php

98 lines
2.8 KiB
PHP

<?php
require_once("docutil.php");
page_head("Releasing application versions");
echo "
The <code>update_versions</code> script
releases new application versions.
It creates database entries and copies files to the download directory.
<p>
To use:
<ul>
<li>
If it doesn't already exit,
create an directory 'apps' under the project directory,
and add an ", htmlspecialchars("<app_dir>"),
" element to config.xml giving the path of the apps directory.
<li> Create a subdirectory for each application,
with the short name of the application.
Put new application versions here.
<code>update_versions</code>
scans these directories for new application versions.
<li> Run bin/update_versions
</ul>
<p>
File names must be of the form <code>NAME_VERSION_PLATFORM[.ext]</code>, e.g.:
<pre>
boinc_3.17_i686-pc-linux-gnu.gz
astropulse_7.17_windows_intelx86.exe
</pre>
<p>
Notes:
<ul>
<li>
<b>Platform strings must match the names of platforms in the database.</b>
If needed, <a href=tool_xadd.php>add the platform to the DB</a>.
<li>
<b>Applications must have the same major version number
as your BOINC server software</b>.
</ul>
<p>
If a file of the form
<pre>
FILENAME.sig
</pre>
is found, its contents will be used as a digital signature
for the corresponding file.
Recommended code-signing practices are described
<a href=code_signing.php>here</a>.
<p>
If a file of the form
<pre>
FILENAME.file_ref_info
</pre>
is found, its contents will be added to the &lt;file_ref>
element describing the file
(you can use this for attributes like &lt;copy_file>).
<h3>Multiple-file application versions</h3>
Application versions can consist of multiple files,
one of which is the main program.
To create a multiple-file application version,
create a directory with the same name as the main program
(of the form NAME_VERSION_PLATFORM[.ext]).
and put the files in that directory.
<p>
If your application includes executable files other than
the main file, make sure that their protection flags
include the user execute (u+x) bit.
<h2>Releasing core client versions</h2>
The same mechanism is used to release core client versions:
Create a subdirectory 'boinc' in the apps directory,
put new core client installer files there, and run update_versions.
<p>
<b>NOTE</b>: the files distributed in this way are installers, not executables.
Instructions for creating installers are
<a href=ssl_client_release_instructions.txt>here</a>.
<p>
<b>NOTE</b>: in the interests of consistency,
we recommend that BOINC projects not distribute core client versions,
but rather set the 'Download BOINC' link on their web page
to point to the download page on the main BOINC site.
Use this URL: <a href='http://setiweb.ssl.berkeley.edu/sah/download_boinc.php'>
http://setiweb.ssl.berkeley.edu/sah/download_boinc.php</a>
";
page_tail();
?>