Refactor openshift buildconfig CLI options.

- Remove --buildconfig, -bc option. Create buildconfig if service has build info
- Rename --branch to --build-branch
- Rename --repo to --build-repo
This commit is contained in:
Ratnadeep Debnath 2016-11-15 14:15:04 +05:30
parent fa724fe12d
commit 6f3e670af1
5 changed files with 29 additions and 34 deletions

View File

@ -144,21 +144,17 @@ func ConvertOpenShiftCommand() cli.Command {
Name: "deploymentconfig,dc",
Usage: "Generate a OpenShift DeploymentConfig object",
},
cli.BoolFlag{
Name: "buildconfig,bc",
Usage: "Generate a BuildConfig for Openshift",
},
cli.StringFlag{
Name: "repo",
Name: "build-repo",
Value: "",
Usage: "Specify source repository for buildconfig (default remote origin)",
EnvVar: "REPO",
EnvVar: "BUILDREPO",
},
cli.StringFlag{
Name: "branch",
Name: "build-branch",
Value: "master",
Usage: "Specify repository branch to use for buildconfig (default master)",
EnvVar: "BRANCH",
EnvVar: "BUILDBRANCH",
},
},
}

View File

@ -26,12 +26,12 @@ import (
)
var (
ConvertSource, ConvertOut, ConvertRepo, ConvertBranch string
ConvertChart, ConvertDeployment, ConvertDaemonSet bool
ConvertReplicationController, ConvertYaml, ConvertStdout bool
ConvertEmptyVols, ConvertDeploymentConfig, ConvertBuildConfig bool
ConvertReplicas int
ConvertOpt kobject.ConvertOptions
ConvertSource, ConvertOut, ConvertBuildRepo, ConvertBuildBranch string
ConvertChart, ConvertDeployment, ConvertDaemonSet bool
ConvertReplicationController, ConvertYaml, ConvertStdout bool
ConvertEmptyVols, ConvertDeploymentConfig, ConvertBuildConfig bool
ConvertReplicas int
ConvertOpt kobject.ConvertOptions
)
var ConvertProvider string = GlobalProvider
@ -53,9 +53,8 @@ var convertCmd = &cobra.Command{
CreateD: ConvertDeployment,
CreateDS: ConvertDaemonSet,
CreateRC: ConvertReplicationController,
CreateBuildConfig: ConvertBuildConfig,
Repo: ConvertRepo,
Branch: ConvertBranch,
BuildRepo: ConvertBuildRepo,
BuildBranch: ConvertBuildBranch,
CreateDeploymentConfig: ConvertDeploymentConfig,
EmptyVols: ConvertEmptyVols,
}
@ -87,12 +86,10 @@ func init() {
// OpenShift only
convertCmd.Flags().BoolVar(&ConvertDeploymentConfig, "deployment-config", true, "Generate an OpenShift deploymentconfig object")
convertCmd.Flags().MarkHidden("deployment-config")
convertCmd.Flags().BoolVar(&ConvertBuildConfig, "build-config", false, "Generate an OpenShift buildconfig object")
convertCmd.Flags().MarkHidden("build-config")
convertCmd.Flags().StringVar(&ConvertRepo, "repo", "", "Specify source repository for buildconfig (default remote origin)")
convertCmd.Flags().MarkHidden("repo")
convertCmd.Flags().StringVar(&ConvertBranch, "branch", "master", "Specify repository branch to use for buildconfig (default master)")
convertCmd.Flags().MarkHidden("branch")
convertCmd.Flags().StringVar(&ConvertBuildRepo, "build-repo", "", "Specify source repository for buildconfig (default remote origin)")
convertCmd.Flags().MarkHidden("build-repo")
convertCmd.Flags().StringVar(&ConvertBuildBranch, "build-branch", "master", "Specify repository branch to use for buildconfig (default master)")
convertCmd.Flags().MarkHidden("build-branch")
// Standard between the two
convertCmd.Flags().BoolVarP(&ConvertYaml, "yaml", "y", false, "Generate resource files into yaml format")
@ -116,14 +113,13 @@ Available Commands:{{range .Commands}}{{if .IsAvailableCommand}}
{{rpad .Name .NamePadding }} {{.Short}}{{end}}{{end}}{{end}}{{ if .HasAvailableLocalFlags}}
Resource Flags:
--branch Specify repository branch to use for buildconfig (default master)
--build-config Generate an Openshift build config object
--build-branch Specify repository branch to use for buildconfig (default master)
--build-repo Specify source repository for buildconfig (default remote origin)
-c, --chart Create a Helm chart for converted objects
--daemon-set Generate a Kubernetes daemonset object
-d, --deployment Generate a Kubernetes deployment object
--deployment-config Generate an OpenShift deployment config object
--replication-controller Generate a Kubernetes replication controller object
--repo Specify source repository for buildconfig (default remote origin)
Flags:
{{.LocalFlags.FlagUsages | trimRightSpace}}{{end}}{{ if .HasAvailableInheritedFlags}}

View File

@ -63,7 +63,8 @@ func ValidateFlags(bundle string, args []string, cmd *cobra.Command, opt *kobjec
// OpenShift specific flags
deploymentConfig := cmd.Flags().Lookup("deployment-config").Changed
buildConfig := cmd.Flags().Lookup("build-config").Changed
buildRepo := cmd.Flags().Lookup("build-repo").Changed
buildBranch := cmd.Flags().Lookup("build-branch").Changed
// Kubernetes specific flags
chart := cmd.Flags().Lookup("chart").Changed
@ -90,8 +91,11 @@ func ValidateFlags(bundle string, args []string, cmd *cobra.Command, opt *kobjec
if deploymentConfig {
logrus.Fatalf("--deployment-config is an OpenShift only flag")
}
if buildConfig {
logrus.Fatalf("--build-config is an Openshift only flag")
if buildRepo {
logrus.Fatalf("--build-repo is an Openshift only flag")
}
if buildBranch {
logrus.Fatalf("--build-branch is an Openshift only flag")
}
}

View File

@ -33,9 +33,8 @@ type ConvertOptions struct {
CreateRC bool
CreateDS bool
CreateDeploymentConfig bool
CreateBuildConfig bool
Repo string
Branch string
BuildRepo string
BuildBranch string
CreateChart bool
GenerateYaml bool
EmptyVols bool

View File

@ -305,8 +305,8 @@ func (o *OpenShift) Transform(komposeObject kobject.KomposeObject, opt kobject.C
objects = append(objects, o.initImageStream(name, service))
}
if opt.CreateBuildConfig && service.Build != "" {
objects = append(objects, initBuildConfig(name, service, opt.InputFile, opt.Repo, opt.Branch)) // Openshift BuildConfigs
if service.Build != "" {
objects = append(objects, initBuildConfig(name, service, opt.InputFile, opt.BuildRepo, opt.BuildBranch)) // Openshift BuildConfigs
}
// If ports not provided in configuration we will not make service