mirror of
https://github.com/GothenburgBitFactory/taskchampion-sync-server.git
synced 2026-04-05 17:20:35 +00:00
This includes: - Building a Docker image for Postgres as well as SQLite - Fuller instructions for usage of the package, including the Postgres builds. A few related things changed here: - `.env` is not used anymore -- the defaults in the Dockerfiles are sufficient - The Rust version in the Dockerfiles is increased to match the MSRV, and with it the Alpine version bumped to one built with that Rust version. - Cargo dependencies on native-tls and openssl updated to include only the `vendored` feature, so as not to require a system openssl installation. - Two GitHub jobs are set up, to build the two different Docker images - The documentation incorrectly suggested using `DELETE .. CASCADE` to delete clients. This syntax does not exist, as the cascading delete is configured in the schema.
30 lines
730 B
Bash
Executable File
30 lines
730 B
Bash
Executable File
#!/bin/sh
|
|
set -e
|
|
echo "starting entrypoint script..."
|
|
if [ "$1" = "/bin/taskchampion-sync-server" ]; then
|
|
: ${DATA_DIR:=/var/lib/taskchampion-sync-server/data}
|
|
export DATA_DIR
|
|
echo "setting up data directory ${DATA_DIR}"
|
|
mkdir -p "${DATA_DIR}"
|
|
chown -R taskchampion:users "${DATA_DIR}"
|
|
chmod -R 700 "${DATA_DIR}"
|
|
|
|
: ${LISTEN:=0.0.0.0:8080}
|
|
export LISTEN
|
|
echo "Listen set to ${LISTEN}"
|
|
|
|
if [ -n "${CLIENT_ID}" ]; then
|
|
export CLIENT_ID
|
|
echo "Limiting to client ID ${CLIENT_ID}"
|
|
else
|
|
unset CLIENT_ID
|
|
fi
|
|
|
|
if [ "$(id -u)" = "0" ]; then
|
|
echo "Running server as user 'taskchampion'"
|
|
exec su-exec taskchampion "$@"
|
|
fi
|
|
else
|
|
eval "${@}"
|
|
fi
|