22 lines
1.0 KiB
Go
22 lines
1.0 KiB
Go
package models
|
|
|
|
import (
|
|
"time"
|
|
)
|
|
|
|
// ImportSession tracks Caddyfile import operations with pending state
|
|
// until user reviews and confirms via UI.
|
|
type ImportSession struct {
|
|
ID uint `json:"-" gorm:"primaryKey"`
|
|
UUID string `json:"uuid" gorm:"uniqueIndex"`
|
|
SourceFile string `json:"source_file"` // Path to original Caddyfile
|
|
Status string `json:"status" gorm:"default:'pending'"` // "pending", "reviewing", "committed", "rejected", "failed"
|
|
ParsedData string `json:"parsed_data" gorm:"type:text"` // JSON representation of detected hosts
|
|
ConflictReport string `json:"conflict_report" gorm:"type:text"` // JSON array of conflicts
|
|
UserResolutions string `json:"user_resolutions" gorm:"type:text"` // JSON map of conflict resolutions
|
|
ErrorMsg string `json:"error_msg"`
|
|
CreatedAt time.Time `json:"created_at"`
|
|
UpdatedAt time.Time `json:"updated_at"`
|
|
CommittedAt *time.Time `json:"committed_at,omitempty"`
|
|
}
|