atf.go 3.2 KB
Newer Older
1 2 3 4 5
package main

import (
	"flag"
	"github.com/easysoft/zentaoatf/src/action"
aaronchen2k2k's avatar
aaronchen2k2k 已提交
6
	configUtils "github.com/easysoft/zentaoatf/src/utils/config"
aaronchen2k2k's avatar
aaronchen2k2k 已提交
7
	fileUtils "github.com/easysoft/zentaoatf/src/utils/file"
aaronchen2k2k's avatar
aaronchen2k2k 已提交
8
	logUtils "github.com/easysoft/zentaoatf/src/utils/log"
9
	stdinUtils "github.com/easysoft/zentaoatf/src/utils/stdin"
aaronchen2k2k's avatar
aaronchen2k2k 已提交
10
	"github.com/easysoft/zentaoatf/src/utils/vari"
11 12 13 14
	"os"
)

func main() {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
15 16
	var language string
	var independentFile bool
aaronchen2k2k's avatar
aaronchen2k2k 已提交
17
	var keywords string
18

aaronchen2k2k's avatar
aaronchen2k2k 已提交
19 20
	var productId string
	var moduleId string
aaronchen2k2k's avatar
aaronchen2k2k 已提交
21 22
	var taskId string
	var suiteId string
23
	//var caseId string
aaronchen2k2k's avatar
aaronchen2k2k 已提交
24 25 26

	flagSet := flag.NewFlagSet("atf", flag.ContinueOnError)

aaronchen2k2k's avatar
aaronchen2k2k 已提交
27
	//flagSet.Var(commonUtils.NewSliceValue([]string{}, &files), "file", "")
aaronchen2k2k's avatar
aaronchen2k2k 已提交
28

aaronchen2k2k's avatar
aaronchen2k2k 已提交
29
	flagSet.StringVar(&productId, "p", "", "")
aaronchen2k2k's avatar
aaronchen2k2k 已提交
30 31
	flagSet.StringVar(&productId, "product", "", "")

aaronchen2k2k's avatar
aaronchen2k2k 已提交
32
	flagSet.StringVar(&moduleId, "m", "", "")
aaronchen2k2k's avatar
aaronchen2k2k 已提交
33 34
	flagSet.StringVar(&moduleId, "module", "", "")

aaronchen2k2k's avatar
aaronchen2k2k 已提交
35 36
	flagSet.StringVar(&suiteId, "s", "", "")
	flagSet.StringVar(&suiteId, "suiteId", "", "")
aaronchen2k2k's avatar
aaronchen2k2k 已提交
37

aaronchen2k2k's avatar
aaronchen2k2k 已提交
38 39
	flagSet.StringVar(&taskId, "t", "", "")
	flagSet.StringVar(&taskId, "taskId", "", "")
aaronchen2k2k's avatar
aaronchen2k2k 已提交
40

aaronchen2k2k's avatar
aaronchen2k2k 已提交
41
	flagSet.StringVar(&language, "l", "", "")
aaronchen2k2k's avatar
aaronchen2k2k 已提交
42 43 44 45
	flagSet.StringVar(&language, "language", "", "")

	flagSet.BoolVar(&independentFile, "i", false, "")
	flagSet.BoolVar(&independentFile, "independent", false, "")
aaronchen2k2k's avatar
aaronchen2k2k 已提交
46

aaronchen2k2k's avatar
aaronchen2k2k 已提交
47 48 49
	flagSet.StringVar(&keywords, "k", "", "")
	flagSet.StringVar(&keywords, "keywords", "", "")

50 51
	//flagSet.StringVar(&caseId, "c", "", "")
	//flagSet.StringVar(&caseId, "case", "", "")
aaronchen2k2k's avatar
aaronchen2k2k 已提交
52

aaronchen2k2k's avatar
aaronchen2k2k 已提交
53 54 55 56 57
	var placeholder string
	flagSet.StringVar(&placeholder, "h", "", "")
	flagSet.StringVar(&placeholder, "r", "", "")
	flagSet.StringVar(&placeholder, "v", "", "")

58 59 60 61 62
	if len(os.Args) < 2 {
		logUtils.PrintUsage()
		return
	}

63
	switch os.Args[1] {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
64
	case "run", "-r":
aaronchen2k2k's avatar
aaronchen2k2k 已提交
65
		files, idx := fileUtils.GetFilesFromParams(os.Args[2:])
66
		if err := flagSet.Parse(os.Args[idx+1:]); err == nil {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
67
			action.Run(files, suiteId, taskId)
aaronchen2k2k's avatar
aaronchen2k2k 已提交
68
		}
aaronchen2k2k's avatar
aaronchen2k2k 已提交
69

aaronchen2k2k's avatar
aaronchen2k2k 已提交
70
	case "checkout", "co":
aaronchen2k2k's avatar
aaronchen2k2k 已提交
71
		if err := flagSet.Parse(os.Args[2:]); err == nil {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
72
			action.Generate(productId, moduleId, suiteId, taskId, independentFile, language)
73
		}
aaronchen2k2k's avatar
aaronchen2k2k 已提交
74

aaronchen2k2k's avatar
aaronchen2k2k 已提交
75
	case "update", "up":
aaronchen2k2k's avatar
aaronchen2k2k 已提交
76
		if err := flagSet.Parse(os.Args[2:]); err == nil {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
77
			action.Generate(productId, moduleId, suiteId, taskId, independentFile, language)
aaronchen2k2k's avatar
aaronchen2k2k 已提交
78
		}
aaronchen2k2k's avatar
aaronchen2k2k 已提交
79 80

	case "ci":
aaronchen2k2k's avatar
aaronchen2k2k 已提交
81 82 83 84
		files, idx := fileUtils.GetFilesFromParams(os.Args[2:])
		if err := flagSet.Parse(os.Args[idx+1:]); err == nil {
			action.CommitCases(files)
		}
aaronchen2k2k's avatar
aaronchen2k2k 已提交
85 86

	case "cr":
aaronchen2k2k's avatar
aaronchen2k2k 已提交
87
		files, idx := fileUtils.GetFilesFromParams(os.Args[2:])
aaronchen2k2k's avatar
aaronchen2k2k 已提交
88
		if err := flagSet.Parse(os.Args[idx+1:]); err == nil {
89
			action.CommitResult(files)
aaronchen2k2k's avatar
aaronchen2k2k 已提交
90
		}
aaronchen2k2k's avatar
aaronchen2k2k 已提交
91

aaronchen2k2k's avatar
aaronchen2k2k 已提交
92
	case "cb":
aaronchen2k2k's avatar
aaronchen2k2k 已提交
93
		files, idx := fileUtils.GetFilesFromParams(os.Args[2:])
aaronchen2k2k's avatar
aaronchen2k2k 已提交
94
		if err := flagSet.Parse(os.Args[idx+1:]); err == nil {
95
			action.CommitBug(files)
aaronchen2k2k's avatar
aaronchen2k2k 已提交
96 97
		}

aaronchen2k2k's avatar
aaronchen2k2k 已提交
98
	case "list", "ls", "-l":
aaronchen2k2k's avatar
aaronchen2k2k 已提交
99
		files, idx := fileUtils.GetFilesFromParams(os.Args[2:])
aaronchen2k2k's avatar
aaronchen2k2k 已提交
100 101 102
		if err := flagSet.Parse(os.Args[idx+1:]); err == nil {
			action.List(files, keywords)
		}
aaronchen2k2k's avatar
aaronchen2k2k 已提交
103

aaronchen2k2k's avatar
aaronchen2k2k 已提交
104
	case "view", "-v":
aaronchen2k2k's avatar
aaronchen2k2k 已提交
105
		files, idx := fileUtils.GetFilesFromParams(os.Args[2:])
aaronchen2k2k's avatar
aaronchen2k2k 已提交
106 107 108
		if err := flagSet.Parse(os.Args[idx+1:]); err == nil {
			action.View(files, keywords)
		}
109

aaronchen2k2k's avatar
aaronchen2k2k 已提交
110
	case "set", "-s":
aaronchen2k2k's avatar
aaronchen2k2k 已提交
111
		stdinUtils.InputForSet()
aaronchen2k2k's avatar
aaronchen2k2k 已提交
112

aaronchen2k2k's avatar
aaronchen2k2k 已提交
113
	case "help", "-h":
aaronchen2k2k's avatar
help  
aaronchen2k2k 已提交
114
		logUtils.PrintUsage()
aaronchen2k2k's avatar
aaronchen2k2k 已提交
115

116
	default:
aaronchen2k2k's avatar
aaronchen2k2k 已提交
117
		logUtils.PrintUsage()
118
	}
119
}
120

121
func init() {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
122 123
	if len(os.Args) > 1 {
		if os.Args[1] == "cui" {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
124
			vari.RunFromCui = true
aaronchen2k2k's avatar
aaronchen2k2k 已提交
125
		} else {
aaronchen2k2k's avatar
aaronchen2k2k 已提交
126
			vari.RunFromCui = false
aaronchen2k2k's avatar
aaronchen2k2k 已提交
127
		}
128 129
	}

aaronchen2k2k's avatar
aaronchen2k2k 已提交
130
	configUtils.InitConfig()
131
}