add create functionnality

This commit is contained in:
2023-07-01 00:49:45 -04:00
parent 03ddddd2e2
commit 71fe930228
9 changed files with 318 additions and 85 deletions
+134 -29
View File
@@ -43,10 +43,16 @@ type ListCmdConfig struct {
}
type CreateCmdConfig struct {
Name string
Organisation string
Description string
Private bool
Name string
Description string
DirectoryFlag bool
VersionFlag bool
ReadmeFlag bool
GitFlag bool
TeaFlag bool
Organization string
OrganizationFlag bool
PrivateFlag bool
}
type EnvCmdConfig struct {
@@ -323,14 +329,84 @@ func (c *Config) SetCreateDescription(value string) {
c.CreateCmd.Description = value
}
// Getter for Directory field
func (c *Config) GetCreateDirectoryFlag() bool {
return c.CreateCmd.DirectoryFlag
}
// Setter for Directory field
func (c *Config) SetCreateDirectoryFlag(value bool) {
c.CreateCmd.DirectoryFlag = value
}
// Getter for versionFlag field
func (c *Config) GetCreateVersionFlag() bool {
return c.CreateCmd.VersionFlag
}
// Setter for versionFlag field
func (c *Config) SetCreateVersionFlag(value bool) {
c.CreateCmd.VersionFlag = value
}
// Getter for createReadme field
func (c *Config) GetCreateReadmeFlag() bool {
return c.CreateCmd.ReadmeFlag
}
// Setter for createReadme field
func (c *Config) SetCreateReadmeFlag(value bool) {
c.CreateCmd.ReadmeFlag = value
}
// Getter for createGit flag
func (c *Config) GetCreateGitFlag() bool {
return c.CreateCmd.GitFlag
}
// Setter for createGit flag
func (c *Config) SetCreateGitFlag(value bool) {
c.CreateCmd.GitFlag = value
}
// Getter for createTea flag
func (c *Config) GetCreateTeaFlag() bool {
return c.CreateCmd.TeaFlag
}
// Setter for createTea flag
func (c *Config) SetCreateTeaFlag(value bool) {
c.CreateCmd.TeaFlag = value
}
// Getter for create Orgenization field
func (c *Config) GetCreateOrgenization() string {
return c.CreateCmd.Organization
}
// Setter for create Orgenization field
func (c *Config) SetCreateOrgenization(value string) {
c.CreateCmd.Organization = value
}
// Getter for create Orgenization flag
func (c *Config) GetCreateOrgenizationFlag() bool {
return c.CreateCmd.OrganizationFlag
}
// Setter for create Orgenization flag
func (c *Config) SetCreateOrgenizationFlag(value bool) {
c.CreateCmd.OrganizationFlag = value
}
// Getter for createPrivate field
func (c *Config) GetCreatePrivate() bool {
return c.CreateCmd.Private
func (c *Config) GetCreatePrivateFlag() bool {
return c.CreateCmd.PrivateFlag
}
// Setter for createPrivate field
func (c *Config) SetCreatePrivate(value bool) {
c.CreateCmd.Private = value
func (c *Config) SetCreatePrivateFlag(value bool) {
c.CreateCmd.PrivateFlag = value
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * //
@@ -566,32 +642,56 @@ func (c *Config) InitCmdCreate(cmd *cobra.Command, args []string) {
// validate flag on create command
if cmd.Name() == "create" {
// set organization flag if set
if cmd.Flags().Changed("org") || cmd.Flags().Changed("o") {
c.SetListOrganization(cmd.Flag("org").Value.String())
c.SetListOrganizationFlag(true)
}
// set name flag if set
if cmd.Flags().Changed("name") || cmd.Flags().Changed("n") {
c.SetCreateName(cmd.Flag("name").Value.String())
}
// set description flag if set
if cmd.Flags().Changed("desc") || cmd.Flags().Changed("d") {
c.SetCreateDescription(cmd.Flag("desc").Value.String())
if cmd.Flags().Changed("description") || cmd.Flags().Changed("d") {
c.SetCreateDescription(cmd.Flag("description").Value.String())
}
// set private flag if set
if cmd.Flags().Changed("private") || cmd.Flags().Changed("p") {
if cmd.Flag("private").Value.String() == "true" {
c.SetCreatePrivate(true)
} else if cmd.Flag("private").Value.String() == "false" {
c.SetCreatePrivate(false)
} else {
c.SetCreatePrivate(false)
// set Directory flag if set for create directories structure
if cmd.Flags().Changed("struc") || cmd.Flags().Changed("s") {
c.SetCreateDirectoryFlag(true)
// set version flag if set for adding verion control
if cmd.Flags().Changed("version") || cmd.Flags().Changed("v") {
c.SetCreateVersionFlag(true)
}
// set Readme flag if set for adding readme file
if cmd.Flags().Changed("readme") || cmd.Flags().Changed("r") {
c.SetCreateReadmeFlag(true)
}
}
// if Git flag or Tea flag is set
if cmd.Flags().Changed("git") || cmd.Flags().Changed("g") || cmd.Flags().Changed("tea") || cmd.Flags().Changed("t") {
// set private flag if set
if cmd.Flags().Changed("private") || cmd.Flags().Changed("p") {
c.SetCreatePrivateFlag(true)
}
// set organization flag if set
if cmd.Flags().Changed("org") || cmd.Flags().Changed("o") {
c.SetCreateOrgenization(cmd.Flag("org").Value.String())
c.SetCreateOrgenizationFlag(true)
}
// set Git flag if set for creating git repository
if cmd.Flags().Changed("git") || cmd.Flags().Changed("g") {
c.SetCreateGitFlag(true)
} else if cmd.Flags().Changed("tea") || cmd.Flags().Changed("t") {
c.SetCreateTeaFlag(true)
}
}
}
}
@@ -698,12 +798,17 @@ func (c *Config) printAllConfiguration() {
fmt.Println("Create commands Configuration:")
fmt.Println("- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -")
fmt.Println("config: CreateName: ", c.GetCreateCmd().Name)
fmt.Println("config: Organization: ", c.GetCreateCmd().Organisation)
fmt.Println("config: CreateDescription: ", c.GetCreateCmd().Description)
fmt.Println("config: CreatePrivate: ", c.GetCreatePrivate())
fmt.Println("config: CreateCmd: ", c.GetCreateCmd())
fmt.Println("config: CreateName: ", c.GetCreateCmd().Name)
fmt.Println("config: CreateDescription: ", c.GetCreateDescription())
fmt.Println("config: CreateDirectory: ", c.GetCreateDirectoryFlag())
fmt.Println("config: VersionFlag", c.GetCreateVersionFlag())
fmt.Println("config: ReadMeFlag ", c.GetCreateReadmeFlag())
fmt.Println("config: GitFlag ", c.GetCreateGitFlag())
fmt.Println("config: TeaFlag ", c.GetCreateTeaFlag())
fmt.Println("config: Organization: ", c.GetCreateOrgenization())
fmt.Println("config: OrganizationFlag: ", c.GetCreateOrgenizationFlag())
fmt.Println("config: CreatePrivate: ", c.GetCreatePrivateFlag())
fmt.Println("Environment Variables Configuration:")
fmt.Println("- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -")
fmt.Println("config: EnvCmd: ", c.GetEnvCmd())