Update branding to 3.0.0-alpha1

This commit is contained in:
Nate McMaster 2018-06-28 17:01:31 -07:00
parent 7fd08faa67
commit 0c5f0dd923
No known key found for this signature in database
GPG Key ID: A778D9601BD78810
2 changed files with 113 additions and 6 deletions

108
scripts/PatchVersionPrefix.ps1 Executable file
View File

@ -0,0 +1,108 @@
#!/usr/bin/env pwsh -c
<#
.SYNOPSIS
Updates the version.props file in repos to a newer patch version
.PARAMETER Repos
A list of the repositories that should be patched
.PARAMETER Mode
Version bump options: Major, Minor, Patch
.PARAMETER VersionSuffix
The version suffix to use
#>
[cmdletbinding(SupportsShouldProcess = $true)]
param(
[Parameter(Mandatory = $true)]
[string[]]$Repos,
[Parameter(Mandatory = $true)]
[ValidateSet('Major', 'Minor', 'Patch')]
[string]$Mode,
[string]$VersionSuffix = $null,
[switch]$NoCommit
)
$ErrorActionPreference = 'Stop'
Import-Module -Scope Local -Force "$PSScriptRoot/common.psm1"
function SetVersionSuffix([System.Xml.XmlNode]$node) {
if (-not $node) {
return
}
$node.InnerText = $VersionSuffix
return "Setting $($node.Name) to $VersionSuffix"
}
function BumpVersion([System.Xml.XmlNode]$node) {
if (-not $node) {
return
}
[version] $version = $node.InnerText
$experimental = $version.Major -eq 0
switch ($mode) {
{ ($_ -ne 'Patch') -and $experimental} {
$node.InnerText = "{0}.{1}.{2}" -f $version.Major, ($version.Minor + 1), 0
}
{ ($_ -eq 'Major') -and -not $experimental } {
$node.InnerText = "{0}.{1}.{2}" -f ($version.Major + 1), 0, 0
}
{ ($_ -eq 'Minor') -and -not $experimental } {
$node.InnerText = "{0}.{1}.{2}" -f $version.Major, ($version.Minor + 1), 0
}
'Patch' {
$node.InnerText = "{0}.{1}.{2}" -f $version.Major, $version.Minor, ($version.Build + 1)
}
}
return "Bumping version from $version to $($node.InnerText)"
}
foreach ($repo in $Repos) {
$repoPath = "$PSScriptRoot/../modules/$repo"
Push-Location $repoPath
try
{
$path = "$repoPath/version.props"
Write-Host -ForegroundColor Magenta "Updating $repo"
if (-not (Test-Path $path)) {
Write-Warning "$path does not exist"
continue
}
$path = Resolve-Path $path
Write-Verbose "$path"
[xml] $xml = LoadXml $path
$suffix = $xml.SelectSingleNode('/Project/PropertyGroup/VersionSuffix')
if (-not $suffix) {
write-error "$path does not have VersionSuffix"
}
if ($VersionSuffix) {
SetVersionSuffix $xml.SelectSingleNode('/Project/PropertyGroup/VersionSuffix') | write-host
SetVersionSuffix $xml.SelectSingleNode('/Project/PropertyGroup/ExperimentalProjectVersionSuffix') | write-host
SetVersionSuffix $xml.SelectSingleNode('/Project/PropertyGroup/ExperimentalVersionSuffix') | write-host
}
$versionPrefix = $xml.SelectSingleNode('/Project/PropertyGroup/VersionPrefix')
$epxVersionPrefix = $xml.SelectSingleNode('/Project/PropertyGroup/ExperimentalProjectVersionPrefix')
$exVersionPrefix = $xml.SelectSingleNode('/Project/PropertyGroup/ExperimentalVersionPrefix')
BumpVersion $epxVersionPrefix | write-host
BumpVersion $exVersionPrefix | write-host
$message = BumpVersion $versionPrefix
Write-Host $message
if ($PSCmdlet.ShouldProcess("Update $path")) {
SaveXml $xml $path
if (-not $NoCommit) {
Invoke-Block { & git add $path }
Invoke-Block { & git commit -m $message }
}
}
}
finally
{
Pop-Location
}
}

View File

@ -1,16 +1,16 @@
<Project>
<PropertyGroup>
<AspNetCoreMajorVersion>2</AspNetCoreMajorVersion>
<AspNetCoreMinorVersion>2</AspNetCoreMinorVersion>
<AspNetCoreMajorVersion>3</AspNetCoreMajorVersion>
<AspNetCoreMinorVersion>0</AspNetCoreMinorVersion>
<AspNetCorePatchVersion>0</AspNetCorePatchVersion>
<VersionPrefix>$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion).$(AspNetCorePatchVersion)</VersionPrefix>
<PrereleaseVersionLabel>preview1</PrereleaseVersionLabel>
<PrereleaseVersionLabel>alpha1</PrereleaseVersionLabel>
<BuildNumber Condition="'$(BuildNumber)' == ''">t000</BuildNumber>
<!-- The 'human friendly' version to display in installers. In pre-release builds, this might be "2.0.7 Preview 2" -->
<PackageBrandingVersion>$(VersionPrefix) Preview 1</PackageBrandingVersion>
<PackageBrandingVersion>$(VersionPrefix) Alpha 1</PackageBrandingVersion>
<ExperimentalVersionPrefix>0.2.0</ExperimentalVersionPrefix>
<ExperimentalVersionPrefix>0.3.0</ExperimentalVersionPrefix>
<ExperimentalVersionSuffix>alpha1</ExperimentalVersionSuffix>
<PackageVersionSuffix Condition=" '$(IsFinalBuild)' != 'true' AND '$(PrereleaseVersionLabel)' != '' ">$(PrereleaseVersionLabel)</PackageVersionSuffix>
@ -31,7 +31,6 @@
<ExperimentalPackageVersion Condition=" '$(IsFinalBuild)' == 'true' AND '$(ExperimentalVersionSuffix)' != 'rtm' ">$(ExperimentalVersionPrefix)-$(ExperimentalVersionSuffix)-final</ExperimentalPackageVersion>
<ExperimentalVersionSuffix Condition=" '$(ExperimentalVersionSuffix)' != '' AND '$(BuildNumber)' != '' ">$(ExperimentalVersionSuffix)-$(BuildNumber)</ExperimentalVersionSuffix>
<!-- Even though we build from 'dev', this is set to 'master' to align with the dotnet-CLI channel name for their 'dev' branch. -->
<SharedFxCliBlobChannel>master</SharedFxCliBlobChannel>
</PropertyGroup>