Skip to content

Commit

Permalink
Add version number to Directory.Build.props, change yaml to build plu…
Browse files Browse the repository at this point in the history
…gins on azure devops
  • Loading branch information
lconstan committed Jan 24, 2020
1 parent 5730b74 commit 84c28d8
Show file tree
Hide file tree
Showing 5 changed files with 74 additions and 4 deletions.
2 changes: 1 addition & 1 deletion Abc.MoqComplete/Abc.MoqComplete/Resources/plugin.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<idea-version since-build="193.5233" until-build="193.*" />
<id>Abc.MoqComplete.Rider</id>
<name>MoqComplete</name>
<version>1.2.10</version>
<version>1.2.11</version>
<vendor url="https://github.com/Abc-Arbitrage/Abc.MoqComplete">ABC Arbitrage Asset Management</vendor>
<description><![CDATA[
<p>Code completion for Moq: Provide completion for It.IsAny, Callback, suggest mock in constructor</p>
Expand Down
48 changes: 48 additions & 0 deletions Abc.MoqComplete/Deployment/build_rider_plugin.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
$artifactDirectory = $args[0]
$PluginId = "Abc.MoqComplete"
$BuildPropsFilePath = "..\Directory.Build.props"

# Get the version number
if (Test-Path $BuildPropsFilePath) {
$PluginXml = [xml] (Get-Content $BuildPropsFilePath)
$Version = $PluginXml.SelectSingleNode(".//Project/PropertyGroup/Version").innerText
}

Write-Host "Generating Rider package"
Write-Host "Staging directory is $artifactDirectory"
Write-Host "Version is $Version"

# Fix rider package
Add-Type -AssemblyName System.Text.Encoding
Add-Type -AssemblyName System.IO.Compression.FileSystem

function Unzip
{
param([string]$zipfile, [string]$outpath)
[System.IO.Compression.ZipFile]::ExtractToDirectory($zipfile, $outpath)
}

class FixedEncoder : System.Text.UTF8Encoding {
FixedEncoder() : base($true) { }

[byte[]] GetBytes([string] $s)
{
$s = $s.Replace("\", "/");
return ([System.Text.UTF8Encoding]$this).GetBytes($s);
}
}

function Zip
{
param([string]$zipfile, [string]$outpath)
[System.IO.Compression.ZipFile]::CreateFromDirectory($outpath, $zipfile, [System.IO.Compression.CompressionLevel]::Optimal, $True, [FixedEncoder]::new())
}

Unzip "$artifactDirectory\$PluginId.Rider.$Version.nupkg" "$artifactDirectory\$PluginId.Rider"
rm "$artifactDirectory\$PluginId.Rider\_rels" -Force -Recurse
rm "$artifactDirectory\$PluginId.Rider\package" -Force -Recurse
rm "$artifactDirectory\$PluginId.Rider\*.xml"
rm "$artifactDirectory\$PluginId.Rider\*.nuspec"
rm "$artifactDirectory\$PluginId.Rider.$Version.nupkg"
Zip "$artifactDirectory\$PluginId.Rider.$Version.zip" "$artifactDirectory\$PluginId.Rider"
rm "$artifactDirectory\$PluginId.Rider" -Force -Recurse
4 changes: 4 additions & 0 deletions Abc.MoqComplete/Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -21,4 +21,8 @@
<WaveVersion>$(WaveVersionBase).0.0$(SdkVersion.Substring(8))</WaveVersion>
</PropertyGroup>

<PropertyGroup>
<Version>1.2.11</Version>
</PropertyGroup>

</Project>
5 changes: 5 additions & 0 deletions Abc.MoqComplete/MoqComplete.sln
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,11 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Abc.MoqComplete.Tests", "Ab
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Abc.MoqComplete.Rider", "Abc.MoqComplete\Abc.MoqComplete.Rider.csproj", "{98492790-1637-4090-AEEA-D2883DE35757}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "@ Solution Items", "@ Solution Items", "{EE7F9EA7-3EBB-4970-8714-915825BBFABB}"
ProjectSection(SolutionItems) = preProject
Directory.Build.props = Directory.Build.props
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Expand Down
19 changes: 16 additions & 3 deletions azure-pipelines.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,20 @@ steps:
testAssemblyVer2: '**/bin/**/Abc.MoqComplete.Tests.dll'

- task: DotNetCoreCLI@2
displayName: Pack
inputs:
command: test
projects: '**/*Tests/*.csproj'
arguments: '--configuration $(buildConfiguration) --collect "Code coverage"'
command: pack
configuration: Release
packDirectory: '$(Build.ArtifactStagingDirectory)'
verbosityPack: Minimal

- task: PowerShell@2
inputs:
filePath: 'build_rider_plugin.ps1'
arguments: '$(Build.ArtifactStagingDirectory)'

- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: '$(Build.ArtifactStagingDirectory)'
ArtifactName: 'BuildResult'
publishLocation: 'Container'

0 comments on commit 84c28d8

Please sign in to comment.