Files
nginx-ui/model/namespace.go

39 lines
1.3 KiB
Go

package model
// PostSyncActionType defines the type of action after synchronization
const (
// PostSyncActionNone indicates no operation after sync
PostSyncActionNone = "none"
// PostSyncActionReloadNginx indicates reload Nginx after sync
PostSyncActionReloadNginx = "reload_nginx"
)
// UpstreamTestType defines the type of upstream test
const (
// UpstreamTestLocal indicates local upstream test
UpstreamTestLocal = "local"
// UpstreamTestRemote indicates remote upstream test
UpstreamTestRemote = "remote"
// UpstreamTestMirror indicates mirror upstream test
UpstreamTestMirror = "mirror"
)
// DeployMode defines where configs should be deployed
const (
// DeployModeLocal indicates deploy locally with optional remote sync
DeployModeLocal = "local"
// DeployModeRemote indicates deploy to remote nodes only
DeployModeRemote = "remote"
)
// Namespace represents a group of environments that can be synced across nodes
type Namespace struct {
Model
Name string `json:"name"`
SyncNodeIds []uint64 `json:"sync_node_ids" gorm:"serializer:json"`
OrderID int `json:"-" gorm:"default:0"`
PostSyncAction string `json:"post_sync_action" gorm:"default:'reload_nginx'"`
UpstreamTestType string `json:"upstream_test_type" gorm:"default:'local'"`
DeployMode string `json:"deploy_mode" gorm:"default:'local'"`
}