diff --git a/cmd/ci.go b/cmd/ci.go index 26a561d139ce4294a2e88795d766ce6d67a8496e..4db1cd763cb9f02c749aff0c3a4eff2f6c2a4708 100644 --- a/cmd/ci.go +++ b/cmd/ci.go @@ -15,6 +15,11 @@ package cmd import ( + "os" + + "git.psu.edu/k8s/devtool/config" + + "github.com/fatih/color" "github.com/spf13/cobra" ) @@ -50,3 +55,17 @@ func init() { // is called directly, e.g.: // configCmd.Flags().BoolP("toggle", "t", false, "Help message for toggle") } + +func getCiConfiguration() config.Config { + conf, err := config.New(configFile) + if err != nil { + color.New(color.FgRed).Printf("WARN: configuration file: %s doesn't exist, using defaults\n", configFile) + + conf.Name = os.Getenv("CI_PROJECT_NAME") + deployable := config.Deployable{ + Name: os.Getenv("CI_PROJECT_NAME"), + } + conf.Deployables = []config.Deployable{deployable} + } + return conf +} diff --git a/cmd/ci_build.go b/cmd/ci_build.go index 2d92ca329c7830829b6c76fdf1a9453eef3fb483..63c0be92f1d300d606903db6c30d72cd7761e264 100644 --- a/cmd/ci_build.go +++ b/cmd/ci_build.go @@ -32,13 +32,9 @@ var ciBuildCmd = &cobra.Command{ Use: "build", Short: "build the application within the CI system", RunE: func(cmd *cobra.Command, args []string) error { - conf, err := config.New(configFile) - if err != nil { - color.New(color.FgRed).Printf("Error reading configuration file: %s\n", configFile) - return err - } + conf := getCiConfiguration() - err = buildCiDocker(conf) + err := buildCiDocker(conf) if err != nil { color.Red("Failed to build docker image.") return err diff --git a/cmd/ci_deploy.go b/cmd/ci_deploy.go index 50e52277989577cd1f5d015436bcec801fe60257..329ece014de402719c45792264e8e3206ce8d002 100644 --- a/cmd/ci_deploy.go +++ b/cmd/ci_deploy.go @@ -28,13 +28,9 @@ var ciDeployCmd = &cobra.Command{ Use: "deploy", Short: "deploy the application within the CI system", RunE: func(cmd *cobra.Command, args []string) error { - conf, err := config.New(configFile) - if err != nil { - color.New(color.FgRed).Printf("Error reading configuration file: %s\n", configFile) - return err - } + conf := getCiConfiguration() - err = fluxDeployCi(conf) + err := fluxDeployCi(conf) if err != nil { color.Red("Failed to build docker image.") return err diff --git a/cmd/config_init.go b/cmd/config_init.go index fbc4f65c7ec4c49e615c2b8a160cef70afa3ee38..2bc91c47451d010179ae8e177f6d616c44cb4687 100644 --- a/cmd/config_init.go +++ b/cmd/config_init.go @@ -175,7 +175,7 @@ var initCmd = &cobra.Command{ } conf.LocalEnvVars = []string{"OAUTH_CLIENT_ID"} - conf.LocalEnvVars = []string{"OAUTH_CLIENT_SECRET", "OAUTH_JWK"} + conf.LocalSecrets = []string{"OAUTH_CLIENT_SECRET", "OAUTH_JWK"} color.Yellow("Writing configuration")