Skip to content

feat: cloud provider sync#48

Merged
lfaoro merged 7 commits into
mainfrom
feat/provider
May 26, 2026
Merged

feat: cloud provider sync#48
lfaoro merged 7 commits into
mainfrom
feat/provider

Conversation

@lfaoro
Copy link
Copy Markdown
Owner

@lfaoro lfaoro commented May 25, 2026

No description provided.

lfaoro and others added 7 commits May 25, 2026 21:11
Add cloud provider discovery via  CLI subcommand
and Ctrl+y TUI panel. Running servers are fetched and written to
~/.ssh/config.d/50-ssm-cloud with automatic Include injection.

Providers:
- Hetzner: HCLOUD_TOKEN env var
- AWS: standard SDK credential chain (all regions)
- GCP: GCP_PROJECT env var
- Azure: AZURE_SUBSCRIPTION_ID env var + Azure SDK chain

Hosts are named {region}-{name} and tagged with #tag: {provider}.
Flags: --user, --key, --dry-run
- Write one SSH config file per provider (~/.ssh/config.d/50-ssm-{provider})
- Include directive: Include config.d/* (relative to ~/.ssh/)
- CLI output shows per-provider file paths
- Add syncer unit tests (generateSSHConfig, sanitizeHostName,
  ensureInclude, writeManagedFile, Path)
- Add provider interface compliance test
- Add TUI sync sub-model tests (init, keys, messages)
…eprecation+fprintf, modernize splitseq, permissions 750
@lfaoro lfaoro merged commit ec3268b into main May 26, 2026
@lfaoro lfaoro deleted the feat/provider branch May 26, 2026 12:59
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