diff options
author | sillyguodong <33891828+sillyguodong@users.noreply.github.com> | 2023-06-13 22:28:31 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-06-13 22:28:31 +0800 |
commit | 8228751c55d6a4263f0fec2932ca16181c09c97d (patch) | |
tree | fb950371443ccb012c2854a3641f543d45dbeb60 /models/actions/runner.go | |
parent | 6bbccdd177bcbac600e3019062c96339a121851a (diff) | |
download | gitea-8228751c55d6a4263f0fec2932ca16181c09c97d.tar.gz gitea-8228751c55d6a4263f0fec2932ca16181c09c97d.zip |
Support changing labels of Actions runner without re-registration (#24806)
close #24540
related:
- Protocol: https://gitea.com/gitea/actions-proto-def/pulls/9
- Runner side: https://gitea.com/gitea/act_runner/pulls/201
changes:
- Add column of `labels` to table `action_runner`, and combine the value
of `agent_labels` and `custom_labels` column to `labels` column.
- Store `labels` when registering `act_runner`.
- Update `labels` when `act_runner` starting and calling `Declare`.
- Users cannot modify the `custom labels` in edit page any more.
other changes:
- Store `version` when registering `act_runner`.
- If runner is latest version, parse version from `Declare`. But older
version runner still parse version from request header.
Diffstat (limited to 'models/actions/runner.go')
-rw-r--r-- | models/actions/runner.go | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/models/actions/runner.go b/models/actions/runner.go index bf703c444b..c79a6827fc 100644 --- a/models/actions/runner.go +++ b/models/actions/runner.go @@ -43,10 +43,8 @@ type ActionRunner struct { LastOnline timeutil.TimeStamp `xorm:"index"` LastActive timeutil.TimeStamp `xorm:"index"` - // Store OS and Artch. - AgentLabels []string - // Store custom labes use defined. - CustomLabels []string + // Store labels defined in state file (default: .runner file) of `act_runner` + AgentLabels []string `xorm:"TEXT"` Created timeutil.TimeStamp `xorm:"created"` Updated timeutil.TimeStamp `xorm:"updated"` @@ -104,11 +102,6 @@ func (r *ActionRunner) IsOnline() bool { return false } -// AllLabels returns agent and custom labels -func (r *ActionRunner) AllLabels() []string { - return append(r.AgentLabels, r.CustomLabels...) -} - // Editable checks if the runner is editable by the user func (r *ActionRunner) Editable(ownerID, repoID int64) bool { if ownerID == 0 && repoID == 0 { |