Skip to content

Conversation

@swalkinshaw
Copy link
Member

Introduce a new server provider abstraction layer in pkg/server that enables support for multiple cloud providers instead of the hardcoded Digitalocean support only. This refactor:

  • Adds Provider and DNSProvider interfaces for cloud operations
  • Implements DigitalOcean provider using the new abstraction
  • Adds trellis server create command to replace trellis droplet create
  • Adds trellis server dns command to replace trellis droplet dns
  • Marks existing droplet commands as deprecated
  • Updates default image to Ubuntu 24.04
  • Adds server.provider config option in trellis.cli.yml

The provider can be configured via:

  1. --provider flag
  2. TRELLIS_SERVER_PROVIDER environment variable
  3. server.provider in trellis.cli.yml

🤖 Generated with Claude Code

Introduce a new provider abstraction layer in pkg/server that enables
support for multiple cloud providers. This refactor:

- Adds Provider and DNSProvider interfaces for cloud operations
- Implements DigitalOcean provider using the new abstraction
- Adds `trellis server create` command to replace `trellis droplet create`
- Adds `trellis server dns` command to replace `trellis droplet dns`
- Marks existing `droplet` commands as deprecated
- Adds deprecatedCommandHelpFunc to show deprecated commands separately
- Updates default image to Ubuntu 24.04
- Adds server.provider config option in trellis.cli.yml

The provider can be configured via:
1. --provider flag
2. TRELLIS_SERVER_PROVIDER environment variable
3. server.provider in trellis.cli.yml

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@swalkinshaw swalkinshaw force-pushed the server-commands-do-only branch from 2487574 to dd0231b Compare December 20, 2025 05:05
@swalkinshaw swalkinshaw merged commit c256dc5 into master Dec 20, 2025
8 checks passed
@swalkinshaw swalkinshaw deleted the server-commands-do-only branch December 20, 2025 05:27
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.

2 participants