Create publishable archives for SKIRT 9 resources. More...
Functions | |
"create publishable archives for SKIRT 9 resources" | do ((str,"create only the resource archive with this name") name="") |
Create publishable archives for SKIRT 9 resources.
This script creates archives (ZIP files) containing SKIRT 9 resources that can be copied to the public server.
SKIRT 9 resources are bundled into one or more archives. The core archive is required, the others are optional. In other words, SKIRT 9 users must download at least the core resource archive for the code to be functional. Each archive is versioned, and the download procedure at the user's side attempts to synchronize the downloaded version with the version required by the currently checked out version of the SKIRT 9 C++ code. It is important to maintain older versions of the archives on the public server (at least for a while) so that users can continue to employ them (for example, because a newer version of SKIRT has a compatibility issue or a show-stopping bug).
This script expects the following directory structure:
<project-parent-directory> PTS9 SKIRT9 Resources9 StoredTables TableDirA TableDirB TableDirC ... Publish Archives Definitions Core include.txt version.txt history.txt ExtraA include.txt version.txt history.txt ExtraB ...
An archive can be created for each subdirectory of the Definitions directory. Each of these subdirectories should contain three basic text files:
The archive will contain the (recursive) contents of the StoredTables subdirectories listed in the include.txt file, in addition to the version.txt and history.txt files, placed at the top level. The archive will be named "SKIRT9_Resources_name_vxx.zip", where name is replaced by the name of the corresponding Definitions subdirectory, and xx is replaced by the version number. The archive will be placed in the Resources9/Publish/Archives directory, replacing any existing file with the same name (but leaving files with earlier version numbers untouched).
By default, the script creates an archive for each Definitions subdirectory. Specifying the --name=dirname
option restricts creation to the specified subdirectory.