Skip to content

Commit 95ca223

Browse files
committed
build scripts that build the nuget package
1 parent 1a35465 commit 95ca223

File tree

8 files changed

+402
-39
lines changed

8 files changed

+402
-39
lines changed
660 KB
Binary file not shown.
Lines changed: 158 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,158 @@
1+
<?xml version="1.0" encoding="utf-8" ?>
2+
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<!-- $Id$ -->
4+
5+
<PropertyGroup>
6+
<MSBuildCommunityTasksPath Condition="'$(MSBuildCommunityTasksPath)' == ''">$(MSBuildThisFileDirectory)</MSBuildCommunityTasksPath>
7+
<MSBuildCommunityTasksLib>$([MSBUILD]::Unescape($(MSBuildCommunityTasksPath)\MSBuild.Community.Tasks.dll))</MSBuildCommunityTasksLib>
8+
</PropertyGroup>
9+
10+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.AspNet.InstallAspNet" />
11+
12+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.AssemblyInfo" />
13+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Attrib" />
14+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Beep" />
15+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.DeleteTree" />
16+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.EmbedNativeResource" />
17+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SqlExecute" />
18+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.FileUpdate" />
19+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.FtpUpload" />
20+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.FxCop" />
21+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.GacUtil" />
22+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.GetSolutionProjects" />
23+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.ILMerge" />
24+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Mail" />
25+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Merge" />
26+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.MV" />
27+
28+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Ftp.FtpCreateRemoteDirectory" />
29+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Ftp.FtpDirectoryExists" />
30+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Ftp.FtpUploadDirectoryContent" />
31+
32+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Math.Add" />
33+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Math.Divide" />
34+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Math.Modulo" />
35+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Math.Multiple" />
36+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Math.Subtract" />
37+
38+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.NDoc" />
39+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.NUnit" />
40+
41+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Oracle.AddTnsName" />
42+
43+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Prompt" />
44+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.RegistryRead" />
45+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.RegistryWrite" />
46+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.RegexMatch" />
47+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.RegexReplace" />
48+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.RegexCompiler" />
49+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.RoboCopy" />
50+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Script" />
51+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.ServiceController" />
52+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.ServiceQuery" />
53+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Sleep" />
54+
55+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.IIS.AppPoolController" />
56+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.IIS.AppPoolCreate" />
57+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.IIS.AppPoolDelete" />
58+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.IIS.WebDirectoryCreate" />
59+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.IIS.WebDirectoryDelete" />
60+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.IIS.WebDirectoryScriptMap" />
61+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.IIS.WebDirectorySetting" />
62+
63+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Install.InstallAssembly" />
64+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Install.UninstallAssembly" />
65+
66+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Schema.TaskSchema" />
67+
68+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Sound" />
69+
70+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SourceSafe.VssAdd" />
71+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SourceSafe.VssCheckin" />
72+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SourceSafe.VssCheckout" />
73+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SourceSafe.VssClean" />
74+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SourceSafe.VssDiff" />
75+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SourceSafe.VssGet" />
76+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SourceSafe.VssHistory" />
77+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SourceSafe.VssLabel" />
78+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SourceSafe.VssUndoCheckout" />
79+
80+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SourceServer.SrcTool" />
81+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SourceServer.PdbStr" />
82+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SourceServer.SvnSourceIndex" />
83+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SourceServer.TfsSourceIndex" />
84+
85+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SqlServer.ExecuteDDL" />
86+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SqlServer.SqlPubWiz" />
87+
88+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Subversion.SvnCheckout" />
89+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Subversion.SvnClient" />
90+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Subversion.SvnCopy" />
91+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Subversion.SvnCommit" />
92+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Subversion.SvnExport" />
93+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Subversion.SvnInfo" />
94+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Subversion.SvnUpdate" />
95+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Subversion.SvnVersion" />
96+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Subversion.SvnStatus" />
97+
98+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Tfs.TfsClient" />
99+
100+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.TemplateFile" />
101+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Time" />
102+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Unzip" />
103+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Version" />
104+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.WebDownload" />
105+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.WebUpload" />
106+
107+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Xml.XmlMassUpdate" />
108+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Xml.XmlQuery" />
109+
110+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.XmlRead" />
111+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.XmlUpdate" />
112+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Xslt" />
113+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Zip" />
114+
115+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.JavaScript.JSCompress" />
116+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.JavaScript.CssCompress" />
117+
118+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.User" />
119+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Computer" />
120+
121+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Sandcastle.BuildAssembler" />
122+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Sandcastle.ChmBuilder" />
123+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Sandcastle.DBCSFix" />
124+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Sandcastle.MRefBuilder" />
125+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Sandcastle.Sandcastle" />
126+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Sandcastle.XslTransform" />
127+
128+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.HtmlHelp.ChmCompiler" />
129+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.HtmlHelp.HxCompiler" />
130+
131+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.SymbolServer.SymStore" />
132+
133+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Net.HttpRequest" />
134+
135+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.NuGet.NuGetInstall" />
136+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.NuGet.NuGetPack" />
137+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.NuGet.NuGetPush" />
138+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.NuGet.NuGetRestore" />
139+
140+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Git.GitClient" />
141+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Git.GitVersion" />
142+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Git.GitBranch" />
143+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Git.GitDescribe" />
144+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Git.GitPendingChanges" />
145+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Git.GitCommits" />
146+
<UsingTask AssemblyFile="$(MSBuildCommunityTasksLib)" TaskName="MSBuild.Community.Tasks.Git.GitCommitDate" />
147+
148+
<ItemGroup>
149+
<FxCopRuleAssemblies Include="UsageRules.dll"/>
150+
<FxCopRuleAssemblies Include="SecurityRules.dll"/>
151+
<FxCopRuleAssemblies Include="PortabilityRules.dll"/>
152+
<FxCopRuleAssemblies Include="PerformanceRules.dll"/>
153+
<FxCopRuleAssemblies Include="MobilityRules.dll"/>
154+
<FxCopRuleAssemblies Include="InteroperabilityRules.dll"/>
155+
<FxCopRuleAssemblies Include="GlobalizationRules.dll"/>
156+
<FxCopRuleAssemblies Include="DesignRules.dll"/>
157+
</ItemGroup>
158+
</Project>

src/.build/lessio.msbuild

Lines changed: 169 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,169 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="Init;Build;Deploy;Zip;NugetPackage">
3+
<!--
4+
References:
5+
http://msdn.microsoft.com/en-us/library/vstudio/dd393574.aspx
6+
http://msdn.microsoft.com/en-us/library/vstudio/ms164313.aspx
7+
-->
8+
9+
<PropertyGroup>
10+
<MSBuildCommunityTasksPath>$(MSBuildProjectDirectory)</MSBuildCommunityTasksPath>
11+
</PropertyGroup>
12+
<Import Project="$(MSBuildCommunityTasksPath)\MSBuild.Community.Tasks.Targets" />
13+
14+
<PropertyGroup>
15+
<RootDir>..\</RootDir>
16+
<TheDeployDir>$(RootDir)\.deploy</TheDeployDir>
17+
<AssemblyCopyright>Copyright Scott Willeke ©2016</AssemblyCopyright>
18+
<Description>A file system I/O library that overcomes limitations of .NET's System.IO libraries (such as long path names), aspires to be platform independent, and require less time to learn than System.IO.</Description>
19+
<TheZipFileName>lessio-v$(TheVersion).zip</TheZipFileName>
20+
</PropertyGroup>
21+
22+
<ItemGroup>
23+
<TheProjects Include="$(RootDir)\LessIO\LessIO.csproj"></TheProjects>
24+
<TheProjects Include="$(RootDir)\LessIO.Tests\LessIO.Tests.csproj"></TheProjects>
25+
</ItemGroup>
26+
27+
<ItemGroup>
28+
<DeployFiles Include="$(RootDir)\LessIO\bin\Release\LessIO.dll"></DeployFiles>
29+
</ItemGroup>
30+
31+
<Target Name="Init">
32+
<ConvertToAbsolutePath Paths="$(RootDir)">
33+
<Output TaskParameter="AbsolutePaths" PropertyName="RootDir"/>
34+
</ConvertToAbsolutePath>
35+
<!-- Apparently the PropertyGroup values are evaluated early and not reevaluated on demand because I had to run this again to get it to accept the new root dir value -->
36+
<ConvertToAbsolutePath Paths="$(TheDeployDir)">
37+
<Output TaskParameter="AbsolutePaths" PropertyName="TheDeployDir"/>
38+
</ConvertToAbsolutePath>
39+
40+
<Message Text="Project File Name = $(MSBuildProjectFile)" />
41+
<Message Text="Project Extension = $(MSBuildProjectExtension)" />
42+
<Message Text="MSBuildProjectDirectory = $(MSBuildProjectDirectory)" />
43+
<Message Text="SolutionDir = $(SolutionDir)" />
44+
45+
<Message Text="RootDir=$(RootDir)" />
46+
<Message Text="TheDeployDir=$(TheDeployDir)" />
47+
48+
</Target>
49+
50+
<Target Name="Validate">
51+
<ItemGroup>
52+
<_RequiredProperties Include="TheVersion">
53+
<Value>$(TheVersion)</Value>
54+
</_RequiredProperties>
55+
</ItemGroup>
56+
57+
<Error
58+
Condition=" '%(_RequiredProperties.Value)'=='' "
59+
Text=" Missing required property [%(_RequiredProperties.Identity)]"
60+
/>
61+
</Target>
62+
63+
<Target Name="SetProjectVersion">
64+
65+
<ItemGroup>
66+
<AssemblyInfoFiles Include="$(RootDir)\LessIO\Properties\AssemblyInfo.cs" />
67+
</ItemGroup>
68+
69+
<AssemblyInfo
70+
OutputFile="@(AssemblyInfoFiles)"
71+
CodeLanguage="C#"
72+
AssemblyTitle="LessIO"
73+
AssemblyDescription="$(Description)"
74+
AssemblyConfiguration=""
75+
AssemblyCompany="Scott Willeke"
76+
AssemblyVersion="$(TheVersion)"
77+
AssemblyFileVersion="$(TheVersion)"
78+
AssemblyCopyright="$(AssemblyCopyright)"
79+
>
80+
</AssemblyInfo>
81+
82+
</Target>
83+
84+
<Target Name="Clean">
85+
<RemoveDir Directories="$(TheDeployDir)" />
86+
</Target>
87+
88+
<Target Name="Build" DependsOnTargets="Validate;SetProjectVersion">
89+
<Message Text="Building version: $(TheVersion)" />
90+
91+
<Message Text="Absolute project path: %(TheProjects.FullPath)" />
92+
93+
<MSBuild
94+
Projects="%(TheProjects.FullPath)"
95+
Properties="Configuration=Release;Platform=AnyCPU;ApplicationVersion=$(TheVersion);SolutionDir=$(RootDir)"
96+
Targets="Rebuild"
97+
/>
98+
</Target>
99+
100+
<Target Name="Deploy" DependsOnTargets="Build;Clean">
101+
<MakeDir Directories="$(TheDeployDir)" />
102+
103+
<Copy
104+
SourceFiles="%(DeployFiles.FullPath)"
105+
DestinationFolder="$(TheDeployDir)"
106+
/>
107+
</Target>
108+
109+
<Target Name="Zip" DependsOnTargets="Deploy">
110+
<!-- see https://github.com/loresoft/msbuildtasks/blob/master/Source/MSBuild.Community.Tasks/Zip.cs -->
111+
<Zip
112+
Files="@(DeployFiles)"
113+
Flatten="True"
114+
ZipFileName="$(TheDeployDir)\$(TheZipFileName)"
115+
/>
116+
</Target>
117+
118+
<Target Name="NugetPackage" DependsOnTargets="Deploy">
119+
<!--
120+
See http://docs.nuget.org/Create/Creating-and-Publishing-a-Package
121+
-->
122+
<PropertyGroup>
123+
<PackageDir>$(TheDeployDir)\nuget-package</PackageDir>
124+
</PropertyGroup>
125+
126+
<Copy
127+
SourceFiles="lessio.nuspec"
128+
DestinationFolder="$(PackageDir)"
129+
/>
130+
<XmlPoke
131+
XmlInputPath="$(PackageDir)\lessio.nuspec"
132+
Query="//package/metadata/version"
133+
Value="$(TheVersion)"
134+
/>
135+
<XmlPoke
136+
XmlInputPath="$(PackageDir)\lessio.nuspec"
137+
Query="//package/metadata/description"
138+
Value="$(Description)"
139+
/>
140+
141+
<Exec
142+
Command="nuget pack &quot;$(PackageDir)\lessio.nuspec&quot; -NoDefaultExcludes -Verbosity Normal"
143+
WorkingDirectory="$(PackageDir)"
144+
ContinueOnError="true"
145+
>
146+
<Output TaskParameter="ExitCode" PropertyName="ErrorCode"/>
147+
</Exec>
148+
<Message Text="nuget exit code:$(ErrorCode)" />
149+
<Error
150+
Condition="$(ErrorCode)!=0"
151+
Text="nuget failed. Make sure you have nuget installed and accessible from the command line. See http://docs.nuget.org/docs/reference/command-line-reference"
152+
/>
153+
<Message
154+
Text="Nuget package built. To test the nuget package run `nuget install lessio -source $(PackageDir)`"
155+
Importance="high"
156+
/>
157+
<Message
158+
Importance="high"
159+
Text="
160+
161+
Next Steps to publish:
162+
- Tag the repo: `git tag v$(TheVersion)`
163+
- Push the tag to github to create the release: `git push --tags`
164+
- Upload $(TheZipFileName) at https://github.com/activescott/lessmsi/releases/tag/v$(TheVersion)
165+
- Run `nuget $(PackageDir)\lessio.$(TheVersion).nupkg`??? to push to nuget package.
166+
"
167+
/>
168+
</Target>
169+
</Project>

src/.build/lessio.nuspec

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<?xml version="1.0"?>
2+
<package>
3+
<metadata>
4+
<id>LessIO</id>
5+
<version>$version$</version>
6+
<authors>Scott Willeke</authors>
7+
<licenseUrl>https://github.com/activescott/LessIO/blob/master/LICENSE</licenseUrl>
8+
<projectUrl>https://github.com/activescott/LessIO</projectUrl>
9+
<requireLicenseAcceptance>false</requireLicenseAcceptance>
10+
<description>$description$</description>
11+
<copyright>Copyright 2016</copyright>
12+
<tags>file directory files directories io filesystem file-system</tags>
13+
</metadata>
14+
<files>
15+
<file src="..\LessIO.dll" target="lib\net40" />
16+
</files>
17+
</package>

0 commit comments

Comments
 (0)