add list prjs and org

This commit is contained in:
2023-06-17 14:17:02 -04:00
parent 06f1fb2924
commit fac4f4a7c2
10 changed files with 464 additions and 226 deletions
+110 -20
View File
@@ -3,19 +3,10 @@ package config
import (
"fmt"
"kode-starter/utils"
"kode-starter/version"
"os"
"github.com/spf13/cobra"
)
// var version string = "0.0.1"
// var fullVersion string = version.FullVersion()
// var fullVersion, err = version.ReadVersionFile()
// var fullVersion string
var author string = "Bruno Charest"
var modifDate string = "2023-06-12"
@@ -26,22 +17,26 @@ var verboseFlag bool = false
var jsonFlag bool = false
// variables for URL
var urlBase string = "https://git.bcmaison.cf"
var urlApiBase string = urlBase + "/api/v1"
var urlApiOrgs string = urlApiBase + "/orgs"
func GetVersion() *version.Version {
// variables for list command
var listOrganization string
fullVersion, err := version.NewVersionFromString(version.VersionString)
if err != nil {
fmt.Println("Error:", err)
os.Exit(1)
}
var listOrganizationFlag bool = false
return fullVersion
}
// variables for create command
var createName string
var createOrganisation string
var createDescription string
var createPrivatge string
func GetAuthor() string {
return author
@@ -87,7 +82,63 @@ func SetVerboseFlag(flag bool) {
verboseFlag = flag
}
func SetInformations(cmd *cobra.Command, args []string, userToken string) {
// functions for list command
// --------------------------
func SetListOrganisation(name string) {
listOrganization = name
}
func GetListOrganisation() string {
return listOrganization
}
func SetListOrganisationFlag(flag bool) {
listOrganizationFlag = flag
}
func GetListOrganisationFlag() bool {
return listOrganizationFlag
}
// functions for create command
// ----------------------------
func GetCreateName() string {
return createName
}
func SetCreateName(name string) {
createName = name
}
func GetCreateOrganisation() string {
return createOrganisation
}
func SetCeateOrganisation(organisation string) {
createOrganisation = organisation
}
func GetCreateDescription() string {
return createDescription
}
func SetCeateDescription(description string) {
createDescription = description
}
func GetCreatePrivate() string {
return createPrivatge
}
func SetCreatePrivate(private string) {
createPrivatge = private
}
// SetInformations - set informations from command line
func SetInformations(cmd *cobra.Command, args []string) {
// fmt.Println("SetInformations - start:")
// Check if the verbose flag is set
if cmd.Flags().Changed("verbose") || cmd.Flags().Changed("v") {
SetVerboseFlag(true)
@@ -102,10 +153,49 @@ func SetInformations(cmd *cobra.Command, args []string, userToken string) {
SetJsonFlag(false)
}
// check if the cmd come from list or create
if GetVerboseFlag() {
if cmd.Name() == "list" {
fmt.Println("SetInformations - progress list option:")
fmt.Println("SetInformations - org:" + cmd.Flag("org").Value.String())
fmt.Println("SetInformations - cmd Usertoken:" + cmd.Flag("token").Value.String())
}
if cmd.Name() == "create" {
fmt.Println("SetInformations - progress create option:")
fmt.Println("SetInformations - name:" + cmd.Flag("name").Value.String())
fmt.Println("SetInformations - description:" + cmd.Flag("desc").Value.String())
fmt.Println("SetInformations - private:" + cmd.Flag("private").Value.String())
fmt.Println("SetInformations - cmd Usertoken:" + cmd.Flag("token").Value.String())
fmt.Println("SetInformations - org:" + cmd.Flag("org").Value.String())
}
}
if cmd.Flags().Changed("name") || cmd.Flags().Changed("n") {
SetCreateName(cmd.Flag("name").Value.String())
}
if cmd.Flags().Changed("org") || cmd.Flags().Changed("o") {
if cmd.Name() == "list" {
SetListOrganisation(cmd.Flag("org").Value.String())
SetListOrganisationFlag(true)
} else {
SetCeateOrganisation(cmd.Flag("org").Value.String())
}
}
if cmd.Flags().Changed("desc") || cmd.Flags().Changed("d") {
SetCeateDescription(cmd.Flag("desc").Value.String())
}
if cmd.Flags().Changed("private") || cmd.Flags().Changed("p") {
SetCreatePrivate(cmd.Flag("private").Value.String())
}
// Check if token come from flag or env
if cmd.Flags().Changed("token") || cmd.Flags().Changed("t") {
if utils.IsValidToken(userToken) {
SetToken(userToken)
if utils.IsValidToken(cmd.Flag("token").Value.String()) {
SetToken(cmd.Flag("token").Value.String())
} else {
utils.ExitWithError(10, "Invalid token, format must be 40 characters UUID.")
}