SshExportOptions.cs 894 B

1234567891011121314151617181920212223242526272829303132
  1. namespace RackPeek.Domain.UseCases.SSH;
  2. public sealed record SshExportOptions {
  3. /// <summary>
  4. /// Only include resources with this tag (optional)
  5. /// </summary>
  6. public IReadOnlyList<string> IncludeTags { get; init; } = [];
  7. /// <summary>
  8. /// Optional default SSH user
  9. /// </summary>
  10. public string? DefaultUser { get; init; }
  11. /// <summary>
  12. /// Optional default SSH port
  13. /// </summary>
  14. public int DefaultPort { get; init; } = 22;
  15. /// <summary>
  16. /// Optional default identity file
  17. /// </summary>
  18. public string? DefaultIdentityFile { get; init; }
  19. /// <summary>
  20. /// If true, use resource name as Host alias (default true)
  21. /// </summary>
  22. public bool UseResourceNameAsAlias { get; init; } = true;
  23. }
  24. public sealed record SshExportResult(
  25. string ConfigText,
  26. IReadOnlyList<string> Warnings);