Documentation
¶
Index ¶
- type Artifact
- type ArtifactAssociated
- type ArtifactSbom
- type ArtifactSizeByNamespaceOrRepository
- type ArtifactVulnerability
- type Audit
- type Blob
- type BlobAssociateWithArtifact
- type BlobUpload
- type Builder
- type BuilderRunner
- type CasbinRule
- type CodeRepository
- type CodeRepositoryBranch
- type CodeRepositoryCloneCredential
- type CodeRepositoryOwner
- type DaemonGcArtifactRecord
- type DaemonGcArtifactRule
- type DaemonGcArtifactRunner
- type DaemonGcBlobRecord
- type DaemonGcBlobRule
- type DaemonGcBlobRunner
- type DaemonGcRepositoryRecord
- type DaemonGcRepositoryRule
- type DaemonGcRepositoryRunner
- type DaemonGcTagRecord
- type DaemonGcTagRule
- type DaemonGcTagRunner
- type Locker
- type Namespace
- type NamespaceMember
- type Repository
- type Setting
- type Tag
- type User
- type User3rdParty
- type UserRecoverCode
- type Webhook
- type WebhookLog
- type WorkQueue
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Artifact ¶
type Artifact struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
NamespaceID int64
Namespace Namespace
RepositoryID int64
Repository Repository
Digest string
Size int64 `gorm:"default:0"`
BlobsSize int64 `gorm:"default:0"`
ContentType string
Raw []byte
ConfigRaw []byte
ConfigMediaType *string
Type enums.ArtifactType `gorm:"default:Unknown"`
LastPull int64
PushedAt int64 `gorm:"autoCreateTime:milli"`
PullTimes int64 `gorm:"default:0"`
Vulnerability ArtifactVulnerability `gorm:"foreignKey:ArtifactID;"`
Sbom ArtifactSbom `gorm:"foreignKey:ArtifactID;"`
ReferrerID *int64
Referrer *Artifact
// ArtifactSubs In the artifact_artifacts table, artifact_id refers to the upper-level artifact index,
// and artifact_sub_id refers to the lower-level artifact.
ArtifactSubs []*Artifact `gorm:"many2many:artifact_artifacts;"`
Blobs []*Blob `gorm:"many2many:artifact_blobs;"`
Tags []*Tag `gorm:"foreignKey:ArtifactID;"`
}
Artifact represents an artifact
type ArtifactAssociated ¶
type ArtifactAssociated interface {
// SELECT COUNT(artifact_id) as count FROM artifact_artifacts LEFT JOIN artifacts ON artifacts.id = artifact_artifacts.artifact_id WHERE artifacts.deleted_at = 0 AND artifact_sub_id=@artifactID
ArtifactAssociated(artifactID int64) (gen.M, error)
}
ArtifactAssociated ...
type ArtifactSbom ¶
type ArtifactSbom struct {
CreatedAt int64 `gorm:"autoUpdateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
ArtifactID int64
Raw []byte
Result []byte
Status enums.TaskCommonStatus
Stdout []byte
Stderr []byte
Message string
Artifact *Artifact
}
ArtifactSbom represents an artifact sbom
type ArtifactSizeByNamespaceOrRepository ¶
type ArtifactSizeByNamespaceOrRepository interface {
// SELECT sum(blobs_size) as size FROM @@table WHERE repository_id in (
// SELECT id from repositories where namespace_id = @namespaceID)
ArtifactSizeByNamespace(namespaceID int64) (gen.T, error)
// SELECT sum(blobs_size) as size FROM @@table WHERE repository_id = @repositoryID
ArtifactSizeByRepository(repositoryID int64) (gen.T, error)
}
ArtifactSizeByNamespaceOrRepository ...
type ArtifactVulnerability ¶
type ArtifactVulnerability struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
ArtifactID int64
Metadata []byte // is the trivy db metadata
Raw []byte
Result []byte
Status enums.TaskCommonStatus
Stdout []byte
Stderr []byte
Message string
Artifact *Artifact
}
ArtifactVulnerability represents an artifact vulnerability
type Audit ¶
type Audit struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
UserID int64
NamespaceID *int64
Action enums.AuditAction
ResourceType enums.AuditResourceType
Resource string
ReqRaw []byte
Namespace Namespace
User User
}
Audit represents a audit
type Blob ¶
type Blob struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
Digest string
Size int64
ContentType string
LastPull int64
PushedAt int64 `gorm:"autoCreateTime:milli"`
PullTimes uint `gorm:"default:0"`
Artifacts []*Artifact `gorm:"many2many:artifact_blobs;"`
}
Blob represents a blob
type BlobAssociateWithArtifact ¶
type BlobAssociateWithArtifact interface {
// SELECT blob_id FROM artifact_blobs WHERE blob_id in (@ids)
BlobAssociateWithArtifact(ids []int64) (gen.M, error)
}
BlobAssociateWithArtifact ...
type BlobUpload ¶
type Builder ¶
type Builder struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
RepositoryID int64
Source enums.BuilderSource
// source CodeRepository
CodeRepositoryID *int64
// source Dockerfile
Dockerfile []byte
// source SelfCodeRepository
ScmRepository *string
ScmCredentialType *enums.ScmCredentialType
ScmToken *string
ScmSshKey *string
ScmUsername *string
ScmPassword *string
// common settings
ScmBranch *string // for SelfCodeRepository and CodeRepository
ScmDepth *int
ScmSubmodule *bool
// cron settings
CronRule *string
CronBranch *string
CronTagTemplate *string
CronNextTrigger *time.Time
// webhook settings
WebhookBranchName *string
WebhookBranchTagTemplate *string
WebhookTagTagTemplate *string
// buildkit settings
BuildkitInsecureRegistries string
BuildkitContext *string
BuildkitDockerfile *string
BuildkitPlatforms string `gorm:"default:linux/amd64"`
BuildkitBuildArgs *string
Repository *Repository
CodeRepository *CodeRepository
}
Builder represents a builder
type BuilderRunner ¶
type BuilderRunner struct {
CreatedAt int64 `gorm:"autoUpdateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
BuilderID int64
Log []byte
Status enums.BuildStatus `gorm:"default:Pending"`
StatusMessage *string
Tag *string
RawTag string
Description *string
ScmBranch *string
StartedAt *int64
EndedAt *int64
Duration *int64
Builder Builder
}
BuilderRunner represents a builder runner
type CasbinRule ¶
type CasbinRule struct {
ID int64 `gorm:"primaryKey"`
PType *string `gorm:"column:ptype"`
V0 *string `gorm:"column:v0"`
V1 *string `gorm:"column:v1"`
V2 *string `gorm:"column:v2"`
V3 *string `gorm:"column:v3"`
V4 *string `gorm:"column:v4"`
V5 *string `gorm:"column:v5"`
}
CasbinRule represents a casbin rule.
type CodeRepository ¶
type CodeRepository struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
RepositoryID string
User3rdPartyID int64 `gorm:"column:user_3rdparty_id"`
User3rdParty User3rdParty `gorm:"foreignKey:User3rdPartyID"`
OwnerID string
Owner string // in github named owner.name
IsOrg bool
Name string // in github named full_name
SshUrl string // in github named ssh_url
CloneUrl string // in github named clone_url
OciRepoCount int64
Branches []CodeRepositoryBranch
}
CodeRepository ...
type CodeRepositoryBranch ¶
type CodeRepositoryBranch struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
CodeRepositoryID int64
Name string
}
CodeRepositoryBranch ...
type CodeRepositoryCloneCredential ¶
type CodeRepositoryCloneCredential struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
User3rdPartyID int64 `gorm:"column:user_3rdparty_id"`
Type enums.ScmCredentialType
SshKey *string
Username *string
Password *string
Token *string
User3rdParty User3rdParty `gorm:"foreignKey:User3rdPartyID"`
}
CodeRepositoryCloneCredential ...
type CodeRepositoryOwner ¶
type CodeRepositoryOwner struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
User3rdPartyID int64 `gorm:"column:user_3rdparty_id"`
OwnerID string
Owner string // in github named owner.name
IsOrg bool
User3rdParty User3rdParty `gorm:"foreignKey:User3rdPartyID"`
}
CodeRepositoryOwner ...
type DaemonGcArtifactRecord ¶
type DaemonGcArtifactRecord struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
RunnerID int64
Runner DaemonGcArtifactRunner
Digest string
Status enums.GcRecordStatus `gorm:"default:Success"`
Message []byte
}
DaemonGcArtifactRecord ...
type DaemonGcArtifactRule ¶
type DaemonGcArtifactRule struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
NamespaceID *int64
Namespace *Namespace
IsRunning bool `gorm:"default:false"`
RetentionDay int `gorm:"default:0"`
CronEnabled bool `gorm:"default:false"`
CronRule *string
CronNextTrigger *int64
}
DaemonGcArtifactRule ...
type DaemonGcArtifactRunner ¶
type DaemonGcArtifactRunner struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
RuleID int64
Rule DaemonGcArtifactRule
Status enums.TaskCommonStatus `gorm:"status"`
Message []byte
OperateType enums.OperateType
OperateUserID *int64
OperateUser *User
StartedAt *int64
EndedAt *int64
Duration *int64
SuccessCount *int64
FailedCount *int64
}
type DaemonGcBlobRecord ¶
type DaemonGcBlobRecord struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
RunnerID int64
Runner DaemonGcBlobRunner
Digest string
Status enums.GcRecordStatus `gorm:"default:Success"`
Message []byte
}
type DaemonGcBlobRule ¶
type DaemonGcBlobRule struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
IsRunning bool `gorm:"default:false"`
RetentionDay int `gorm:"default:0"`
CronEnabled bool `gorm:"default:false"`
CronRule *string
CronNextTrigger *int64
}
DaemonGcBlobRule ...
type DaemonGcBlobRunner ¶
type DaemonGcBlobRunner struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
RuleID int64
Rule DaemonGcBlobRule
Status enums.TaskCommonStatus `gorm:"status"`
Message []byte
OperateType enums.OperateType
OperateUserID *int64
OperateUser *User
StartedAt *int64
EndedAt *int64
Duration *int64
SuccessCount *int64
FailedCount *int64
}
DaemonGcBlobRunner ...
type DaemonGcRepositoryRecord ¶
type DaemonGcRepositoryRecord struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
RunnerID int64
Runner DaemonGcRepositoryRunner
Repository string
Status enums.GcRecordStatus `gorm:"default:Success"`
Message []byte
}
DaemonGcRepositoryRecord ...
type DaemonGcRepositoryRule ¶
type DaemonGcRepositoryRule struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
NamespaceID *int64
Namespace *Namespace
IsRunning bool `gorm:"default:false"`
RetentionDay int `gorm:"default:0"`
CronEnabled bool `gorm:"default:false"`
CronRule *string
CronNextTrigger *int64
}
DaemonGcRepositoryRule ...
type DaemonGcRepositoryRunner ¶
type DaemonGcRepositoryRunner struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
RuleID int64
Rule DaemonGcRepositoryRule
Status enums.TaskCommonStatus `gorm:"status"`
Message []byte
OperateType enums.OperateType
OperateUserID *int64
OperateUser *User
StartedAt *int64
EndedAt *int64
Duration *int64
SuccessCount *int64
FailedCount *int64
}
DaemonGcRepositoryRunner ...
type DaemonGcTagRecord ¶
type DaemonGcTagRecord struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
RunnerID int64
Runner DaemonGcTagRunner
Tag string
Status enums.GcRecordStatus `gorm:"default:Success"`
Message []byte
}
DaemonGcTagRecords ...
type DaemonGcTagRule ¶
type DaemonGcTagRule struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
NamespaceID *int64
Namespace *Namespace
IsRunning bool `gorm:"default:false"`
CronEnabled bool `gorm:"default:false"`
CronRule *string
CronNextTrigger *int64
RetentionRuleType enums.RetentionRuleType
RetentionRuleAmount int64
RetentionPattern *string
}
DaemonGcTagRule ...
type DaemonGcTagRunner ¶
type DaemonGcTagRunner struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
RuleID int64
Rule DaemonGcTagRule
Message []byte
Status enums.TaskCommonStatus
OperateType enums.OperateType
OperateUserID *int64
OperateUser *User
StartedAt *int64
EndedAt *int64
Duration *int64
SuccessCount *int64
FailedCount *int64
}
DaemonGcTagRunner ...
type Locker ¶
type Locker struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
Key string
Expire int64
Value string
}
Locker locker
type Namespace ¶
type Namespace struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
Name string `gorm:"uniqueIndex"`
Description *string
Overview []byte
Visibility enums.Visibility `gorm:"default:public"`
TagLimit int64 `gorm:"default:0"`
TagCount int64 `gorm:"default:0"`
RepositoryLimit int64 `gorm:"default:0"`
RepositoryCount int64 `gorm:"default:0"`
SizeLimit int64 `gorm:"default:0"`
Size int64 `gorm:"default:0"`
}
Namespace represents a namespace
type NamespaceMember ¶
type NamespaceMember struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
UserID int64
User User
NamespaceID int64
Namespace Namespace
Role enums.NamespaceRole
}
NamespaceMember represents namespace role
type Repository ¶
type Repository struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
NamespaceID int64
Name string
Description *string
Overview []byte
TagLimit int64 `gorm:"default:0"`
TagCount int64 `gorm:"default:0"`
SizeLimit int64 `gorm:"default:0"`
Size int64 `gorm:"default:0"`
Namespace Namespace
Builder *Builder
}
Repository represents a repository
type Setting ¶
type Setting struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
Key string `gorm:"uniqueIndex,size:256"`
Val []byte
}
Setting setting
type Tag ¶
type Tag struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
RepositoryID int64
ArtifactID int64
Name string
LastPull int64
PushedAt int64 `gorm:"autoCreateTime:milli"`
PullTimes int64 `gorm:"default:0"`
Repository *Repository
Artifact *Artifact
}
Tag represents a tag
type User ¶
type User struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
Username string
Password *string
Email *string
LastLogin int64 `gorm:"autoCreateTime:milli"`
Status enums.UserStatus `gorm:"default:Active"`
Role enums.UserRole `gorm:"default:User"`
NamespaceLimit int64 `gorm:"default:0"`
NamespaceCount int64 `gorm:"default:0"`
}
User is the model for the user table.
type User3rdParty ¶
type User3rdParty struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
UserID int64
Provider enums.Provider
AccountID *string
Token *string
RefreshToken *string
CrLastUpdateTimestamp int64 `gorm:"autoUpdateTime:milli"`
CrLastUpdateStatus enums.TaskCommonStatus `gorm:"default:Doing"`
CrLastUpdateMessage *string
User User
}
User3rdParty ...
type UserRecoverCode ¶
type Webhook ¶
type Webhook struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
NamespaceID *int64
Namespace *Namespace
URL string
Secret *string
SslVerify bool
RetryTimes int
RetryDuration int
Enable bool
EventNamespace *bool
EventRepository bool
EventTag bool
EventArtifact bool
EventMember bool
EventDaemonTaskGc bool
}
Webhook ...
type WebhookLog ¶
type WebhookLog struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
WebhookID int64
Webhook Webhook
ResourceType enums.WebhookResourceType
Action enums.WebhookAction
StatusCode int
ReqHeader []byte
ReqBody []byte
RespHeader []byte
RespBody []byte
}
WebhookLog ...
type WorkQueue ¶
type WorkQueue struct {
CreatedAt int64 `gorm:"autoCreateTime:milli"`
UpdatedAt int64 `gorm:"autoUpdateTime:milli"`
DeletedAt soft_delete.DeletedAt `gorm:"softDelete:milli"`
ID int64 `gorm:"primaryKey"`
Topic enums.Daemon
Payload []byte
Times int
Version string
Status enums.TaskCommonStatus `gorm:"default:Pending"`
}
WorkQueue ...