Skip to content

Releases: HenryOwenz/cloudgate

v0.1.7

16 Mar 00:03
d9e3b4d

Choose a tag to compare

v0.1.7 - Search Functionality & Pagination Improvements

This release introduces search capabilities and pagination for resource views, significantly enhancing navigation and usability. Users can now quickly filter through large sets of resources and navigate through paginated results with intuitive keyboard controls.

✨ New Features

  • Search Functionality:

    • Real-time search filtering with '/' key activation
    • Search state with active status, query, and filtered items
    • UI enhancements showing search input and query in title
    • Seamless integration with pagination for filtered results
  • Pagination System:

    • Client-side pagination for functions, pipelines, and approvals
    • Navigation using 'h'/'←' (previous) and 'l'/'→' (next) keys
    • Page information displayed in title for better visibility
    • Increased default page size from 2 to 5 items for improved usability

🐛 Bug Fixes

  • Navigation & State Management:
    • Fixed Lambda execution view navigation with proper IsExecuteLambdaFlow flag handling
    • Ensured search state reset when navigating between views
    • Reset pagination state in handlers for approvals, executions, and pipeline operations
    • Improved key handling to pass through functional keys when in text input mode
    • Disabled pagination wrap-around behavior for more predictable navigation
    • Cleaned up Lambda execution view key handling for better UX
    • Ensured all data lists are cleared when navigating back to operation selection

🔧 Technical Improvements

  • UI Enhancements:
    • Moved pagination information from help text to title for better visibility
    • Added page count and total items to title in paginated views
    • Simplified renderHelpText function by removing pagination logic
    • Maintained consistent vertical layout throughout the application

🔄 Upgrading

No breaking changes. Users can upgrade directly from previous versions using:

Using cloudgate itself:

cg --upgrade
# or
cg upgrade

Linux/macOS:

bash -c "$(curl -fsSL https://raw.githubusercontent.com/HenryOwenz/cloudgate/main/scripts/install.sh)"

Windows:

Invoke-Expression ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/HenryOwenz/cloudgate/main/scripts/install.ps1'))

What's Changed

  • refactor: update readme, remove dependency management section. by @HenryOwenz in #4
  • Feature/search and pagination by @HenryOwenz in #5

Full Changelog: v0.1.6...v0.1.7

v0.1.6

14 Mar 22:45
a1325aa

Choose a tag to compare

v0.1.6 - CLI Upgrade & Navigation Improvements

This release adds command-line upgrade capabilities, improves version management, and fixes navigation issues in the Lambda function flows. Users can now check for updates and upgrade cloudgate directly from the command line, while also enjoying a more reliable navigation experience when working with Lambda functions.

✨ New Features

  • Command Line Interface:

    • New --upgrade flag and upgrade command for self-updating
    • New --version flag and version command to check current version
    • Automatic version comparison with latest GitHub release
    • Colored output for version information and update notifications
    • Cross-platform support for upgrade operations
  • Version Management:

    • Real-time version checking against GitHub releases
    • User-friendly update notifications
    • Seamless upgrade process with OS detection

🐛 Bug Fixes

  • Lambda Navigation:

    • Fixed navigation when going back from Lambda Payload (JSON) view
    • Corrected flow handling between Execute Function and Function Status modes
    • Ensured proper state management during navigation
    • Improved context preservation between different Lambda operations
  • Codepipeline Execution View:

    • Fixed Execution View for 'Start Pipeline' & 'Manual Approval' operations

🔧 Technical Improvements

  • Code Organization:
    • Reorganized command structure for better modularity
    • Created dedicated packages for commands and version management
    • Implemented factory pattern for command creation
    • Improved separation of concerns
    • Fixed GitHub API URL for version checking
    • Added comprehensive test coverage for all new functionality

📝 Documentation

  • README Updates:
    • Added CLI command documentation
    • Updated upgrade instructions to include new command options

🔄 Upgrading

No breaking changes. Users can upgrade directly from previous versions using:

Using cloudgate itself (NEW):

cg --upgrade
# or
cg upgrade

Linux/macOS:

bash -c "$(curl -fsSL https://raw.githubusercontent.com/HenryOwenz/cloudgate/main/scripts/install.sh)"

Windows:

Invoke-Expression ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/HenryOwenz/cloudgate/main/scripts/install.ps1'))

What's Changed

  • chore(deps): bump the minor-patch-dependencies group with 3 updates by @dependabot in #1
  • fix: restore table view in pipeline execution screens by @HenryOwenz in #2
  • Feature/add cli flags to upgrade by @HenryOwenz in #3

New Contributors

Full Changelog: v0.1.5...v0.1.6

v0.1.5

11 Mar 15:14

Choose a tag to compare

v0.1.5 - Lambda Function Execution

This release enhances cloudgate's AWS Lambda integration by adding direct function execution capabilities. Users can now invoke Lambda functions with custom JSON payloads directly from the terminal interface, making it easier to test and interact with Lambda functions during development and operations.

✨ New Features

  • Lambda Function Execution:

    • Direct Lambda function invocation from the TUI
    • Interactive JSON payload editor with command/input modes
    • Real-time execution results display
    • Error handling and validation for JSON payloads
    • Seamless integration with existing Lambda function views
  • UI Enhancements:

    • New text area component for JSON payload input
    • Dedicated viewport for Lambda execution results
    • Enhanced navigation flow for Lambda operations
    • Updated UI styling for Lambda execution components

🔧 Technical Improvements

  • Lambda Service Layer:
    • Added Lambda invoke operation support
    • Implemented payload validation and formatting
    • Enhanced error handling for execution failures
    • Improved response parsing and display

📝 Documentation

  • README Updates:
    • Added Lambda execution operation to feature table
    • Updated AWS service capabilities documentation

🔄 Upgrading

No breaking changes. Users can upgrade directly from previous versions using the installation scripts:

Linux/macOS:

bash -c "$(curl -fsSL https://raw.githubusercontent.com/HenryOwenz/cloudgate/main/scripts/install.sh)"

Windows:

Invoke-Expression ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/HenryOwenz/cloudgate/main/scripts/install.ps1'))

v0.1.4

02 Mar 14:59

Choose a tag to compare

v0.1.4 - Architecture Overhaul & Lambda Support

This release represents a major architectural overhaul of cloudgate, focusing on extensibility, maintainability, and multi-cloud support. It introduces AWS Lambda service integration, improves navigation with Vim-style keybindings, and lays the groundwork for future cloud provider integrations.

🏗️ Architecture Improvements

  • Multi-Cloud Provider Architecture:

    • Complete refactoring to support multiple cloud providers
    • Modular design for easy addition of new services and operations
    • Dual-layer architecture separating provider APIs from UI logic
  • Elm-Inspired UI Architecture:

    • Improved state management with immutable model updates
    • Clear separation of update, view, and model components
    • Enhanced code organization for better maintainability
  • Dependency Management:

    • Added Dependabot for automated dependency updates
    • Updated to Go 1.24
    • Streamlined dependency versioning

✨ New Features

  • AWS Lambda Integration:

    • View all Lambda functions with runtime and last update information
    • Detailed function configuration inspection
    • Alphabetical sorting of functions (case-insensitive)
  • Enhanced Navigation:

    • Vim-style keyboard shortcuts for efficient navigation
    • Improved back navigation with error state handling
    • Context-aware navigation with profile and region display
  • UI Improvements:

    • Consistent display of profile and region across all views
    • Better error state handling and recovery
    • Improved text input experience

🔧 CI/CD Enhancements

  • GitHub Actions Workflows:

    • Specialized workflows for lint, test, and build
    • Automatic Go version detection from go.mod
    • Improved CI reliability and feedback
  • Testing Framework:

    • Reorganized test structure
    • Enhanced test coverage
    • Better separation of unit and integration tests

🐛 Bug Fixes

  • Error State Handling:

    • Fixed issue where error states could lock navigation
    • Added ability to clear errors with Enter key
    • Ensured proper state reset when navigating back from errors
  • Cross-Platform Support:

    • Fixed Windows screen clearing issues using ANSI clear codes
    • Improved terminal compatibility across platforms

📝 Documentation

  • README Improvements:
    • Added Vim-style navigation documentation
    • Updated feature descriptions
    • Improved installation and usage instructions

🔄 Upgrading

No breaking changes. Users can upgrade directly from previous versions using the installation scripts:

Linux/macOS:

bash -c "$(curl -fsSL https://raw.githubusercontent.com/HenryOwenz/cloudgate/main/scripts/install.sh)"

Windows:

Invoke-Expression ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/HenryOwenz/cloudgate/main/scripts/install.ps1'))

v0.1.3

24 Feb 10:22

Choose a tag to compare

v0.1.3 - Cross-Platform Distribution

This release focuses on improving the installation experience and distribution across different platforms and architectures. It introduces standardized binary naming, better platform detection, and consistent branding across all installation methods.

📦 Distribution Improvements

  • Standardized Binary Naming: Consistent naming scheme for all platforms

    • Linux: cloudgate_linux_[amd64/arm64]
    • macOS: cloudgate_darwin_[amd64/arm64]
    • Windows: cloudgate_windows_[amd64/arm64].exe
  • Smart Platform Detection:

    • Auto-detects OS and architecture
    • Supports ARM64 (Apple Silicon) and AMD64 architectures
    • Handles Windows, Linux, and macOS (Darwin) platforms

🎨 Branding & UI

  • Unified Branding: Consistent ASCII art banner across all platforms
  • Color Scheme: Standardized orange theme for brand recognition
  • Installation Feedback: Clear progress and success messages

🔧 Installation Enhancements

  • Linux/macOS Improvements:

    • Smarter PATH management
    • Support for both system and user-level installation
    • Handles both bash and zsh shells
  • Windows Improvements:

    • PowerShell-native installation
    • User PATH management
    • Architecture-aware binary selection

🏗️ Build System

  • Enhanced Makefile with cross-compilation support
  • Streamlined release process
  • Optimized binary sizes with proper build flags
  • Support for all major platforms and architectures

📝 Documentation

  • Updated installation instructions in README
  • Clear examples of supported platforms
  • Improved project structure documentation

🔄 Upgrading

No breaking changes. Users can upgrade directly from v0.1.2 using the new installation scripts:

Linux/macOS:

bash -c "$(curl -fsSL https://raw.githubusercontent.com/HenryOwenz/cloudgate/main/scripts/install.sh)"

Windows:

Invoke-Expression ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/HenryOwenz/cloudgate/main/scripts/install.ps1'))

v0.1.2

20 Feb 06:31

Choose a tag to compare

v0.1.2 - Modern Table-Based UI

This release introduces a major UI overhaul that modernizes the interface while maintaining all existing functionality. The new table-based navigation system provides a more consistent and intuitive user experience.

🎨 UI Improvements

  • New Table-Based Navigation: Replace text-based lists with modern, interactive tables
  • Responsive Layout: Dynamic sizing based on terminal dimensions
  • Consistent Selection: Unified selection behavior across all views
  • Visual Hierarchy: Clear distinction between selected and unselected items
  • Loading States: Improved feedback during async operations
  • Modern Styling: Clean borders and consistent color scheme

🔧 Technical Enhancements

  • Implement Bubble Tea table component for all navigation steps
  • Add responsive frame and content layout system
  • Improve state management for selections and cursor
  • Enhance back navigation with proper state cleanup
  • Move Category type to domain package
  • Clean up provider descriptions

🏗️ Foundation for Future Development

This update sets the groundwork for:

  • Easier implementation of new views and workflows
  • Consistent UI patterns across the application
  • Better visual feedback and state management
  • Future UI/UX improvements and customizations

🔍 Previous Features

Builds upon recent improvements:

  • Loading spinner for async operations
  • Category selection for workflows
  • Vim-style backwards navigation
  • Simplified service selection

📦 Dependencies

  • Requires Bubble Tea v1.1.0
  • Requires Bubbles v0.20.0
  • Requires Lipgloss v0.13.0

🔄 Upgrading

No breaking changes. Users can upgrade directly from v0.1.1.

v0.1.1

20 Feb 00:25

Choose a tag to compare

v0.1.1 - Vim-style Navigation Update

This patch release adds intuitive backwards navigation through the workflow, making the tool feel more like a modern application while maintaining terminal efficiency.

Features

  • Vim-style backwards navigation using the - key
  • Smart state preservation during navigation:
    • Region changes preserve profile selection
    • Profile changes available after clearing region
    • Complete reset available after clearing profile
  • Granular step control through the entire workflow
  • Updated help text showing navigation options

UX Improvements

  • More intuitive workflow navigation
  • Preserved context when changing regions
  • Smoother state transitions
  • Better discoverability with help text

Technical Details

  • Added NavigateBack() method to handle state transitions
  • Implemented granular state clearing based on context
  • Updated key handler to support - key navigation
  • Enhanced help text rendering for navigation options

Developer Notes

  • Maintains clean architecture while adding UX improvements
  • Smart state management preserves necessary context
  • Follows vim-like terminal navigation patterns
  • Sets foundation for future workflow improvements

v0.1.0

19 Feb 20:32

Choose a tag to compare

First feature release: Clean architecture implementation

Features

  • Interactive Terminal UI for cloud operations
  • AWS CodePipeline approval management
  • Multi-provider interface design
  • Modular package structure

Architecture

  • Domain-driven design with provider abstractions
  • Separation into model/view/handler packages
  • AWS-specific logic isolated in providers/aws
  • Bubble Tea for terminal UI

CLI Features

  • Interactive mode with keyboard navigation
  • AWS profile and region selection
  • Manual approval/rejection of pipeline actions
  • Support for custom approval messages

Developer Notes

  • Established clean architecture pattern
  • Set up foundation for multi-cloud provider support
  • Implemented AWS provider with CodePipeline service
  • Created extensible UI framework for future operations

Using 0.x.y versioning strategy where:

  • x: Significant features/changes (effective major)
  • y: Incremental improvements (effective minor)