1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/Longbow-Cronos

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
build.cake 2.2 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Andrey Dorokhov Отправлено 07.06.2017 16:08 76dc077
#tool "nuget:?package=xunit.runner.console"
#tool "nuget:?package=OpenCover"
var configuration = Argument("configuration", "Release");
var version = Argument<string>("buildVersion", null);
var target = Argument("target", "Default");
Task("Default").IsDependentOn("Pack");
Task("Clean").Does(()=>
{
CleanDirectory("./build");
StartProcess("dotnet", "clean -c:" + configuration);
});
Task("Restore").Does(()=>
{
DotNetCoreRestore();
});
Task("Build")
.IsDependentOn("UseAppVeyorVersion")
.IsDependentOn("Clean")
.IsDependentOn("Restore")
.Does(()=>
{
var buildSettings = new DotNetCoreBuildSettings { Configuration = configuration };
if(!string.IsNullOrEmpty(version)) buildSettings.ArgumentCustomization = args => args.Append("/p:Version=" + version);
DotNetCoreBuild("src/Cronos/Cronos.csproj", buildSettings);
});
Task("Test").IsDependentOn("Build").Does(() =>
{
DotNetCoreTest("./tests/Cronos.Tests/Cronos.Tests.csproj", new DotNetCoreTestSettings
{
Configuration = configuration,
ArgumentCustomization = args => args.Append("/p:BuildProjectReferences=false")
});
});
Task("TestCoverage").IsDependentOn("Test").Does(() =>
{
OpenCover(
tool => { tool.XUnit2("tests/Cronos.Tests/bin/" + configuration + "/**/Cronos.Tests.dll", new XUnit2Settings { ShadowCopy = false }); },
new FilePath("coverage.xml"),
new OpenCoverSettings()
.WithFilter("+[Cronos]*")
.WithFilter("-[Cronos.Tests]*"));
});
Task("Pack").IsDependentOn("TestCoverage").Does(()=>
{
CreateDirectory("build");
CopyFiles(GetFiles("./src/Cronos/bin/**/*.nupkg"), "build");
Zip("./src/Cronos/bin/" + configuration, "build/Cronos-" + version +".zip");
});
Task("UseAppVeyorVersion").WithCriteria(AppVeyor.IsRunningOnAppVeyor).Does(() =>
{
version = AppVeyor.Environment.Build.Version;
if (AppVeyor.Environment.Repository.Tag.IsTag)
{
var tagName = AppVeyor.Environment.Repository.Tag.Name;
if(tagName.StartsWith("v"))
{
version = tagName.Substring(1);
}
AppVeyor.UpdateBuildVersion(version);
}
});
RunTarget(target);

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/Longbow-Cronos.git
git@api.gitlife.ru:oschina-mirror/Longbow-Cronos.git
oschina-mirror
Longbow-Cronos
Longbow-Cronos
master