Add mergedrop: drag-and-drop video merger (ffmpeg + FastAPI + React)

This commit is contained in:
alexz
2026-05-26 08:43:44 -07:00
parent 92ed300f97
commit e4cadf08dc
5 changed files with 201 additions and 0 deletions

37
apps/mergedrop/build/build.sh Executable file
View File

@@ -0,0 +1,37 @@
#!/bin/bash
# Build and push the MergeDrop Docker image.
# Clones the source repo (or reuses an existing checkout) and tags/pushes
# both :latest and the version tag.
set -euo pipefail
IMAGE_NAME="${IMAGE_NAME:-git.alexzaw.dev/alexz/mergedrop}"
IMAGE_TAG="${IMAGE_TAG:-1.0.0}"
SOURCE_REPO="${SOURCE_REPO:-https://git.alexzaw.dev/alexz/video-merger.git}"
WORKDIR="${WORKDIR:-/tmp/mergedrop-build}"
echo "==> Preparing source at ${WORKDIR}"
if [[ -d "${WORKDIR}/.git" ]]; then
git -C "${WORKDIR}" fetch --quiet origin
git -C "${WORKDIR}" reset --hard --quiet origin/HEAD
else
rm -rf "${WORKDIR}"
git clone --quiet "${SOURCE_REPO}" "${WORKDIR}"
fi
echo "==> Building ${IMAGE_NAME}:${IMAGE_TAG} (and :latest)"
cd "${WORKDIR}"
docker build "$@" \
-t "${IMAGE_NAME}:${IMAGE_TAG}" \
-t "${IMAGE_NAME}:latest" \
.
echo "==> Pushing ${IMAGE_NAME}:${IMAGE_TAG}"
docker push "${IMAGE_NAME}:${IMAGE_TAG}"
echo "==> Pushing ${IMAGE_NAME}:latest"
docker push "${IMAGE_NAME}:latest"
echo ""
echo "Done. To install on Runtipi:"
echo " sudo /etc/runtipi/runtipi-cli appstore update"
echo " sudo /etc/runtipi/runtipi-cli app install mergedrop:runtipi"