2024-09-02 09:09:46 +02:00
|
|
|
// Package cmd : Parse les arguments
|
|
|
|
|
|
|
|
// Arguments : version ==> version d'OpenCloud
|
|
|
|
// Argument : projet ==> nom du projet
|
|
|
|
package cmd
|
|
|
|
|
|
|
|
import (
|
|
|
|
"github.com/spf13/cobra"
|
|
|
|
|
|
|
|
log "oc-deploy/log_wrapper"
|
|
|
|
)
|
|
|
|
|
|
|
|
var (
|
|
|
|
context string
|
|
|
|
version string
|
2024-09-03 17:18:11 +02:00
|
|
|
modules []string
|
2024-09-02 09:09:46 +02:00
|
|
|
)
|
|
|
|
|
2024-09-10 19:01:54 +02:00
|
|
|
|
|
|
|
func cobraInstallCmd() *cobra.Command {
|
|
|
|
return &cobra.Command{
|
|
|
|
Use: "install",
|
|
|
|
Short: "install",
|
|
|
|
Long: `deploy Charts`,
|
|
|
|
Args: cobra.MaximumNArgs(0),
|
|
|
|
RunE: func(cmd *cobra.Command, args []string) error {
|
|
|
|
return InstallCmd(context, version, modules)
|
|
|
|
},
|
|
|
|
Example: "oc-deploy install --version 1.0 --context ex1",
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
func cobraUninstallCmd() *cobra.Command{
|
|
|
|
return &cobra.Command{
|
|
|
|
Use: "uninstall",
|
|
|
|
Short: "undeploy",
|
|
|
|
Long: `Undeploy`,
|
|
|
|
Args: cobra.MaximumNArgs(0),
|
|
|
|
RunE: func(cmd *cobra.Command, args []string) error {
|
|
|
|
return UninstallCmd(context)
|
|
|
|
},
|
|
|
|
Example: "oc-deploy uninstall --context ex1",
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
func cobraGenerateCmd() *cobra.Command{
|
|
|
|
return &cobra.Command{
|
|
|
|
Use: "generate",
|
|
|
|
Short: "generate",
|
|
|
|
Long: "Value",
|
|
|
|
Args: cobra.MaximumNArgs(0),
|
|
|
|
RunE: func(cmd *cobra.Command, args []string) error {
|
|
|
|
return GenerateCmd(context, version)
|
|
|
|
},
|
|
|
|
Example: "oc-deploy generate --version 1.0 --context ex1",
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2024-09-02 09:09:46 +02:00
|
|
|
func Execute() {
|
|
|
|
|
|
|
|
log.Log().Debug().Msg("Execute")
|
|
|
|
|
|
|
|
var rootCmd = &cobra.Command{Use: "oc-deploy"}
|
|
|
|
|
2024-09-10 19:01:54 +02:00
|
|
|
var cmdInstall = cobraInstallCmd()
|
|
|
|
var cmdUninstall = cobraUninstallCmd()
|
|
|
|
var cmdGenerate = cobraGenerateCmd()
|
|
|
|
|
|
|
|
cmdInstall.Flags().StringVarP(&context, "context", "c", "opencloud", "Nom du context")
|
|
|
|
cmdInstall.Flags().StringVarP(&version, "version", "v", "latest", "Version")
|
|
|
|
cmdInstall.Flags().StringArrayVarP(&modules, "modules", "m", []string{}, "modules, ...")
|
|
|
|
|
|
|
|
cmdUninstall.Flags().StringVarP(&context, "context", "c", "opencloud", "Nom du context")
|
|
|
|
|
|
|
|
cmdGenerate.Flags().StringVarP(&context, "context", "c", "opencloud", "Nom du context")
|
|
|
|
cmdGenerate.Flags().StringVarP(&version, "version", "v", "latest", "Version")
|
|
|
|
|
|
|
|
rootCmd.AddCommand(cmdInstall)
|
|
|
|
rootCmd.AddCommand(cmdUninstall)
|
|
|
|
rootCmd.AddCommand(cmdGenerate)
|
|
|
|
|
|
|
|
cobra.CheckErr(rootCmd.Execute())
|
2024-09-02 09:09:46 +02:00
|
|
|
|
|
|
|
}
|