34 lines
1.2 KiB
Go
34 lines
1.2 KiB
Go
// Copyright 2026 The Gitea Authors. All rights reserved.
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
package v1_27
|
|
|
|
import (
|
|
"gitea.dev/models/db"
|
|
|
|
"xorm.io/xorm"
|
|
)
|
|
|
|
// AddReusableWorkflowFieldsToActionRunJob adds the ActionRunJob columns that describe the reusable workflow caller hierarchy,
|
|
// and the ActionRunAttemptJobIDIndex table backing run-wide AttemptJobID allocation.
|
|
func AddReusableWorkflowFieldsToActionRunJob(x db.EngineMigration) error {
|
|
type ActionRunJob struct {
|
|
WorkflowSourceRepoID int64 `xorm:"NOT NULL DEFAULT 0"`
|
|
WorkflowSourceCommitSHA string `xorm:"VARCHAR(64) NOT NULL DEFAULT ''"`
|
|
IsReusableCaller bool `xorm:"index NOT NULL DEFAULT FALSE"`
|
|
ParentJobID int64 `xorm:"index NOT NULL DEFAULT 0"`
|
|
CallUses string `xorm:"VARCHAR(512) NOT NULL DEFAULT ''"`
|
|
CallSecrets string `xorm:"LONGTEXT"`
|
|
CallPayload string `xorm:"LONGTEXT"`
|
|
IsExpanded bool `xorm:"NOT NULL DEFAULT FALSE"`
|
|
ReusableWorkflowContent []byte `xorm:"LONGBLOB"`
|
|
}
|
|
|
|
type ActionRunAttemptJobIDIndex db.ResourceIndex
|
|
|
|
if _, err := x.SyncWithOptions(xorm.SyncOptions{IgnoreDropIndices: true}, new(ActionRunJob)); err != nil {
|
|
return err
|
|
}
|
|
return x.Sync(new(ActionRunAttemptJobIDIndex))
|
|
}
|