package config import ( "kode-starter/utils" "github.com/spf13/cobra" ) var version string = "0.0.1" var author string = "Bruno Charest" var modifDate string = "2023-06-12" var tokenEnv string = utils.GetGitToken() var verboseFlag bool = false var jsonFlag bool = false var urlBase string = "https://git.bcmaison.cf" var urlApiBase string = urlBase + "/api/v1" var urlApiOrgs string = urlApiBase + "/orgs" func GetVersion() string { return version } func GetAuthor() string { return author } func GetBuildDate() string { return modifDate } func GetToken() string { return tokenEnv } func SetToken(token string) { tokenEnv = token } func GetJsonFlag() bool { return jsonFlag } func SetJsonFlag(flag bool) { jsonFlag = flag } func GetUrlBase() string { return urlBase } func GetUrlApiBase() string { return urlApiBase } func GetUrlApiOrgs() string { return urlApiOrgs } func GetVerboseFlag() bool { return verboseFlag } func SetVerboseFlag(flag bool) { verboseFlag = flag } func SetInformations(cmd *cobra.Command, args []string, userToken string) { // Check if the verbose flag is set if cmd.Flags().Changed("verbose") || cmd.Flags().Changed("v") { SetVerboseFlag(true) } else { SetVerboseFlag(false) } // Check if the json flag is set if cmd.Flags().Changed("json") || cmd.Flags().Changed("j") { SetJsonFlag(true) } else { SetJsonFlag(false) } // Check if token come from flag or env if cmd.Flags().Changed("token") || cmd.Flags().Changed("t") { if utils.IsValidToken(userToken) { SetToken(userToken) } else { utils.ExitWithError(10, "Invalid token, format must be 40 characters UUID.") } } else { if utils.IsValidToken(utils.GetGitToken()) { SetToken(utils.GetGitToken()) } else { utils.ExitWithError(10, "Invalid token, format must be 40 characters UUID.") } } }