Skip to content

feat(models): expand Application with extended configuration#63

Merged
andrasbacsai merged 1 commit intov4.xfrom
61-expand-application-struct
Mar 23, 2026
Merged

feat(models): expand Application with extended configuration#63
andrasbacsai merged 1 commit intov4.xfrom
61-expand-application-struct

Conversation

@andrasbacsai
Copy link
Copy Markdown
Member

Summary

  • Add ApplicationSettings struct for managing application feature flags (auto-deploy, HTTPS enforcement, preview deployments, git submodules, git LFS)
  • Expand Application struct with ~50 new fields across multiple categories:
    • Git extended info (commit SHA, full URL)
    • Build configuration (install/build/start commands, base/publish directories, static image)
    • Docker configuration (Dockerfile, Docker Compose, registry images, custom options, labels, nginx config)
    • Networking (port mappings, domains, redirects, preview URL templates)
    • Health checks (path, port, host, method, scheme, return code, response text, interval, timeout, retries, start period)
    • Resource limits (CPU, memory, memory swap, memory reservation, memory swappiness, CPU shares, CPU set)
    • Deployment hooks (pre/post deployment commands and container references)
    • Webhook secrets for GitHub, GitLab, Bitbucket, Gitea (marked sensitive)
    • Miscellaneous (watch paths, swarm replicas, config hash)
  • Organize fields with inline comments by functional category for better readability
  • Hide internal fields (ID, EnvironmentID, DestinationID, SourceID, PrivateKeyID) from JSON and table output
  • Add comprehensive test coverage:
    • Marshal/unmarshal roundtrip testing
    • Fixture-based testing with realistic application data
    • JSON serialization validation ensuring hidden fields are excluded
    • Update service tests with expanded field coverage
  • Add test fixture (test/fixtures/application.json) with complete application configuration example

…ended configuration

- Add ApplicationSettings struct for application-level feature flags
- Expand Application model with git, build, health check, and resource limit fields
- Add comprehensive unit tests for Application marshaling/unmarshaling
- Add application.json fixture for testing
@andrasbacsai andrasbacsai merged commit b661576 into v4.x Mar 23, 2026
5 checks passed
@andrasbacsai andrasbacsai deleted the 61-expand-application-struct branch March 23, 2026 10:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant