#!/bin/bash # Example backup script that uses kubectl set -e BACKUP_DIR="/tmp/backup-$(date +%Y%m%d-%H%M%S)" NAMESPACE="${NAMESPACE:-default}" echo "Starting backup process..." mkdir -p "${BACKUP_DIR}" # Backup all deployments echo "Backing up deployments..." kubectl get deployments -n "${NAMESPACE}" -o yaml > "${BACKUP_DIR}/deployments.yaml" # Backup all services echo "Backing up services..." kubectl get services -n "${NAMESPACE}" -o yaml > "${BACKUP_DIR}/services.yaml" # Backup all configmaps echo "Backing up configmaps..." kubectl get configmaps -n "${NAMESPACE}" -o yaml > "${BACKUP_DIR}/configmaps.yaml" # Backup all secrets (be careful with this in production) echo "Backing up secrets..." kubectl get secrets -n "${NAMESPACE}" -o yaml > "${BACKUP_DIR}/secrets.yaml" echo "Backup completed: ${BACKUP_DIR}" ls -lh "${BACKUP_DIR}"