assemblrr/migrations/002_remove_portainer.sh
soulis-1256 0858a5a629
Drop Portainer from default stack; harden upgrade and setup UX
Remove Portainer from managed compose and catalog; leave a custom.yaml
example for optional use. Upgrade/start use compose --remove-orphans and
migration 002 removes leftover Portainer containers unless custom.yaml
keeps it. Fix setup double URL list when status is unhealthy, share
OpenSubtitles y/N on express, and tone down indexer/provider prompts.
2026-08-12 15:26:21 +03:00

39 lines
1.2 KiB
Bash

#!/bin/bash
# Migration: drop Portainer from the default stack (use assemblrr CLI instead).
# Skip if the user still defines portainer in custom.yaml (optional path).
migration_id="002_remove_portainer"
migration_description="Remove Portainer container when no longer in managed compose"
# Return 0 = skip
migration_should_skip() {
local install_dir="${1:-}"
local f="$install_dir/compose/custom.yaml"
# User opted back in via custom overlay — leave their Portainer alone
if [ -f "$f" ] && grep -qE '^[[:space:]]*portainer:[[:space:]]*$' "$f" 2>/dev/null; then
return 0
fi
# Nothing to do if no container is present
if command -v docker >/dev/null 2>&1; then
if ! docker ps -a --format '{{.Names}}' 2>/dev/null | grep -qx 'portainer'; then
return 0
fi
else
return 0
fi
return 1
}
migration_apply() {
local install_dir="${1:-}"
# Container only — leave config/portainer on disk (user can delete manually)
if command -v docker >/dev/null 2>&1; then
if docker rm -f portainer >/dev/null 2>&1; then
echo "Removed portainer container (dropped from default stack)" >&2
fi
fi
return 0
}