From f68e3aae9325def340ac4f5037168b33c79c0ea2 Mon Sep 17 00:00:00 2001 From: Ayman Bagabas Date: Thu, 24 Mar 2022 14:50:10 -0400 Subject: [PATCH] fix(config): trim pk file contents --- internal/config/config.go | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/internal/config/config.go b/internal/config/config.go index b779a7344f0d3a883d5623b37da71f8dbb298b1b..6ec18d799d3358d639c6f0ef0cbbee3d71535e9a 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -60,18 +60,19 @@ func NewConfig(cfg *config.Config) (*Config, error) { pks := make([]string, 0) for _, k := range cfg.InitialAdminKeys { + if bts, err := os.ReadFile(k); err == nil { + // pk is a file, set its contents as pk + k = string(bts) + } var pk = strings.TrimSpace(k) - if pk != "" { - if bts, err := os.ReadFile(k); err == nil { - // pk is a file, set its contents as pk - pk = string(bts) - } - // it is a valid ssh key, nothing to do - if _, _, _, _, err := ssh.ParseAuthorizedKey([]byte(pk)); err != nil { - return nil, fmt.Errorf("invalid initial admin key %q: %w", k, err) - } - pks = append(pks, pk) + if pk == "" { + continue + } + // it is a valid ssh key, nothing to do + if _, _, _, _, err := ssh.ParseAuthorizedKey([]byte(pk)); err != nil { + return nil, fmt.Errorf("invalid initial admin key %q: %w", k, err) } + pks = append(pks, pk) } rs := git.NewRepoSource(cfg.RepoPath)