Skip to content

v1.1.0 - Multi Port and Docker Compose Support

Choose a tag to compare

@BlueBeard63 BlueBeard63 released this 17 Jan 22:13
· 30 commits to main since this release
92e3e0f

Added

Docker Compose Deployment Support

  • Add SiteType enum distinguishing between Container and Compose deployments
  • Add compose-specific fields to Site model (ComposeFile, ComposeProject)
  • Add site type selector to create form with Container/Compose options
  • Add type column to site list for deployment type visibility
  • Implement Docker Compose executor for compose-based deployments
  • Create deployment pipeline core infrastructure with staged execution
  • Add compose support to archon API client
  • Create compose file parser for automatic port detection from docker-compose.yml
  • Auto-populate domain mappings from detected exposed ports
  • Add port detection on compose file path field change
  • Update help text to indicate auto-detected ports can be overridden

Dedicated Environment Variables Screen

  • Add new ScreenSiteEnvVars for managing environment variables
  • Add 'v' key navigation from site edit screen to ENV vars screen
  • Add dedicated ENV vars screen renderer with full editing support
  • Remove inline ENV section from edit form (now accessed via 'v' key)

Focused Field Visual Indicators

  • Add FormLabelFocusedStyle with purple color and > prefix for active fields
  • Add RenderFieldLabel helper function for consistent focus styling
  • Apply focused label styling to Site Create form
  • Apply focused label styling to Site Edit form
  • Apply focused label styling to ENV vars section (Key and Value separately)
  • Apply focused label styling to Domain Mappings section
  • Apply focused label styling to Node forms
  • Apply focused label styling to Domain forms

Testing & Documentation

  • Add unit tests for compose parser
  • Add unit tests for compose executor
  • Add compose deployment documentation

Fixed

  • Enable site edit navigation with 'e' key
  • Reset field index when entering site edit screen
  • Only initialize edit form data once per session (prevents data loss on re-render)
  • Resolve circular import by localizing focused label style
  • Fix ENV vars focus indicator not showing (set CurrentFieldIndex = 100 on screen entry)

Changed

  • Enhance domain-port mapping to support optional host ports
  • Add port conflict validation for domain mappings
  • Initialize state variables for dropdowns, environment variables, and domain mappings in forms

Dependencies

  • Add gopkg.in/yaml.v3 for YAML parsing support