class Kitsune::Kit::Commands::InstallDockerEngine
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="install_docker_engine" BEFORE_FILE="${BACKUP_DIR}/${SCRIPT_ID}.before" AFTER_FILE="${BACKUP_DIR}/${SCRIPT_ID}.after" TARGET_PKGS=(docker-ce docker-ce-cli containerd.io) echo "✍🏻 TARGET_PKGS=(\${TARGET_PKGS[*]})" if [ -f "$AFTER_FILE" ]; then to_remove=() for pkg in "\${TARGET_PKGS[@]}"; do if dpkg -l "\$pkg" &>/dev/null && ! grep -Fxq "\$pkg" "$BEFORE_FILE"; then to_remove+=("\$pkg") fi done if [ \${#to_remove[@]} -gt 0 ]; then echo "🔁 Removing Docker packages..." sudo apt-get remove -y "\${to_remove[@]}" && echo " - removed: \${to_remove[*]}" else echo " - no Docker packages to remove" fi sudo rm -f "$BEFORE_FILE" "$AFTER_FILE" && echo " - cleanup markers" else echo " - no marker for $SCRIPT_ID, skipping" fi echo "✅ Rollback done" EOH say output say "✅ Docker Engine rollback completed", :green end