在DevOps中,您可以创建一个dotnet build
任务,其中可以将“项目路径”设置为**/*.csproj
来构建所有项目。
这很好,但是(显然)它也可以构建我的*.Test.csproj
项目。
我发现一些帖子中提到了排除模式,因此我尝试与这些帖子中的操作相同,并尝试了以下组合:
**/*.csproj;-**/*.Test.csproj
**/*.csproj;!**/*.Test.csproj
**/*.csproj;-:**/*.Test.csproj
**/*.csproj;!:**/*.Test.csproj
对于所有尝试,我都会在DevOps日志中收到以下错误:
找不到与指定模式匹配的项目文件。
那么,如何创建dotnet build
任务来构建我的所有项目除了 *.Test.csproj
项目?
答案 0 :(得分:2)
这是我用来运行除某些测试以外的所有测试的东西:
open Sexplib.Sexp
let rec parse_bindings bindings =
match bindings with
| [] -> []
| first::rest ->
match first with
| List([Atom(name); e]) ->
[(name, parse e)] @ (parse_bindings rest)
let rec parse sexp : expr =
match sexp with
| Atom(s) ->
(* some code *)
| List(sexps) ->
match sexps with
| (* some code *)
| [Atom("let"); List(bindings_sexp); e2] ->
let binding_expr = parse_bindings bindings in
ELet(binding_expr, parse e2)
| _ -> failwith "foo"
因此,您需要使用相同的标记:
Test/**/*.csproj
!**/*.Billing.Test.csproj
!**/*.Queues.Test.csproj
!**/*.WidgetDataProvider.Test.csproj
据我了解,顺序很重要,所以这行不通:
**/*.csproj
!**/*.Test.csproj