Files
cmd
docs
pkg
api
cmds
datastore
internal
model
mapfix.go
nats.go
operation.go
page.go
policy.go
script.go
submission.go
service
service_internal
validation
web
.drone.yml
.gitignore
Cargo.lock
Cargo.toml
Containerfile
LICENSE
Makefile
README.md
compose.yaml
generate.go
go.mod
go.sum
openapi-internal.yaml
openapi.yaml
maps-service/pkg/model/policy.go

29 lines
847 B
Go

package model
import "time"
type Policy int32
const (
ScriptPolicyNone Policy = 0 // not yet reviewed
ScriptPolicyAllowed Policy = 1
ScriptPolicyBlocked Policy = 2
ScriptPolicyDelete Policy = 3
ScriptPolicyReplace Policy = 4
)
type ScriptPolicy struct {
ID int64 `gorm:"primaryKey"`
// Hash of the source code that leads to this policy.
// If this is a replacement mapping, the original source may not be pointed to by any policy.
// The original source should still exist in the scripts table, which can be located by the same hash.
FromScriptHash int64 // postgres does not support unsigned integers, so we have to pretend
// The ID of the replacement source (ScriptPolicyReplace)
// or verbatim source (ScriptPolicyAllowed)
// or 0 (other)
ToScriptID int64
Policy Policy
CreatedAt time.Time
UpdatedAt time.Time
}