github randyoyarzabal/chief v3.1.0
v3.1.0 Release

latest releases: v3.14, v3.1.3, v3.1.2...
one month ago

πŸš€ What's New

πŸ“‚ Advanced Folder Synchronization

  • chief.etc_folder_sync - Professional-grade directory synchronization using rsync
  • Progress by default - See real-time sync progress without verbose mode
  • Flexible options - Archive mode, deletion sync, checksum comparison, pattern exclusion
  • Safety features - Dry-run mode, confirmation prompts for destructive operations
  • Perfect for backups - Sync local directories to NFS mounts or remote locations
  • Cross-platform - Works on macOS, Linux, and other Unix systems

πŸ–₯️ Modern Terminal Multiplexer Support

  • tmux-based shared terminals - Replaced archaic GNU Screen with modern tmux
  • Enhanced collaboration - Better multi-user support with read-only observer mode
  • Rich feature set - Window/pane management, customizable status bars, better key bindings
  • Session listing - Easy discovery of available shared sessions
  • Detached session creation - Create background sessions without immediate attachment
  • Comprehensive help - Built-in tmux key binding reference and session management tips

πŸ›‘οΈ Enhanced Safety: Dry-Run for Critical Operations

  • chief.etc_create_bootusb -n - Preview USB creation operations safely
  • chief.git_reset-hard -n - Preview what files would be affected by git reset
  • Comprehensive preview - Shows exact commands and files that would be affected
  • Zero risk testing - Validate operations before execution

πŸ” Air-Gapped Installation Support

  • ./tools/install.sh --local - Install from local files in disconnected environments
  • Security compliant - No internet required during installation
  • Complete transparency - All files visible before installation
  • Manual update control - Updates require explicit file replacement

πŸ—οΈ Private Function Namespace Refactoring

  • All 39 private functions now use __chief_* prefix
  • Prevents conflicts with other bash utilities
  • Clean refactoring - no backward compatibility aliases

πŸ”„ GitHub Actions CI/CD Integration

  • Automated testing on every push to main/dev branches
  • Cross-platform validation (Ubuntu + macOS)
  • Build status visibility with βœ…/❌ on commits
  • Zero configuration - works immediately

πŸ§ͺ Comprehensive Test Suite

  • Syntax validation using bash -n
  • Plugin structure validation and naming conventions
  • Integration testing for core functionality
  • Local + CI compatible - run ./test/run-tests.sh

πŸš€ Enhanced Version Management

  • Development workflow with -dev suffix system
  • Release automation via __chief.bump commands
  • Auto documentation updates across all files
  • Fixed __chief.bump next-dev validation - Now properly accepts -dev version suffixes
  • Optional target version support - Use __chief.bump next-dev v3.1.0 to specify custom target version
  • Integrated test validation - Tests must pass before releases can proceed
  • Context-aware completion messages - Different instructions for development vs release workflows
  • Version-specific release notes - Each version gets its own dedicated release notes file
  • Improved branch targeting - Push instructions now use appropriate branch context

πŸ”’ SSL/TLS Certificate Management

  • chief.ssl_view_cert - Comprehensive certificate analysis with multiple display options
  • chief.ssl_get_cert - Download certificates from remote servers with chain support
  • chief.ssl_create_ca - Simple CA creation with minimal requirements (just run it!)
  • chief.ssl_create_tls_cert - Easy certificate creation signed by your CA
  • Rich help documentation and error handling for certificate operations

πŸ”§ SSL Plugin Bug Fixes & Enhancements

  • Fixed connectivity issues - Resolved macOS timeout command compatibility for chief.ssl_get_cert
  • Certificate chain downloads - Fixed noclobber protection issues preventing chain downloads
  • Enhanced certificate viewing - chief.ssl_view_cert now properly displays all certificates in chain files
  • Simplified default output - Shows only essential information (Subject, Issuer, Validity) by default
  • Extended details option - Use -e flag for comprehensive certificate information

☸️ OpenShift Management Enhancements

  • chief.oc.show_stuck_resources - Enhanced with --fix option to automatically remove finalizers from terminating resources
  • chief.oc_delete_stuck_ns - Force delete stuck terminating namespaces using Red Hat's troubleshooting methodology
  • chief.oc.approve_csrs - Complete rewrite with interactive/batch modes, filtering, and safety features
  • Professional documentation and color-coded terminal output following codebase standards

πŸ”§ OpenShift Core Functions Enhancement

  • chief.oc_get_all_objects - Complete rewrite with filtering, output formats, and comprehensive error handling
  • chief.oc_clean_olm - Enhanced OLM cleanup with selective targeting, dry-run modes, and safety features
  • chief.oc_clean_replicasets - Advanced ReplicaSet cleanup with age filtering and cross-namespace support
  • Colorized output - Professional terminal colors following Chief standards
  • Attribution added - Proper credit to Kyle Walker from Red Hat for original techniques

πŸ› οΈ System Utilities Enhancement

  • chief.etc.chmod-f - Enhanced file permission management with verbose/dry-run modes and validation
  • chief.etc.chmod-d - Fixed naming consistency and added comprehensive directory permission management
  • chief.etc.create_bootusb - Complete safety overhaul for bootable USB creation with multi-platform support
  • chief.etc.copy_dotfiles - Enhanced dotfiles management with backup options and interactive confirmations

πŸ›‘οΈ Enhanced Safety & Quality

  • Mandatory test validation for releases - __chief.bump release requires all tests to pass
  • Emergency override available - --skip-tests option for critical situations (strongly discouraged)
  • Workflow optimization - next-dev skips tests since it follows a successful release cycle
  • Clear test feedback - Detailed output showing which tests passed/failed

πŸ“ Enhanced User Experience

  • Comprehensive bug reporting guidance - Main help and documentation now include clear instructions for reporting issues
  • OS and version detection - Help system automatically shows user's OS and Chief version for easier issue reporting
  • GitHub issue link integration - Direct links to create issues with proper templates
  • Historical preservation - Restored v3.0 release notes that were accidentally lost during restructure

πŸ“‹ Upgrade Notes

⚠️ BREAKING CHANGES

Plugin Function Naming Convention Update
All plugin functions now use consistent underscore notation for better uniformity:

Before (v3.0.3 and earlier):

  • chief.ssl.view_cert β†’ Now: chief.ssl_view_cert
  • chief.oc.login β†’ Now: chief.oc_login
  • chief.aws.set_role β†’ Now: chief.aws_set_role
  • chief.etc.chmod-f β†’ Now: chief.etc_chmod-f

Migration: Update any scripts or aliases that reference the old dot notation.

For Everyone

  • New test infrastructure automatically available
  • Air-gapped support ready for restricted environments

For Developers

  • Run ./test/run-tests.sh locally before pushing
  • Use -v flag for verbose test output
  • Monitor build status in GitHub Actions
  • Enhanced flexibility - Choose specific patch/minor versions for development cycles
  • Better workflow guidance - Clear next steps for both development and release phases
  • Streamlined versioning - No more validation errors when working with development versions
  • Quality assurance - All releases now require passing tests, improving reliability
  • Test-driven releases - Fix any failing tests before attempting __chief.bump release
  • Emergency override - Use --skip-tests only in critical situations where tests can't be fixed immediately

Full details: See UPDATES file for complete changelog and technical details.

Don't miss a new chief release

NewReleases is sending notifications on new releases.