From 86f66eaa4508603d9359398e8dcf866d8689bb89 Mon Sep 17 00:00:00 2001
From: fuxiaohei <fuxiaohei@vip.qq.com>
Date: Tue, 22 Nov 2022 20:56:14 +0800
Subject: [PATCH] feat(register): add labels to local runner file

---
 cmd/register.go      |  1 +
 core/runner.go       | 11 ++++++-----
 register/register.go |  1 +
 3 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/cmd/register.go b/cmd/register.go
index 3a7635b..6a6d46b 100644
--- a/cmd/register.go
+++ b/cmd/register.go
@@ -295,6 +295,7 @@ func doRegister(cfg *config.Config, inputs *registerInputs) error {
 	)
 	cfg.Runner.Name = inputs.RunnerName
 	cfg.Runner.Token = inputs.Token
+	cfg.Runner.Labels = inputs.CustomLabels
 	_, err := register.Register(ctx, cfg.Runner)
 	if err != nil {
 		log.WithError(err).Errorln("Cannot register the runner")
diff --git a/core/runner.go b/core/runner.go
index a948639..6ae15dc 100644
--- a/core/runner.go
+++ b/core/runner.go
@@ -7,9 +7,10 @@ const (
 
 // Runner struct
 type Runner struct {
-	ID      int64  `json:"id"`
-	UUID    string `json:"uuid"`
-	Name    string `json:"name"`
-	Token   string `json:"token"`
-	Address string `json:"address"`
+	ID      int64    `json:"id"`
+	UUID    string   `json:"uuid"`
+	Name    string   `json:"name"`
+	Token   string   `json:"token"`
+	Address string   `json:"address"`
+	Labels  []string `json:"labels"`
 }
diff --git a/register/register.go b/register/register.go
index 93ea631..c5556e7 100644
--- a/register/register.go
+++ b/register/register.go
@@ -47,6 +47,7 @@ func (p *Register) Register(ctx context.Context, cfg config.Runner) (*core.Runne
 		Name:    resp.Msg.Runner.Name,
 		Token:   resp.Msg.Runner.Token,
 		Address: p.Client.Address(),
+		Labels:  cfg.Labels,
 	}
 
 	file, err := json.MarshalIndent(data, "", "  ")