@@ -60,6 +60,14 @@ GO_TEST_BINARY="gotest"
60
60
return err
61
61
}
62
62
63
+ tagsArg := ""
64
+ tags , err := cmd .Flags ().GetStringSlice ("tags" )
65
+ if err != nil {
66
+ return err
67
+ } else if len (tags ) != 0 {
68
+ tagsArg = "-tags=" + strings .Join (tags , "," )
69
+ }
70
+
63
71
payload := "mode: " + mode + "\n "
64
72
65
73
var packages []string
@@ -77,7 +85,7 @@ GO_TEST_BINARY="gotest"
77
85
78
86
if len (a ) > 4 && a [len (a )- 4 :] == "/..." {
79
87
var buf bytes.Buffer
80
- c := exec .Command ("go" , "list" , a )
88
+ c := exec .Command ("go" , "list" , tagsArg , a )
81
89
c .Stdout = & buf
82
90
c .Stderr = & buf
83
91
if err := c .Run (); err != nil {
@@ -133,6 +141,7 @@ GO_TEST_BINARY="gotest"
133
141
"-covermode=" + mode ,
134
142
"-coverprofile=" + files [k ],
135
143
"-coverpkg=" + strings .Join (packages , "," ),
144
+ tagsArg ,
136
145
},
137
146
passthrough ... ),
138
147
pkg )
@@ -203,6 +212,7 @@ func init() {
203
212
RootCmd .Flags ().StringP ("output" , "o" , "coverage.txt" , "Location for the output file" )
204
213
RootCmd .Flags ().String ("covermode" , "atomic" , "Which code coverage mode to use" )
205
214
RootCmd .Flags ().StringSlice ("ignore" , []string {}, "Will ignore packages that contains any of these strings" )
215
+ RootCmd .Flags ().StringSlice ("tags" , []string {}, "Tags to include" )
206
216
}
207
217
208
218
// initConfig reads in config file and ENV variables if set.
0 commit comments