public BuildResult Build(Uri uriForDownload, string projectName, ProjectLanguageType type, out Uri artifactArchiveUri) { Console.WriteLine("Downloading..."); _azureService.Download(uriForDownload, projectName).GetAwaiter().GetResult(); Console.WriteLine("UnZiping..."); _fileArchiver.UnZip(projectName); Console.WriteLine("Building..."); var buildResult = _builder.Build(projectName, type); Console.ForegroundColor = ConsoleColor.Cyan; Console.WriteLine("Build result:"); Console.WriteLine(buildResult.Message); Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("Creating archive..."); _fileArchiver.CreateArchive(projectName); Console.WriteLine("Uploading artifacts to blob..."); artifactArchiveUri = _azureService.Upload(projectName).GetAwaiter().GetResult(); Console.WriteLine("Removing temporary files..."); _fileArchiver.RemoveTemporaryFiles(projectName); Console.ForegroundColor = ConsoleColor.Green; Console.WriteLine($"Message was handled! Is build succeeded: {buildResult.IsSuccess}"); Console.ForegroundColor = ConsoleColor.White; return(buildResult); }