class Kitsune::Kit::Commands::SetupDockerPrereqs
def perform_rollback(ssh)
def perform_rollback(ssh) output = ssh.exec! <<~EOH set -e sudo mkdir -p /usr/local/backups sudo chown deploy:deploy /usr/local/backups BACKUP_DIR="/usr/local/backups" SCRIPT_ID="setup_docker_prereqs" BEFORE_FILE="${BACKUP_DIR}/${SCRIPT_ID}.before" AFTER_FILE="${BACKUP_DIR}/${SCRIPT_ID}.after" TARGET_PKGS=( apt-transport-https ca-certificates curl gnupg lsb-release software-properties-common ) echo "✍🏻 TARGET_PKGS=(\${TARGET_PKGS[*]})" if [ -f "$AFTER_FILE" ]; then to_remove=() for pkg in "\${TARGET_PKGS[@]}"; do if dpkg -l "\$pkg" &>/dev/null; then if ! grep -Fxq "\$pkg" "$BEFORE_FILE"; then to_remove+=("\$pkg") fi fi done if [ \${#to_remove[@]} -gt 0 ]; then echo "🔁 Removing packages..." sudo apt-get remove -y "\${to_remove[@]}" && echo " - removed: \${to_remove[*]}" else echo " - no new packages to remove" fi sudo rm -f "$BEFORE_FILE" "$AFTER_FILE" && echo " - backups removed" else echo " - no marker for $SCRIPT_ID, skipping removal" fi EOH say output say "✅ Docker prerequisites rollback completed", :green end