Documentation
¶
Index ¶
- func GetMaxActiveKeys(provider string) int
- func GetRecommendedStrategy(provider string) (string, error)
- func ListProviders() []string
- func SupportsStrategy(provider, strategy string) bool
- func ValidateProviderStrategy(provider, strategy string) error
- type CapabilitiesRegistry
- type ProviderCapability
- type StrategyDefinition
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetMaxActiveKeys ¶
GetMaxActiveKeys returns the maximum number of active keys Returns -1 for unlimited, 0 for unknown
func GetRecommendedStrategy ¶
GetRecommendedStrategy returns the best strategy for a provider
func SupportsStrategy ¶
SupportsStrategy checks if a provider supports a specific strategy
func ValidateProviderStrategy ¶
ValidateProviderStrategy checks if a provider can use a specific strategy
Types ¶
type CapabilitiesRegistry ¶
type CapabilitiesRegistry struct {
Providers map[string]ProviderCapability `yaml:"providers"`
Strategies map[string]StrategyDefinition `yaml:"strategies"`
}
CapabilitiesRegistry holds all provider capabilities and strategy definitions
func LoadCapabilities ¶
func LoadCapabilities() (*CapabilitiesRegistry, error)
LoadCapabilities loads the embedded capabilities YAML
type ProviderCapability ¶
type ProviderCapability struct {
DisplayName string `yaml:"display_name"`
MaxActiveKeys string `yaml:"max_active_keys"` // Can be number or "unlimited"
SupportsExpiration bool `yaml:"supports_expiration"`
SupportsVersioning bool `yaml:"supports_versioning"`
SupportsRevocation bool `yaml:"supports_revocation"`
RotationAPI bool `yaml:"rotation_api"`
RecommendedStrategies []string `yaml:"recommended_strategies"`
VerifiedDate string `yaml:"verified_date"`
Documentation string `yaml:"documentation"`
Notes string `yaml:"notes"`
}
ProviderCapability represents the rotation capabilities of a provider
func GetProviderCapability ¶
func GetProviderCapability(provider string) (*ProviderCapability, error)
GetProviderCapability returns the capability for a specific provider
type StrategyDefinition ¶
type StrategyDefinition struct {
Name string `yaml:"name"`
Description string `yaml:"description"`
DowntimeRisk string `yaml:"downtime_risk"`
Complexity string `yaml:"complexity"`
Requirements []string `yaml:"requirements"`
}
StrategyDefinition describes a rotation strategy
func GetStrategyDefinition ¶
func GetStrategyDefinition(strategy string) (*StrategyDefinition, error)
GetStrategyDefinition returns information about a strategy
Directories
¶
| Path | Synopsis |
|---|---|
|
Package gradual provides gradual rollout strategies for rotation operations.
|
Package gradual provides gradual rollout strategies for rotation operations. |
|
discovery
Package discovery provides instance discovery for gradual rollout.
|
Package discovery provides instance discovery for gradual rollout. |
|
Package health provides health monitoring functionality for rotation operations.
|
Package health provides health monitoring functionality for rotation operations. |
|
Package notifications provides notification infrastructure for rotation events.
|
Package notifications provides notification infrastructure for rotation events. |
|
Package rollback provides automatic and manual rollback functionality for rotation operations.
|
Package rollback provides automatic and manual rollback functionality for rotation operations. |