forgejo/models/fixtures
Emmanuel BENOÎT fdb1874ada feat(cli): add --keep-labels flag to forgejo actions register (#4610)
This commit adds a new flag, `--keep-labels`, to the runner registration CLI command. If this flag is present and the runner being registered already exists, it will prevent the runners' labels from being reset.

In order to accomplish this, the signature of the `RegisterRunner` function from the `models/actions` package has been modified so that the labels argument can be nil. If it is, the part of the function that updates the record will not change the runner.

Various tests have been added for this function, for the following cases: new runner with labels, new runner without label, existing runner with labels, existing runner without labels.

The flag has been added to the CLI command, the action function has been updated to read the labels parameters through a separate function (`getLabels`), and test cases for this function have been added.

<!--
Before submitting a PR, please read the contributing guidelines:
https://codeberg.org/forgejo/forgejo/src/branch/forgejo/CONTRIBUTING.md
-->

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/4610
Reviewed-by: Earl Warren <earl-warren@noreply.codeberg.org>
Co-authored-by: Emmanuel BENOÎT <tseeker@nocternity.net>
Co-committed-by: Emmanuel BENOÎT <tseeker@nocternity.net>
2024-07-22 07:33:45 +00:00
..
TestGetUnmergedPullRequestsByHeadInfoMax
TestParseCommitWithSSHSignature
access.yml
access_token.yml
action.yml
action_run.yml
action_run_job.yml
action_runner.yml
action_runner_token.yml
action_task.yml
attachment.yml
branch.yml
collaboration.yml
comment.yml
commit_status.yml
commit_status_index.yml
deploy_key.yml
email_address.yml
external_login_user.yml
follow.yml
forgejo_blocked_user.yml
gpg_key.yml
gpg_key_import.yml
hook_task.yml
issue.yml
issue_assignees.yml
issue_index.yml
issue_label.yml
issue_user.yml
issue_watch.yml
label.yml
lfs_meta_object.yml
login_source.yml
milestone.yml
mirror.yml
notice.yml
notification.yml
oauth2_application.yml
oauth2_authorization_code.yml
oauth2_grant.yml
org_user.yml
project.yml
project_board.yml
project_issue.yml
protected_branch.yml
protected_tag.yml
public_key.yml
pull_request.yml
push_mirror.yml
reaction.yml
release.yml
renamed_branch.yml
repo_archiver.yml
repo_indexer_status.yml
repo_redirect.yml
repo_topic.yml
repo_transfer.yml
repo_unit.yml
repository.yml
review.yml
star.yml
stopwatch.yml
system_setting.yml
team.yml
team_repo.yml
team_unit.yml
team_user.yml
topic.yml
tracked_time.yml
two_factor.yml
user.yml
user_open_id.yml
user_redirect.yml
watch.yml
webauthn_credential.yml
webhook.yml