Remove pre-1.0 production governance surfaces
This commit is contained in:
@@ -0,0 +1,156 @@
|
||||
package domain
|
||||
|
||||
import "time"
|
||||
|
||||
type PluginLifecycleState string
|
||||
|
||||
const (
|
||||
PluginLifecycleStatePending PluginLifecycleState = "pending"
|
||||
PluginLifecycleStateInstalled PluginLifecycleState = "installed"
|
||||
PluginLifecycleStateEnabled PluginLifecycleState = "enabled"
|
||||
PluginLifecycleStateDisabled PluginLifecycleState = "disabled"
|
||||
PluginLifecycleStateUpgrading PluginLifecycleState = "upgrading"
|
||||
PluginLifecycleStateRollingBack PluginLifecycleState = "rolling_back"
|
||||
PluginLifecycleStateRetired PluginLifecycleState = "retired"
|
||||
PluginLifecycleStateFailed PluginLifecycleState = "failed"
|
||||
)
|
||||
|
||||
type PluginLifecycleOperation string
|
||||
|
||||
const (
|
||||
PluginLifecycleOperationInstall PluginLifecycleOperation = "install"
|
||||
PluginLifecycleOperationEnable PluginLifecycleOperation = "enable"
|
||||
PluginLifecycleOperationDisable PluginLifecycleOperation = "disable"
|
||||
PluginLifecycleOperationUpgrade PluginLifecycleOperation = "upgrade"
|
||||
PluginLifecycleOperationRollback PluginLifecycleOperation = "rollback"
|
||||
PluginLifecycleOperationRetire PluginLifecycleOperation = "retire"
|
||||
PluginLifecycleOperationDependencyCheck PluginLifecycleOperation = "dependency-check"
|
||||
)
|
||||
|
||||
type PluginLifecycleInstallation struct {
|
||||
ID string
|
||||
PluginID string
|
||||
ServerInstanceID string
|
||||
CurrentVersion string
|
||||
TargetVersion string
|
||||
PreviousVersion string
|
||||
DesiredState PluginLifecycleState
|
||||
CurrentState PluginLifecycleState
|
||||
LastOperation PluginLifecycleOperation
|
||||
Compatibility string
|
||||
DependencyState DependencyState
|
||||
JobID string
|
||||
FailureReason string
|
||||
IdempotencyKey string
|
||||
CreatedAt time.Time
|
||||
UpdatedAt time.Time
|
||||
}
|
||||
|
||||
type PluginLifecycleFilter struct {
|
||||
PluginID string
|
||||
ServerInstanceID string
|
||||
CurrentState PluginLifecycleState
|
||||
}
|
||||
|
||||
type PluginLifecycleRequest struct {
|
||||
PluginID string
|
||||
ServerInstanceID string
|
||||
Operation PluginLifecycleOperation
|
||||
TargetVersion string
|
||||
IdempotencyKey string
|
||||
Confirmed bool
|
||||
}
|
||||
|
||||
type PluginLifecycleResult struct {
|
||||
Installation PluginLifecycleInstallation
|
||||
Job Job
|
||||
Status string
|
||||
}
|
||||
|
||||
type AIConfigDiffState string
|
||||
|
||||
const (
|
||||
AIConfigDiffStatePending AIConfigDiffState = "pending"
|
||||
AIConfigDiffStateApproved AIConfigDiffState = "approved"
|
||||
AIConfigDiffStateCancelled AIConfigDiffState = "cancelled"
|
||||
AIConfigDiffStateExpired AIConfigDiffState = "expired"
|
||||
)
|
||||
|
||||
type AIConfigDiffPreview struct {
|
||||
ID string
|
||||
RequestID string
|
||||
CreatedBy string
|
||||
ServerInstanceID string
|
||||
PluginID string
|
||||
ProviderID string
|
||||
Model string
|
||||
Key string
|
||||
ConfigVersion int
|
||||
CurrentConfigChecksum string
|
||||
ProposedConfig string
|
||||
DiffSummary string
|
||||
State AIConfigDiffState
|
||||
ExpiresAt time.Time
|
||||
ApprovedBy string
|
||||
ApprovedAt time.Time
|
||||
ApprovalIdempotencyKey string
|
||||
CancelledBy string
|
||||
CancelledAt time.Time
|
||||
JobID string
|
||||
CreatedAt time.Time
|
||||
UpdatedAt time.Time
|
||||
}
|
||||
|
||||
type AIConfigDiffFilter struct {
|
||||
ServerInstanceID string
|
||||
PluginID string
|
||||
State AIConfigDiffState
|
||||
}
|
||||
|
||||
type AIConfigDiffApprovalRequest struct {
|
||||
DiffID string
|
||||
IdempotencyKey string
|
||||
}
|
||||
|
||||
type AIConfigDiffApprovalResult struct {
|
||||
Preview AIConfigDiffPreview
|
||||
Dispatch ServerConfigWriteDispatch
|
||||
}
|
||||
|
||||
func CopyPluginLifecycleInstallation(installation PluginLifecycleInstallation) PluginLifecycleInstallation {
|
||||
return installation
|
||||
}
|
||||
|
||||
func CopyPluginLifecycleInstallations(installations []PluginLifecycleInstallation) []PluginLifecycleInstallation {
|
||||
if installations == nil {
|
||||
return nil
|
||||
}
|
||||
out := make([]PluginLifecycleInstallation, len(installations))
|
||||
copy(out, installations)
|
||||
return out
|
||||
}
|
||||
|
||||
func CopyPluginLifecycleResult(result PluginLifecycleResult) PluginLifecycleResult {
|
||||
result.Installation = CopyPluginLifecycleInstallation(result.Installation)
|
||||
result.Job = CopyJob(result.Job)
|
||||
return result
|
||||
}
|
||||
|
||||
func CopyAIConfigDiffPreview(preview AIConfigDiffPreview) AIConfigDiffPreview {
|
||||
return preview
|
||||
}
|
||||
|
||||
func CopyAIConfigDiffPreviews(previews []AIConfigDiffPreview) []AIConfigDiffPreview {
|
||||
if previews == nil {
|
||||
return nil
|
||||
}
|
||||
out := make([]AIConfigDiffPreview, len(previews))
|
||||
copy(out, previews)
|
||||
return out
|
||||
}
|
||||
|
||||
func CopyAIConfigDiffApprovalResult(result AIConfigDiffApprovalResult) AIConfigDiffApprovalResult {
|
||||
result.Preview = CopyAIConfigDiffPreview(result.Preview)
|
||||
result.Dispatch = CopyServerConfigWriteDispatch(result.Dispatch)
|
||||
return result
|
||||
}
|
||||
Reference in New Issue
Block a user