Skip to content

Roadmap #1

@josecelano

Description

@josecelano

Torrust Tracker Deployer - Roadmap

This issue tracks the development roadmap for the Torrust Tracker Deployer project. Each task is marked with:

  • [ ] - Not completed
  • [x] - Completed

The full roadmap with details is maintained in docs/roadmap.md.

Development Process

When starting work on a new feature:

  1. Create the feature documentation in the docs/features/ folder and commit it
  2. Open an issue on GitHub linking to the feature folder in the repository
  3. Add the new issue as a child issue of the main EPIC issue

Roadmap

1. Add scaffolding for main app

Epic Issue: #2 - Scaffolding for main app

  • 1.1 Setup logging - Issue #3 ✅ Completed
  • 1.2 Create command torrust-tracker-deployer destroy ✅ Completed
  • 1.3 Refactor extract shared code between testing and production for app bootstrapping ✅ Completed
  • 1.4 Improve command to use better abstraction to handle presentation layer ✅ Completed
  • 1.5 Create command torrust-tracker-deployer create ✅ Completed
  • 1.6 Create command torrust-tracker-deployer provision (UI layer only) ✅ Completed - Issue #174
  • 1.7 Create command torrust-tracker-deployer configure (UI layer only) ✅ Completed - Issue #180
  • 1.8 Create command torrust-tracker-deployer test (UI layer only) ✅ Completed - Issue #188

2. Add new infrastructure provider: Hetzner ✅ COMPLETED

Epic Issue: #205 - Add Hetzner Provider Support

  • 2.1 Add Hetzner provider support (Phase 1: Make LXD Explicit) ✅ Completed
  • 2.2 Add Hetzner provider support (Phase 2: Add Hetzner) ✅ Completed

3. Continue adding more application commands

  • 3.1 Finish ConfigureCommand ✅ Completed - Epic #16
  • 3.2 Implement ReleaseCommand and RunCommand with vertical slices - Epic #216

4. Create a docker image for the deployer

  • 4.1 Create docker image for the deployer - Issue #264 ✅ Completed

5. Add extra console app commands

  • 5.1 torrust-tracker-deployer show - Issue #241 ✅ Completed
  • 5.2 torrust-tracker-deployer test ✅ Completed
  • 5.3 torrust-tracker-deployer list - Issue #260 ✅ Completed

6. Add HTTPS support ✅ COMPLETED

  • 6.1 Add HTTPS support with Caddy - Issue #272 ✅ Completed

7. Add backup support ✅ COMPLETED

Epic Issue: #309 - Add backup support

  • 7.1 Research database backup strategies - Issue #310 ✅ Completed
  • 7.2 Implement backup support - Issue #315 ✅ Completed

8. Add levels of verbosity ✅ COMPLETED

Epic Issue: #362 - Add levels of verbosity

  • 8.1 Add verbosity levels to provision command ✅ Completed - PR #361
  • 8.2 Add verbosity levels to configure command ✅ Completed - Issue #363, PR #364
  • 8.3 Add verbosity levels to release command ✅ Completed - Issue #367, PR #368

9. Extend deployer usability

  • 9.1 Implement validate command ✅ Completed (272847e3)
  • 9.2 Implement render artifact generation command ✅ Completed (37cbe240) - Issue #326

10. Improve usability (UX)

  • 10.1 Add DNS setup reminder in provision command output ✅ Completed - Issue #332, PR #333
  • 10.2 Improve run command output with service URLs ✅ Completed - Issue #334, PR #337
  • 10.3 Add DNS resolution check to test command ✅ Completed - Issue #336
  • 10.4 Add purge command to remove local environment data ✅ Completed - Issue #322

11. Improve AI agent experience

  • 11.1 Consider using agentskills.io for AI agent capabilities - Issue #274
  • 11.2 Add AI-discoverable documentation headers to template files ✅ Completed
  • 11.3 Provide configuration examples and questionnaire for AI agent guidance ✅ Completed - Issue #339

12. Add JSON output format support

Epic Issue: #348 - Add JSON output format support


Deferred Features

Features considered valuable but out of scope for v1, revisitable based on user feedback.

Feature Rationale Notes
MCP (Model Context Protocol) server Native AI integration without shell commands Would let AI agents call deployer as MCP tools directly
Structured error format for AI agents Already improving errors in section 10 Could formalize with error codes, fix suggestions in JSON
Dry-run mode for all commands Hard to implement; alternatives already exist validate and render commands cover preview needs; LXD local environments allow safe testing before deploying to production

See docs/roadmap.md for the full roadmap with detailed implementation notes.

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions