# Builds a release container
[private]
build-container-release: 
    podman build -t ttime-server -f container/Containerfile .

# Builds a release container and runs it
start-release: build-container-release remove-podman-containers
    podman run -d -e DATABASE_URL=sqlite:release.db -p 8080:8080 --name ttime ttime-server

# Removes and stops any containers related to the project
[private]
remove-podman-containers:
    podman container rm -f ttime

# Saves the release container to a tarball, pigz is just gzip but multithreaded
save-release: build-container-release
    podman save --format=oci-archive ttime-server | pigz -9 > ttime-server-pigz.tar.gz

# Loads the release container from a tarball
load-release file:
    podman load --input {{file}}

# Cleans up everything related to the project
clean: remove-podman-containers
    podman image rm -f ttime-server
    rm -rf frontend/dist
    rm -rf frontend/node_modules
    cd backend && make clean
    @echo "Cleaned up!"