Add self-update functionality

Implement a self-update feature for TroubleKuber:

Features to implement

  • Add command to check for new versions
  • Implement automatic update from Git repository
  • Add version comparison logic
  • Create backup of current version before updating
  • Add rollback capability for failed updates
  • Implement update notifications

Implementation details

  • Create lib/utils/updater.sh module
  • Add version checking against Git repository
  • Implement safe update procedure with backups
  • Add configuration options for update behavior
  • Create update history tracking
  • Add changelog display for new versions

User experience

  • Allow users to check for updates with
    TroubleKuber v0.1.0

Usage: troublekuber [OPTIONS] Options: -d | --dry-run - Enable dry-run mode. Doesn't write to file. -h | --help - Print this help menu -i | --interactive - Use interactive mode -s | --skip-dependency-check - Skip dependency checks -v | --version - Displays the current version -x | --debug
- Enable debug mode

  • Provide update command:
    TroubleKuber v0.1.0

Usage: troublekuber [OPTIONS] Options: -d | --dry-run - Enable dry-run mode. Doesn't write to file. -h | --help - Print this help menu -i | --interactive - Use interactive mode -s | --skip-dependency-check - Skip dependency checks -v | --version - Displays the current version -x | --debug
- Enable debug mode

  • Show release notes during updates
  • Allow skipping versions or only getting stable releases