Releasing application versions
DEPRECATED: see AppVersionNew
The update_versions script releases new application versions. It creates database entries and copies files to the download directory.
- In your project's apps/ directory, create a subdirectory for each application, with the short name of the application. Put new application files here (see below). update_versions scans these directories for new application versions.
- From the project's root directory, run ./bin/update_versions.
Single-file application versions
File names must be of the form NAME_VERSION_PLATFORM[__PLAN-CLASS][.ext], e.g.:
- NAME is ignored; typically it is the app name. It must not contain numbers.
- VERSION is a string of the form N.M, where N and M are integers with M<100. This is converted to the single integer N*100 + M, which is used to specify application versions elsewhere in BOINC. M may have a leading zero, which is ignored.
- PLATFORM is the name of a platform in the database (if needed, add the platform to the DB using xadd).
- PLAN-CLASS is an optional plan class for the app version.
The file in the example above would have the path
Multiple-file application versions
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[__PLAN-CLASS][.ext]) and put the files in that directory.
If your application includes executable files other than the main file, make sure that their protection flags include the user execute (u+x) bit (update_versions will then set the <executable/> flag on its <file_info>).
apps/astropulse/astropulse_7.17_windows_intelx86.exe/ apps/astropulse/astropulse_7.17_windows_intelx86.exe/astropulse_7.17_windows_intelx86.exe apps/astropulse/astropulse_7.17_windows_intelx86.exe/some_required_file.dat apps/astropulse/astropulse_7.17_windows_intelx86.exe/graphics_application.exe
Passing extra information about files
If a filename of the form
is found, the file will have the given logical and physical names (i.e., the application will be able to access the file by passing the logical name to boinc_resolve_filename()).
If a file of the form
is found, its contents will be used as a digital signature for the corresponding file. See the recommended code-signing practices.
If a file of the form
In the above 2 cases, if the file has a separate logical name, then FILENAME is the full LOGICAL_NAME=PHYSICAL_NAME.
Options to update_versions
- -v or --verbose
- Enable verbose mode
- -s or --sign
- silently sign executables (not recommended)
- -f or --force
- don't prompt before committing changes