The SIARD (Software-Independent Archival of Relational Databases) standard defines a format for the long-term archival of relational database contents. To facilitate this process, the "Siard Suite" application offers a user-friendly graphical interface for archiving, restoring, searching, and exporting SIARD archives. With its intuitive design Siard Suite makes it easy to preserve valuable data from relational databases in a way that ensures its longevity and accessibility.
Java 17 with Java FX - you can get it from here: https://www.azul.com/downloads/?version=java-17-lts&package=jdk-fx#zulu
For asdf users:
asdf install
Run the application from the command line:
./gradlew run
Run tests and build the package
./gradlew build
the build task creates a distribution in build/distributions
that contains an archive with the necessary executable
scripts.
You can also create platform specific runtimes for the application:
./gradlew jpackageImage
NOTE: You can only create images for the OS you are running the task on.
The image is then available at ./build/jpackage/siard-suite
To create a platform specific installer use:
./gradlew jpackage
Hint: If you are working on ubuntu building the rpm installer may fail - in this case install the necessary packages on your system:
sudo apt install alien
Versions and tags are managed with the Axion Release Plugin for Gradle (https://github.com/allegro/axion-release-plugin)
Short overview:
./gradlew currentVersion # show the current version
./gradlew release # creates a new release adds a tag and pushes it to remote.
Run the release task to create a new patch version and push it to remote. The GitHub Actions will create the deliverables.
NOTE: the official GitHub Release has to be created manually by BUAR!
While the versioning scheme looks like it's semver it is actually not! The major and minor version represent the supported SIARD Format version (currently 2.2)
The documentation is made with Asciidoc.
Create the documentation PDF:
./gradlew asciidoctorPdf
As part of the build process, the documentation is rendered and then bundled with the application artefact.