Esempio n. 1
0
        public Build()
        {
            Cake.Log.Verbosity = Verbosity.Diagnostic;

            StandardGlobalInfo globalInfo = CreateStandardGlobalInfo()
                                            .AddDotnet()
                                            .SetCIBuildTag();

            Task("Check-Repository")
            .Does(() =>
            {
                globalInfo.TerminateIfShouldStop();
            });

            Task("Clean")
            .IsDependentOn("Check-Repository")
            .Does(() =>
            {
                globalInfo.GetDotnetSolution().Clean();
                Cake.CleanDirectories(globalInfo.ReleasesFolder.ToString());
                Cake.DeleteFiles("Tests/**/TestResult*.xml");
            });

            Task("Build")
            .IsDependentOn("Check-Repository")
            .IsDependentOn("Clean")
            .Does(() =>
            {
                globalInfo.GetDotnetSolution().Build();
            });

            Task("Unit-Testing")
            .IsDependentOn("Build")
            .WithCriteria(() => Cake.InteractiveMode() == InteractiveMode.NoInteraction ||
                          Cake.ReadInteractiveOption("RunUnitTests", "Run Unit Tests?", 'Y', 'N') == 'Y')
            .Does(() =>
            {
                globalInfo.GetDotnetSolution().Test();
            });

            Task("Create-NuGet-Packages")
            .WithCriteria(() => globalInfo.IsValid)
            .IsDependentOn("Unit-Testing")
            .Does(() =>
            {
                globalInfo.GetDotnetSolution().Pack();
            });

            Task("Push-Artifacts")
            .IsDependentOn("Create-NuGet-Packages")
            .WithCriteria(() => globalInfo.IsValid)
            .Does(async() =>
            {
                await globalInfo.PushArtifactsAsync();
            });

            // The Default task for this script can be set here.
            Task("Default")
            .IsDependentOn("Push-Artifacts");
        }
Esempio n. 2
0
        public Build()
        {
            Cake.Log.Verbosity = Verbosity.Diagnostic;

            StandardGlobalInfo globalInfo = CreateStandardGlobalInfo()
                                            .AddDotnet()
                                            .SetCIBuildTag();

            Setup(context =>
            {
                context.Log.Information("Executed BEFORE the first task.");
            });

            Teardown(context =>
            {
                context.Log.Information("Executed AFTER the last task.");
            });

            TaskSetup(setupContext =>
            {
                setupContext.Log.Information($"TaskSetup for Task: {setupContext.Task.Name}");
            });

            TaskTeardown(teardownContext =>
            {
                teardownContext.Log.Information($"TaskTeardown for Task: {teardownContext.Task.Name}");
            });

            Task("Check-Repository")
            .Does(() =>
            {
                globalInfo.TerminateIfShouldStop();
            });

            Task("Clean")
            .IsDependentOn("Check-Repository")
            .Does(() =>
            {
                globalInfo.GetDotnetSolution().Clean();
                Cake.CleanDirectories(globalInfo.ReleasesFolder.ToString());
                Cake.DeleteFiles("Tests/**/TestResult*.xml");
            });

            Task("Build")
            .IsDependentOn("Clean")
            .IsDependentOn("Check-Repository")
            .Does(() =>
            {
                globalInfo.GetDotnetSolution().Build();
            });

            Task("Create-NuGet-Packages")
            .WithCriteria(() => globalInfo.IsValid)
            .IsDependentOn("Build")
            .Does(() =>
            {
                globalInfo.GetDotnetSolution().Pack();
            });

            Task("Push-NuGet-Packages")
            .IsDependentOn("Create-NuGet-Packages")
            .WithCriteria(() => globalInfo.IsValid)
            .Does(async() =>
            {
                await globalInfo.PushArtifactsAsync();
            });

            Task("Default").IsDependentOn("Push-NuGet-Packages");
        }