1
0
Fork 0
mirror of https://codeberg.org/forgejo/forgejo.git synced 2025-08-01 17:38:33 +00:00

[CLI] implement forgejo-cli actions generate-secret

(cherry picked from commit 6f7905c8ec)
This commit is contained in:
Earl Warren 2023-07-09 16:01:27 +02:00
parent b6cfa88c6e
commit e085d6d273
No known key found for this signature in database
GPG key ID: 0579CB2928A78A00
2 changed files with 31 additions and 3 deletions

View file

@ -7,6 +7,7 @@ import (
"context"
"fmt"
actions_model "code.gitea.io/gitea/models/actions"
"code.gitea.io/gitea/modules/private"
"code.gitea.io/gitea/modules/setting"
@ -18,12 +19,13 @@ func CmdActions(ctx context.Context) cli.Command {
Name: "actions",
Usage: "Commands for managing Forgejo Actions",
Subcommands: []cli.Command{
SubcmdActionsGenRunnerToken(ctx),
SubcmdActionsGenerateRunnerToken(ctx),
SubcmdActionsGenerateRunnerSecret(ctx),
},
}
}
func SubcmdActionsGenRunnerToken(ctx context.Context) cli.Command {
func SubcmdActionsGenerateRunnerToken(ctx context.Context) cli.Command {
return cli.Command{
Name: "generate-runner-token",
Usage: "Generate a new token for a runner to use to register with the server",
@ -38,6 +40,27 @@ func SubcmdActionsGenRunnerToken(ctx context.Context) cli.Command {
}
}
func SubcmdActionsGenerateRunnerSecret(ctx context.Context) cli.Command {
return cli.Command{
Name: "generate-secret",
Usage: "Generate a secret suitable for input to the register subcommand",
Action: func(cliCtx *cli.Context) error { return RunGenerateSecret(ctx, cliCtx) },
}
}
func RunGenerateSecret(ctx context.Context, cliCtx *cli.Context) error {
setting.MustInstalled()
runner := actions_model.ActionRunner{}
if err := runner.GenerateToken(); err != nil {
return err
}
if _, err := fmt.Fprintf(ContextGetStdout(ctx), "%s", runner.Token); err != nil {
panic(err)
}
return nil
}
func RunGenerateActionsRunnerToken(ctx context.Context, cliCtx *cli.Context) error {
if !ContextGetNoInstallSignals(ctx) {
var cancel context.CancelFunc