9 Commits
Author SHA1 Message Date
alec.turner e35fc56163 Explicitly set version hash to use 7 characters
While 7 is the default number of characters used to abbreviate a commit hash,
this is not (by default) constant and different instances of the same repo may
generate different version strings as a result. This commit sets this length
explicitly to 7 in both package.sh and build-image scripts.
2024-04-11 11:43:26 -07:00
alec.turner 9cbefc841f Simplify application management and align with other docker applications
The notion of application "instances" is dropped in favor of a simpler,
single-instance approach. Default values are provided for all configuration
variables so allow the app to run without additional manual configuration.

A health check and auto-heal script are added to automatically restart the
application in case it becomes unavailable during operation.
2024-03-25 09:34:34 -07:00
alec.turner 50cb23a4c7 Packaging improvements
- compress images with xz by default (and decompress on install)
- add help menu and command line argument parsing to package.sh
- display packaging status if `pv` command available
2024-03-11 16:29:59 -07:00
alec.turner e88aef18f4 Add image utils and bugfixes from kenya-emr 2024-03-09 14:07:45 -08:00
alec.turner 0ef5029931 add version file to package and print version on start 2024-03-08 12:39:18 -08:00
alec.turner a2a9395e39 Make image packaging and installation optional
Eventually, images should not be transferred as part of the application package,
using a more efficient mechanism instead. Other cases may already exist where
packaging without the image is preferrable.

When the `PACKAGE_IMAGES` variable is not set to 1 (default: 1), images will not
be included in the package. The installation script now handles the case where
the `images` folder is missing altogether.
2024-03-08 12:29:40 -08:00
alec.turner 407baf9727 correction to package format
the package format was slightly off - there should have been a folder in the
root of the archive wrapping the package contents. This is now implemented.
2024-03-06 09:03:03 -08:00
alec.turner 3c3af11360 build separate x86_64/aarch64 packages and explicitly define images 2024-03-05 15:12:55 -08:00
alec.turner ca3d2f5540 Implement basic packaging/install/entry scripts
The packaging script will create a new tar.bz2 archive containing an install
script, a set of docker images, and a root folder with files to be installed.
The root folder includes a systemd service, a docker compose file, an entry
script, and a template config file.

On installation docker images are loaded onto the target system, install files
are copied, then systemd services are installed.
2024-02-28 16:52:07 -08:00