34 lines
795 B
Go
34 lines
795 B
Go
|
// Copyright 2024 The Forgejo Authors. All rights reserved.
|
||
|
// SPDX-License-Identifier: MIT
|
||
|
|
||
|
package forgejo_migrations //nolint:revive
|
||
|
|
||
|
import (
|
||
|
"time"
|
||
|
|
||
|
"code.gitea.io/gitea/modules/timeutil"
|
||
|
|
||
|
"xorm.io/xorm"
|
||
|
)
|
||
|
|
||
|
type (
|
||
|
SoftwareNameType string
|
||
|
)
|
||
|
|
||
|
type NodeInfo struct {
|
||
|
SoftwareName SoftwareNameType
|
||
|
}
|
||
|
|
||
|
type FederationHost struct {
|
||
|
ID int64 `xorm:"pk autoincr"`
|
||
|
HostFqdn string `xorm:"host_fqdn UNIQUE INDEX VARCHAR(255) NOT NULL"`
|
||
|
NodeInfo NodeInfo `xorm:"extends NOT NULL"`
|
||
|
LatestActivity time.Time `xorm:"NOT NULL"`
|
||
|
Created timeutil.TimeStamp `xorm:"created"`
|
||
|
Updated timeutil.TimeStamp `xorm:"updated"`
|
||
|
}
|
||
|
|
||
|
func CreateFederationHostTable(x *xorm.Engine) error {
|
||
|
return x.Sync(new(FederationHost))
|
||
|
}
|