Skip to content

Commit 5e07e5e

Browse files
authored
Merge branch 'master' into add-dockerfile-with-centos
2 parents 1ab4f27 + 9d1aaea commit 5e07e5e

File tree

68 files changed

+1039
-307
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

68 files changed

+1039
-307
lines changed

.travis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
language: csharp
22
sudo: required
33
dist: trusty
4-
dotnet: 2.1.503
4+
dotnet: 2.1.504
55
mono:
66
- latest
77
os:

README.md

Lines changed: 16 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -7,26 +7,25 @@ works out the [semantic version][semver] of the commit being built.
77

88
[![Gitter][gitter-badge]][gitter]
99
[![Build status][appveyor-badge]][appveyor]
10-
[![Build Status][travis-badge]][travis]
1110
[![Build Status][azure-pipeline-badge]][azure-pipeline]
1211
[![codecov][codecov-badge]][codecov]
1312

14-
| | Stable | Pre-release |
15-
| ------------------------------------: | :---------------------------------------: | :---------------------------------------: |
16-
| **Docs** | [![Docs][docs-badge]][docs] | [![Docs][docs-pre-badge]][docs-pre] |
17-
| **GitHub Release** | [![GitHub release][gh-rel-badge]][gh-rel] | - |
18-
| **GitVersion.Portable** | [![Chocolatey][choco-badge]][choco] | [![Chocolatey][choco-pre-badge]][choco] |
19-
| **GitVersionCore** | [![NuGet][gvc-badge]][gvc] | [![NuGet][gvc-pre-badge]][gvc] |
20-
| **GitVersionTask** | [![NuGet][gvt-badge]][gvt] | [![NuGet][gvt-pre-badge]][gvt] |
21-
| **GitVersion.CommandLine** | [![NuGet][gvcl-badge]][gvcl] | [![NuGet][gvcl-pre-badge]][gvcl] |
22-
| **GitVersion.CommandLine.DotNetCore** | [![NuGet][gvcd-badge]][gvcd] | [![NuGet][gvcd-pre-badge]][gvcd] |
23-
| **GitVersion.Tool** | [![NuGet][gvgt-badge]][gvgt] | [![NuGet][gvgt-pre-badge]][gvgt] |
24-
| **Gem** | [![Gem][gem-badge]][gem] | - |
25-
| **Homebrew** | [![homebrew][brew-badge]][brew] | - |
26-
| **Docker DotnetCore** | [Dotnetcore][dockerhub-dotnetcore] | - |
27-
| **Docker FullFX** | [FullFX][dockerhub-fullfx] | - |
13+
| | Stable | Pre-release |
14+
| ------------------------------------: | :-------------------------------------------: | :---------------------------------------: |
15+
| **Docs** | [![Docs][docs-badge]][docs] | [![Docs][docs-pre-badge]][docs-pre] |
16+
| **GitHub Release** | [![GitHub release][gh-rel-badge]][gh-rel] | - |
17+
| **GitVersion.Portable** | [![Chocolatey][choco-badge]][choco] | [![Chocolatey][choco-pre-badge]][choco] |
18+
| **GitVersionCore** | [![NuGet][gvc-badge]][gvc] | [![NuGet][gvc-pre-badge]][gvc] |
19+
| **GitVersionTask** | [![NuGet][gvt-badge]][gvt] | [![NuGet][gvt-pre-badge]][gvt] |
20+
| **GitVersion.CommandLine** | [![NuGet][gvcl-badge]][gvcl] | [![NuGet][gvcl-pre-badge]][gvcl] |
21+
| **GitVersion.CommandLine.DotNetCore** | [![NuGet][gvcd-badge]][gvcd] | [![NuGet][gvcd-pre-badge]][gvcd] |
22+
| **GitVersion.Tool** | [![NuGet][gvgt-badge]][gvgt] | [![NuGet][gvgt-pre-badge]][gvgt] |
23+
| **Gem** | [![Gem][gem-badge]][gem] | - |
24+
| **Homebrew** | [![homebrew][brew-badge]][brew] | - |
25+
| **Docker** | [![Docker Pulls][dockerhub-badge]][dockerhub] | -
2826

2927
## Compatibility
28+
3029
GitVersion works Windows, Linux, and Mac.
3130

3231
Tip: If you get `System.TypeInitializationException: The type initializer for
@@ -108,5 +107,5 @@ from The Noun Project
108107
[faq]: http://gitversion.readthedocs.org/en/latest/faq/
109108
[who]: http://gitversion.readthedocs.org/en/latest/who/
110109
[gv-in-action]: https://raw.github.com/GitTools/GitVersion/master/docs/img/README.png
111-
[dockerhub-fullfx]: https://hub.docker.com/r/gittools/gitversion-fullfx/
112-
[dockerhub-dotnetcore]: https://hub.docker.com/r/gittools/gitversion-dotnetcore/
110+
[dockerhub]: https://hub.docker.com/r/gittools/gitversion/
111+
[dockerhub-badge]: https://img.shields.io/docker/pulls/gittools/gitversion.svg

azure-pipelines.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
variables:
2-
DOTNET_SDK_VERSION: '2.1.503'
2+
DOTNET_SDK_VERSION: '2.1.504'
33
DOTNET_PACKAGE_TYPE: 'sdk'
44
RUBY_VERSION: '2.5'
55

build.cake

Lines changed: 60 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -268,33 +268,42 @@ Task("Pack-Tfs")
268268
.Does<BuildParameters>((parameters) =>
269269
{
270270
var workDir = "./src/GitVersionTfsTask";
271+
var idSuffix = parameters.IsStableRelease() ? "" : "-preview";
272+
var titleSuffix = parameters.IsStableRelease() ? "" : " (Preview)";
273+
var visibility = parameters.IsStableRelease() ? "Public" : "Preview";
274+
var taskIdFullFx = parameters.IsStableRelease() ? "e5983830-3f75-11e5-82ed-81492570a08e" : "25b46667-d5a9-4665-97f7-e23de366ecdf";
275+
var taskIdCoreFx = parameters.IsStableRelease() ? "ce526674-dbd1-4023-ad6d-2a6b9742ee31" : "edf331e1-d1c0-413a-9735-fce0b22a46f5";
276+
277+
ReplaceTextInFile(new FilePath(workDir + "/vss-extension.mono.json"), "$idSuffix$", idSuffix);
278+
ReplaceTextInFile(new FilePath(workDir + "/vss-extension.netcore.json"), "$idSuffix$", idSuffix);
279+
ReplaceTextInFile(new FilePath(workDir + "/vss-extension.mono.json"), "$titleSuffix$", titleSuffix);
280+
ReplaceTextInFile(new FilePath(workDir + "/vss-extension.netcore.json"), "$titleSuffix$", titleSuffix);
281+
ReplaceTextInFile(new FilePath(workDir + "/vss-extension.mono.json"), "$visibility$", visibility);
282+
ReplaceTextInFile(new FilePath(workDir + "/vss-extension.netcore.json"), "$visibility$", visibility);
271283

272284
// update version number
273-
ReplaceTextInFile(new FilePath(workDir + "/vss-extension.mono.json"), "$version$", parameters.Version.SemVersion);
274-
ReplaceTextInFile(new FilePath(workDir + "/vss-extension.netcore.json"), "$version$", parameters.Version.SemVersion);
275-
UpdateTaskVersion(new FilePath(workDir + "/GitVersionTask/task.json"), parameters.Version.GitVersion);
276-
UpdateTaskVersion(new FilePath(workDir + "/GitVersionNetCoreTask/task.json"), parameters.Version.GitVersion);
285+
ReplaceTextInFile(new FilePath(workDir + "/vss-extension.mono.json"), "$version$", parameters.Version.TfxVersion);
286+
ReplaceTextInFile(new FilePath(workDir + "/vss-extension.netcore.json"), "$version$", parameters.Version.TfxVersion);
287+
UpdateTaskVersion(new FilePath(workDir + "/GitVersionTask/task.json"), taskIdFullFx, parameters.Version.GitVersion);
288+
UpdateTaskVersion(new FilePath(workDir + "/GitVersionNetCoreTask/task.json"), taskIdCoreFx, parameters.Version.GitVersion);
277289

278290
// build and pack
279291
NpmSet("progress", "false");
280292
NpmInstall(new NpmInstallSettings { WorkingDirectory = workDir, LogLevel = NpmLogLevel.Silent });
281-
NpmRunScript(new NpmRunScriptSettings { WorkingDirectory = workDir, ScriptName = "build", LogLevel = NpmLogLevel.Silent });
293+
NpmRunScript(new NpmRunScriptSettings { WorkingDirectory = workDir, ScriptName = "build", LogLevel = NpmLogLevel.Silent });
282294

283-
TfxExtensionCreate(new TfxExtensionCreateSettings
295+
var settings = new TfxExtensionCreateSettings
284296
{
285297
ToolPath = workDir + "/node_modules/.bin/" + (parameters.IsRunningOnWindows ? "tfx.cmd" : "tfx"),
286298
WorkingDirectory = workDir,
287-
ManifestGlobs = new List<string>(){ "vss-extension.mono.json" },
288299
OutputPath = parameters.Paths.Directories.BuildArtifact
289-
});
300+
};
290301

291-
TfxExtensionCreate(new TfxExtensionCreateSettings
292-
{
293-
ToolPath = workDir + "/node_modules/.bin/" + (parameters.IsRunningOnWindows ? "tfx.cmd" : "tfx"),
294-
WorkingDirectory = workDir,
295-
ManifestGlobs = new List<string>(){ "vss-extension.netcore.json" },
296-
OutputPath = parameters.Paths.Directories.BuildArtifact
297-
});
302+
settings.ManifestGlobs = new List<string>(){ "vss-extension.mono.json" };
303+
TfxExtensionCreate(settings);
304+
305+
settings.ManifestGlobs = new List<string>(){ "vss-extension.netcore.json" };
306+
TfxExtensionCreate(settings);
298307
});
299308

300309
Task("Pack-Gem")
@@ -403,14 +412,14 @@ Task("Docker-Build")
403412
{
404413
if (parameters.IsRunningOnWindows)
405414
{
406-
DockerBuild("windows", "dotnetcore", parameters);
407-
DockerBuild("windows", "fullfx", parameters);
415+
DockerBuild("windows", "nano", "netcoreapp2.1", parameters);
416+
DockerBuild("windows", "windowsservercore", "net472", parameters);
408417
}
409418
else if (parameters.IsRunningOnLinux)
410419
{
411-
DockerBuild("linux", "dotnetcore", parameters);
412-
DockerBuild("linux", "fullfx", parameters);
413-
DockerBuild("linux", "centos", parameters);
420+
DockerBuild("linux", "debian", "netcoreapp2.1", parameters);
421+
DockerBuild("linux", "debian", "net472", parameters);
422+
DockerBuild("linux", "centos", "netcoreapp2.1", parameters);
414423
}
415424
});
416425

@@ -443,9 +452,9 @@ Task("Pack")
443452
#region Publish
444453

445454
Task("Release-Notes")
446-
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnWindows, "Release notes are generated only on Windows agents.")
447-
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnAppVeyor, "Release notes are generated only on release agents.")
448-
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsStableRelease(), "Release notes are generated only for stable releases.")
455+
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnWindows, "Release notes are generated only on Windows agents.")
456+
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnAzurePipeline, "Release notes are generated only on AzurePipeline.")
457+
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsStableRelease(), "Release notes are generated only for stable releases.")
449458
.IsDependentOn("Clean")
450459
.Does<BuildParameters>((parameters) =>
451460
{
@@ -459,8 +468,8 @@ Task("Release-Notes")
459468
});
460469

461470
Task("Publish-Coverage")
462-
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnWindows, "Publish-Coverage works only on Windows agents.")
463-
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnAppVeyor, "Publish-Coverage works only on AppVeyor.")
471+
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnWindows, "Publish-Coverage works only on Windows agents.")
472+
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnAzurePipeline, "Publish-Coverage works only on AzurePipeline.")
464473
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsStableRelease() || parameters.IsPreRelease(), "Publish-Coverage works only for releases.")
465474
.IsDependentOn("Test")
466475
.Does<BuildParameters>((parameters) =>
@@ -482,7 +491,7 @@ Task("Publish-Coverage")
482491
});
483492

484493
Task("Publish-AppVeyor")
485-
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnWindows, "Publish-AppVeyor works only on Windows agents.")
494+
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnWindows, "Publish-AppVeyor works only on Windows agents.")
486495
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnAppVeyor, "Publish-AppVeyor works only on AppVeyor.")
487496
.IsDependentOn("Pack")
488497
.IsDependentOn("Release-Notes")
@@ -510,9 +519,9 @@ Task("Publish-AppVeyor")
510519
});
511520

512521
Task("Publish-AzurePipeline")
513-
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnWindows, "Publish-AzurePipeline works only on Windows agents.")
522+
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnWindows, "Publish-AzurePipeline works only on Windows agents.")
514523
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnAzurePipeline, "Publish-AzurePipeline works only on AzurePipeline.")
515-
.WithCriteria<BuildParameters>((context, parameters) => !parameters.IsPullRequest, "Publish-AzurePipeline works only for non-PR commits.")
524+
.WithCriteria<BuildParameters>((context, parameters) => !parameters.IsPullRequest, "Publish-AzurePipeline works only for non-PR commits.")
516525
.IsDependentOn("Pack")
517526
.IsDependentOn("Release-Notes")
518527
.Does<BuildParameters>((parameters) =>
@@ -542,10 +551,10 @@ Task("Publish-AzurePipeline")
542551
});
543552

544553
Task("Publish-Tfs")
545-
.WithCriteria<BuildParameters>((context, parameters) => parameters.EnabledPublishTfs, "Publish-Tfs was disabled.")
546-
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnWindows, "Publish-Tfs works only on Windows agents.")
547-
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnAppVeyor, "Publish-Tfs works only on AppVeyor.")
548-
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsStableRelease(), "Publish-Tfs works only for releases.")
554+
.WithCriteria<BuildParameters>((context, parameters) => parameters.EnabledPublishTfs, "Publish-Tfs was disabled.")
555+
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnWindows, "Publish-Tfs works only on Windows agents.")
556+
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnAzurePipeline, "Publish-Tfs works only on AzurePipeline.")
557+
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsStableRelease() || parameters.IsPreRelease(), "Publish-Tfs works only for releases.")
549558
.IsDependentOn("Pack-Tfs")
550559
.Does<BuildParameters>((parameters) =>
551560
{
@@ -555,20 +564,15 @@ Task("Publish-Tfs")
555564
}
556565

557566
var workDir = "./src/GitVersionTfsTask";
558-
TfxExtensionPublish(parameters.Paths.Files.VsixOutputFilePath, new TfxExtensionPublishSettings
567+
var settings = new TfxExtensionPublishSettings
559568
{
560569
ToolPath = workDir + "/node_modules/.bin/" + (parameters.IsRunningOnWindows ? "tfx.cmd" : "tfx"),
561570
AuthType = TfxAuthType.Pat,
562571
Token = token
563-
});
572+
};
564573

565-
var netCoreWorkDir = "./src/GitVersionTfsTask.NetCore";
566-
TfxExtensionPublish(parameters.Paths.Files.VsixNetCoreOutputFilePath, new TfxExtensionPublishSettings
567-
{
568-
ToolPath = netCoreWorkDir + "/node_modules/.bin/" + (parameters.IsRunningOnWindows ? "tfx.cmd" : "tfx"),
569-
AuthType = TfxAuthType.Pat,
570-
Token = token
571-
});
574+
TfxExtensionPublish(parameters.Paths.Files.VsixOutputFilePath, settings);
575+
TfxExtensionPublish(parameters.Paths.Files.VsixNetCoreOutputFilePath, settings);
572576
})
573577
.OnError(exception =>
574578
{
@@ -578,9 +582,9 @@ Task("Publish-Tfs")
578582
});
579583

580584
Task("Publish-Gem")
581-
.WithCriteria<BuildParameters>((context, parameters) => parameters.EnabledPublishGem, "Publish-Gem was disabled.")
582-
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnWindows, "Publish-Gem works only on Windows agents.")
583-
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnAppVeyor, "Publish-Gem works only on AppVeyor.")
585+
.WithCriteria<BuildParameters>((context, parameters) => parameters.EnabledPublishGem, "Publish-Gem was disabled.")
586+
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnWindows, "Publish-Gem works only on Windows agents.")
587+
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnAzurePipeline, "Publish-Gem works only on AzurePipeline.")
584588
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsStableRelease() || parameters.IsPreRelease(), "Publish-Gem works only for releases.")
585589
.IsDependentOn("Pack-Gem")
586590
.Does<BuildParameters>((parameters) =>
@@ -606,9 +610,9 @@ Task("Publish-Gem")
606610
});
607611

608612
Task("Publish-DockerHub")
609-
.WithCriteria<BuildParameters>((context, parameters) => parameters.EnabledPublishDocker, "Publish-DockerHub was disabled.")
610-
.WithCriteria<BuildParameters>((context, parameters) => !parameters.IsRunningOnMacOS, "Publish-DockerHub works only on Windows and Linux agents.")
611-
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnAppVeyor || (parameters.IsRunningOnTravis && !parameters.IsRunningOnMacOS), "Publish-DockerHub works only on AppVeyor or Travis.")
613+
.WithCriteria<BuildParameters>((context, parameters) => parameters.EnabledPublishDocker, "Publish-DockerHub was disabled.")
614+
.WithCriteria<BuildParameters>((context, parameters) => !parameters.IsRunningOnMacOS, "Publish-DockerHub works only on Windows and Linux agents.")
615+
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnAzurePipeline, "Publish-DockerHub works only on AzurePipeline.")
612616
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsStableRelease() || parameters.IsPreRelease(), "Publish-DockerHub works only for releases.")
613617
.IsDependentOn("Docker-Build")
614618
.Does<BuildParameters>((parameters) =>
@@ -627,14 +631,14 @@ Task("Publish-DockerHub")
627631

628632
if (parameters.IsRunningOnWindows)
629633
{
630-
DockerPush("windows", "dotnetcore", parameters);
631-
DockerPush("windows", "fullfx", parameters);
634+
DockerPush("windows", "nano", "netcoreapp2.1", parameters);
635+
DockerPush("windows", "windowsservercore", "net472", parameters);
632636
}
633637
else if (parameters.IsRunningOnLinux)
634638
{
635-
DockerPush("linux", "dotnetcore", parameters);
636-
DockerPush("linux", "fullfx", parameters);
637-
DockerPush("linux", "centos", parameters);
639+
DockerPush("linux", "debian", "netcoreapp2.1", parameters);
640+
DockerPush("linux", "debian", "net472", parameters);
641+
DockerPush("linux", "centos", "netcoreapp2.1", parameters);
638642
}
639643

640644
DockerLogout();
@@ -647,9 +651,9 @@ Task("Publish-DockerHub")
647651
});
648652

649653
Task("Publish-NuGet")
650-
.WithCriteria<BuildParameters>((context, parameters) => parameters.EnabledPublishNuget, "Publish-NuGet was disabled.")
651-
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnWindows, "Publish-NuGet works only on Windows agents.")
652-
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnAppVeyor, "Publish-NuGet works only on AppVeyor.")
654+
.WithCriteria<BuildParameters>((context, parameters) => parameters.EnabledPublishNuget, "Publish-NuGet was disabled.")
655+
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnWindows, "Publish-NuGet works only on Windows agents.")
656+
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnAzurePipeline, "Publish-NuGet works only on AzurePipeline.")
653657
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsStableRelease() || parameters.IsPreRelease(), "Publish-NuGet works only for releases.")
654658
.IsDependentOn("Pack-NuGet")
655659
.Does<BuildParameters>((parameters) =>
@@ -687,7 +691,7 @@ Task("Publish-NuGet")
687691
Task("Publish-Chocolatey")
688692
.WithCriteria<BuildParameters>((context, parameters) => parameters.EnabledPublishChocolatey, "Publish-Chocolatey was disabled.")
689693
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnWindows, "Publish-Chocolatey works only on Windows agents.")
690-
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnAppVeyor, "Publish-Chocolatey works only on AppVeyor.")
694+
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsRunningOnAzurePipeline, "Publish-Chocolatey works only on AzurePipeline.")
691695
.WithCriteria<BuildParameters>((context, parameters) => parameters.IsStableRelease() || parameters.IsPreRelease(), "Publish-Chocolatey works only for releases.")
692696
.IsDependentOn("Pack-Chocolatey")
693697
.Does<BuildParameters>((parameters) =>

build.config

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
#!/usr/bin/env bash
22
CAKE_VERSION=0.32.1
3-
DOTNET_VERSION=2.1.503
3+
DOTNET_VERSION=2.1.504

0 commit comments

Comments
 (0)