1
0
mirror of synced 2026-02-13 13:06:56 +00:00

Be able to create a git source without human interaction.

Signed-off-by: Daniel Petró <daniel.petro@icloud.com>
This commit is contained in:
Daniel Petró
2021-08-26 15:56:08 +02:00
parent 69c3b90fea
commit c6f4d71187

View File

@@ -56,6 +56,7 @@ type sourceGitFlags struct {
caFile string caFile string
privateKeyFile string privateKeyFile string
recurseSubmodules bool recurseSubmodules bool
silent bool
} }
var createSourceGitCmd = &cobra.Command{ var createSourceGitCmd = &cobra.Command{
@@ -135,6 +136,7 @@ func init() {
createSourceGitCmd.Flags().StringVar(&sourceGitArgs.privateKeyFile, "private-key-file", "", "path to a passwordless private key file used for authenticating to the Git SSH server") createSourceGitCmd.Flags().StringVar(&sourceGitArgs.privateKeyFile, "private-key-file", "", "path to a passwordless private key file used for authenticating to the Git SSH server")
createSourceGitCmd.Flags().BoolVar(&sourceGitArgs.recurseSubmodules, "recurse-submodules", false, createSourceGitCmd.Flags().BoolVar(&sourceGitArgs.recurseSubmodules, "recurse-submodules", false,
"when enabled, configures the GitRepository source to initialize and include Git submodules in the artifact it produces") "when enabled, configures the GitRepository source to initialize and include Git submodules in the artifact it produces")
createSourceGitCmd.Flags().BoolVarP(&sourceGitArgs.silent, "silent", "s", false, "assumes the deploy key is already setup, skips confirmation")
createSourceCmd.AddCommand(createSourceGitCmd) createSourceCmd.AddCommand(createSourceGitCmd)
} }
@@ -272,12 +274,14 @@ func createSourceGitCmdRun(cmd *cobra.Command, args []string) error {
} }
if ppk, ok := s.StringData[sourcesecret.PublicKeySecretKey]; ok { if ppk, ok := s.StringData[sourcesecret.PublicKeySecretKey]; ok {
logger.Generatef("deploy key: %s", ppk) logger.Generatef("deploy key: %s", ppk)
prompt := promptui.Prompt{ if !sourceGitArgs.silent {
Label: "Have you added the deploy key to your repository", prompt := promptui.Prompt{
IsConfirm: true, Label: "Have you added the deploy key to your repository",
} IsConfirm: true,
if _, err := prompt.Run(); err != nil { }
return fmt.Errorf("aborting") if _, err := prompt.Run(); err != nil {
return fmt.Errorf("aborting")
}
} }
} }
logger.Actionf("applying secret with repository credentials") logger.Actionf("applying secret with repository credentials")