public static async Task Main(string[] args)
    {
        var sdk    = new DotnetSdkManager();
        var dotnet = await sdk.GetDotnetCliPath();

        Target("default", DependsOn("Test-Demo-01", "Test-Demo-02", "Test-Demo-03", "Test-Demo-04"));

        Target(
            "Build-Demo-01",
            Directory.EnumerateFiles("ASP.Net Core API Gateway - 01", "*.sln", SearchOption.AllDirectories),
            solution => Run(dotnet, $"build \"{solution}\" --configuration Release"));

        Target(
            "Test-Demo-01", DependsOn("Build-Demo-01"),
            Directory.EnumerateFiles("ASP.Net Core API Gateway - 01", "*.Tests.csproj", SearchOption.AllDirectories),
            proj => Run(dotnet, $"test \"{proj}\" --configuration Release --no-build"));

        Target(
            "Build-Demo-02",
            Directory.EnumerateFiles("ASP.Net Core API Gateway - 02", "*.sln", SearchOption.AllDirectories),
            solution => Run(dotnet, $"build \"{solution}\" --configuration Release"));

        Target(
            "Test-Demo-02", DependsOn("Build-Demo-02"),
            Directory.EnumerateFiles("ASP.Net Core API Gateway - 02", "*.Tests.csproj", SearchOption.AllDirectories),
            proj => Run(dotnet, $"test \"{proj}\" --configuration Release --no-build"));

        Target(
            "Build-Demo-03",
            Directory.EnumerateFiles("ASP.Net Mvc Core", "*.sln", SearchOption.AllDirectories),
            solution => Run(dotnet, $"build \"{solution}\" --configuration Release"));

        Target(
            "Test-Demo-03", DependsOn("Build-Demo-03"),
            Directory.EnumerateFiles("ASP.Net Mvc Core", "*.Tests.csproj", SearchOption.AllDirectories),
            proj => Run(dotnet, $"test \"{proj}\" --configuration Release --no-build"));

        Target(
            "Build-Demo-04",
            Directory.EnumerateFiles("ASP.Net Mvc Core UI Composition", "*.sln", SearchOption.AllDirectories),
            solution => Run(dotnet, $"build \"{solution}\" --configuration Release"));

        Target(
            "Test-Demo-04", DependsOn("Build-Demo-04"),
            Directory.EnumerateFiles("ASP.Net Mvc Core UI Composition", "*.Tests.csproj", SearchOption.AllDirectories),
            proj => Run(dotnet, $"test \"{proj}\" --configuration Release --no-build"));

        await RunTargetsAndExitAsync(args);
    }
Ejemplo n.º 2
0
    public static void Main(string[] args)
    {
        var sdk = new DotnetSdkManager();

        Target("default", DependsOn("test"));

        Target("build",
               Directory.EnumerateFiles(".", "*.sln", SearchOption.AllDirectories),
               solution => Run(sdk.GetDotnetCliPath(), $"build \"{solution}\" --configuration Release"));

        Target("test", DependsOn("build"),
               Directory.EnumerateFiles("tests", "*Tests.csproj", SearchOption.AllDirectories),
               proj => Run(sdk.GetDotnetCliPath(), $"test \"{proj}\" --configuration Release --no-build"));

        RunTargetsAndExit(args);
    }
Ejemplo n.º 3
0
    public static void Main(string[] args)
    {
        var sdk = new DotnetSdkManager();

        Target("default", DependsOn("verify-OS-is-suppported"),
               Directory.EnumerateFiles("src", "*.sln", SearchOption.AllDirectories),
               solution => Run(sdk.GetDotnetCliPath(), $"build \"{solution}\" --configuration Debug"));

        Target(
            "verify-OS-is-suppported",
            () => { if (!RuntimeInformation.IsOSPlatform(OSPlatform.Windows))
                    {
                        throw new InvalidOperationException("Build is supported on Windows only, at this time.");
                    }
            });

        RunTargetsAndExit(args);
    }