Add updateDockerImages.sh updateYtdlpForVideoTranslation.sh
This commit is contained in:
40
updateDockerImages.sh
Executable file
40
updateDockerImages.sh
Executable file
@@ -0,0 +1,40 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -euo pipefail
|
||||||
|
IFS=$'\n\t'
|
||||||
|
|
||||||
|
echo "[$(date '+%F %T')] Starting updateDockerImages.sh"
|
||||||
|
|
||||||
|
BASE="/DATA01/dockers"
|
||||||
|
SERVICES=(adguardhome caddy filebrowser freshrss gitea immich nextcloud storj)
|
||||||
|
|
||||||
|
# require Docker Compose v2 (`docker compose`)
|
||||||
|
if ! docker compose version >/dev/null 2>&1; then
|
||||||
|
echo "docker compose (v2) not available. Install/enable it." >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
run_compose() {
|
||||||
|
docker compose "$@"
|
||||||
|
}
|
||||||
|
|
||||||
|
for svc in "${SERVICES[@]}"; do
|
||||||
|
dir="$BASE/$svc"
|
||||||
|
if [ ! -d "$dir" ]; then
|
||||||
|
echo "Skipping $svc: directory not found: $dir"
|
||||||
|
continue
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "==> Updating $svc (dir: $dir)"
|
||||||
|
pushd "$dir" >/dev/null || { echo "pushd failed for $dir" >&2; continue; }
|
||||||
|
|
||||||
|
# stop if desired (warning only)
|
||||||
|
run_compose down || echo "Warning: 'down' failed for $svc"
|
||||||
|
|
||||||
|
# pull then bring up (handle per-service failures and continue)
|
||||||
|
run_compose pull || { echo "Error: 'pull' failed for $svc" >&2; popd >/dev/null; continue; }
|
||||||
|
run_compose up -d || { echo "Error: 'up -d' failed for $svc" >&2; popd >/dev/null; continue; }
|
||||||
|
|
||||||
|
popd >/dev/null
|
||||||
|
done
|
||||||
|
|
||||||
|
echo "[$(date '+%F %T')] Finished updateDockerImages.sh"
|
||||||
38
updateYtdlpForVideoTranslation.sh
Executable file
38
updateYtdlpForVideoTranslation.sh
Executable file
@@ -0,0 +1,38 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
echo "[$(date '+%F %T')] Starting updateYtdlpForVideoTranslation.sh"
|
||||||
|
|
||||||
|
PACKAGE_DIR="/home/awin/codes/videoTranslationPackage"
|
||||||
|
HTTP_DIR="/home/awin/codes/videoTranslationHttp"
|
||||||
|
DEPLOY_DIR="/DATA01/dockers/videoTranslationHttp"
|
||||||
|
|
||||||
|
# Update yt-dlp in videoTranslationPackage and rebuild the wheel.
|
||||||
|
cd "$PACKAGE_DIR"
|
||||||
|
rm -f "$PACKAGE_DIR"/dist/*.whl "$PACKAGE_DIR"/dist/*.tar.gz
|
||||||
|
./build.sh
|
||||||
|
|
||||||
|
wheel_paths=("$PACKAGE_DIR"/dist/*.whl)
|
||||||
|
if [ "${#wheel_paths[@]}" -ne 1 ]; then
|
||||||
|
echo "[ERROR] Expected exactly one wheel in $PACKAGE_DIR/dist, found ${#wheel_paths[@]}"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
wheel_path="${wheel_paths[0]}"
|
||||||
|
|
||||||
|
# Update videoTranslationPackage in videoTranslationHttp.
|
||||||
|
cd "$HTTP_DIR"
|
||||||
|
rm -f "$HTTP_DIR"/dependencies/videotranslation-*.whl
|
||||||
|
cp "$wheel_path" "$HTTP_DIR"/dependencies/
|
||||||
|
uv remove videoTranslation
|
||||||
|
uv add "$HTTP_DIR"/dependencies/$(basename "$wheel_path")
|
||||||
|
|
||||||
|
# Build docker image of videoTranslationHttp.
|
||||||
|
./build_docker.sh
|
||||||
|
|
||||||
|
# Go to docker folder and use new image.
|
||||||
|
cd "$DEPLOY_DIR"
|
||||||
|
docker compose down
|
||||||
|
docker compose up -d --force-recreate
|
||||||
|
|
||||||
|
echo "[$(date '+%F %T')] Finished updateYtdlpForVideoTranslation.sh"
|
||||||
Reference in New Issue
Block a user