aboutsummaryrefslogtreecommitdiff
path: root/models
diff options
context:
space:
mode:
authorJason Song2023-02-28 18:20:36 +0800
committerGitHub2023-02-28 18:20:36 +0800
commitcbc9a0fe477b1b8af249ca0b8dac5fc2be64e9f6 (patch)
treecca5804520e6fcc5bfb3d388932743331fde3096 /models
parent067b0c2664d127c552ccdfd264257caca4907a77 (diff)
Avoid too long names for actions (#23162)
The name of the job or step comes from the workflow file, while the name of the runner comes from its registration. If the strings used for these names are too long, they could cause db issues.
Diffstat (limited to 'models')
-rw-r--r--models/actions/run.go1
-rw-r--r--models/actions/task.go3
2 files changed, 3 insertions, 1 deletions
diff --git a/models/actions/run.go b/models/actions/run.go
index a8d991471..d5ab45a51 100644
--- a/models/actions/run.go
+++ b/models/actions/run.go
@@ -192,6 +192,7 @@ func InsertRun(ctx context.Context, run *ActionRun, jobs []*jobparser.SingleWork
if len(needs) > 0 || run.NeedApproval {
status = StatusBlocked
}
+ job.Name, _ = util.SplitStringAtByteN(job.Name, 255)
runJobs = append(runJobs, &ActionRunJob{
RunID: run.ID,
RepoID: run.RepoID,
diff --git a/models/actions/task.go b/models/actions/task.go
index 5b6206c34..ffec4c92a 100644
--- a/models/actions/task.go
+++ b/models/actions/task.go
@@ -298,8 +298,9 @@ func CreateTaskForRunner(ctx context.Context, runner *ActionRunner) (*ActionTask
if len(workflowJob.Steps) > 0 {
steps := make([]*ActionTaskStep, len(workflowJob.Steps))
for i, v := range workflowJob.Steps {
+ name, _ := util.SplitStringAtByteN(v.String(), 255)
steps[i] = &ActionTaskStep{
- Name: v.String(),
+ Name: name,
TaskID: task.ID,
Index: int64(i),
RepoID: task.RepoID,