From ac37ca4dcd3a60d5a03d575eb9e112ec3c14393a Mon Sep 17 00:00:00 2001 From: "Justin Terry (VM)" Date: Fri, 7 Apr 2017 07:18:26 -0700 Subject: [PATCH] Updates build to .NET Core *.csproj --- .vscode/tasks.json | 5 - Docker.PowerShell.sln | 101 +++++++++--------- Nuget.config | 1 + appveyor.yml | 27 +++-- global.json | 9 -- src/Docker.DotNet | 2 +- .../Docker.PowerShell.csproj | 39 +++++++ src/Docker.PowerShell/Docker.PowerShell.xproj | 19 ---- src/Docker.PowerShell/project.json | 37 ------- src/Tar/Tar.csproj | 19 ++++ src/Tar/Tar.xproj | 19 ---- src/Tar/project.json | 16 --- 12 files changed, 124 insertions(+), 170 deletions(-) delete mode 100644 global.json create mode 100644 src/Docker.PowerShell/Docker.PowerShell.csproj delete mode 100644 src/Docker.PowerShell/Docker.PowerShell.xproj delete mode 100644 src/Docker.PowerShell/project.json create mode 100644 src/Tar/Tar.csproj delete mode 100644 src/Tar/Tar.xproj delete mode 100644 src/Tar/project.json diff --git a/.vscode/tasks.json b/.vscode/tasks.json index bce72f4..71bf0b4 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -103,11 +103,6 @@ "taskName": "clean", "suppressTaskName": true, "args": [ - "del", - "/Q", - "/S", - ".\\src\\*project.lock.json", - "&&", "rmdir", "/Q", "/S", diff --git a/Docker.PowerShell.sln b/Docker.PowerShell.sln index 397caf1..d5a301b 100644 --- a/Docker.PowerShell.sln +++ b/Docker.PowerShell.sln @@ -1,53 +1,48 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 14 -VisualStudioVersion = 14.0.25420.1 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Docker.PowerShell", "src\Docker.PowerShell\Docker.PowerShell.xproj", "{AD2C487D-EC48-4B97-A977-4C2B52E097BF}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{CDFD41E7-FB95-44DD-866D-2461321EAEFE}" - ProjectSection(SolutionItems) = preProject - global.json = global.json - EndProjectSection -EndProject -Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Docker.DotNet", "src\Docker.DotNet\Docker.DotNet\Docker.DotNet.xproj", "{A9C3E587-DDEC-494B-96E2-BFB4FC34EC74}" -EndProject -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{FD49E869-E8F2-4E40-837D-E0329F087D4A}" -EndProject -Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Docker.DotNet.X509", "src\Docker.DotNet\Docker.DotNet.X509\Docker.DotNet.X509.xproj", "{3EB8C108-EAD7-4A58-AACF-33D9149F4708}" -EndProject -Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Tar", "src\Tar\Tar.xproj", "{FAC0B799-8BF2-4FCE-8867-D717867403A1}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {AD2C487D-EC48-4B97-A977-4C2B52E097BF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {AD2C487D-EC48-4B97-A977-4C2B52E097BF}.Debug|Any CPU.Build.0 = Debug|Any CPU - {AD2C487D-EC48-4B97-A977-4C2B52E097BF}.Release|Any CPU.ActiveCfg = Release|Any CPU - {AD2C487D-EC48-4B97-A977-4C2B52E097BF}.Release|Any CPU.Build.0 = Release|Any CPU - {A9C3E587-DDEC-494B-96E2-BFB4FC34EC74}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {A9C3E587-DDEC-494B-96E2-BFB4FC34EC74}.Debug|Any CPU.Build.0 = Debug|Any CPU - {A9C3E587-DDEC-494B-96E2-BFB4FC34EC74}.Release|Any CPU.ActiveCfg = Release|Any CPU - {A9C3E587-DDEC-494B-96E2-BFB4FC34EC74}.Release|Any CPU.Build.0 = Release|Any CPU - {3EB8C108-EAD7-4A58-AACF-33D9149F4708}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {3EB8C108-EAD7-4A58-AACF-33D9149F4708}.Debug|Any CPU.Build.0 = Debug|Any CPU - {3EB8C108-EAD7-4A58-AACF-33D9149F4708}.Release|Any CPU.ActiveCfg = Release|Any CPU - {3EB8C108-EAD7-4A58-AACF-33D9149F4708}.Release|Any CPU.Build.0 = Release|Any CPU - {FAC0B799-8BF2-4FCE-8867-D717867403A1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {FAC0B799-8BF2-4FCE-8867-D717867403A1}.Debug|Any CPU.Build.0 = Debug|Any CPU - {FAC0B799-8BF2-4FCE-8867-D717867403A1}.Release|Any CPU.ActiveCfg = Release|Any CPU - {FAC0B799-8BF2-4FCE-8867-D717867403A1}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection - GlobalSection(NestedProjects) = preSolution - {AD2C487D-EC48-4B97-A977-4C2B52E097BF} = {FD49E869-E8F2-4E40-837D-E0329F087D4A} - {A9C3E587-DDEC-494B-96E2-BFB4FC34EC74} = {FD49E869-E8F2-4E40-837D-E0329F087D4A} - {3EB8C108-EAD7-4A58-AACF-33D9149F4708} = {FD49E869-E8F2-4E40-837D-E0329F087D4A} - {FAC0B799-8BF2-4FCE-8867-D717867403A1} = {FD49E869-E8F2-4E40-837D-E0329F087D4A} - EndGlobalSection -EndGlobal + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26228.9 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{FD49E869-E8F2-4E40-837D-E0329F087D4A}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Tar", "src\Tar\Tar.csproj", "{A062EE19-A06C-4393-89CE-C1695270DB26}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Docker.PowerShell", "src\Docker.PowerShell\Docker.PowerShell.csproj", "{DEC530F9-0B30-46A2-8872-49BEDCB0FE55}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Docker.DotNet", "src\Docker.DotNet\Docker.DotNet\Docker.DotNet.csproj", "{79A7BA50-A595-458E-9A9C-51F8638B5F46}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Docker.DotNet.X509", "src\Docker.DotNet\Docker.DotNet.X509\Docker.DotNet.X509.csproj", "{32364E3C-9EA5-40D6-85DC-DAA6B754846E}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {A062EE19-A06C-4393-89CE-C1695270DB26}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A062EE19-A06C-4393-89CE-C1695270DB26}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A062EE19-A06C-4393-89CE-C1695270DB26}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A062EE19-A06C-4393-89CE-C1695270DB26}.Release|Any CPU.Build.0 = Release|Any CPU + {DEC530F9-0B30-46A2-8872-49BEDCB0FE55}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {DEC530F9-0B30-46A2-8872-49BEDCB0FE55}.Debug|Any CPU.Build.0 = Debug|Any CPU + {DEC530F9-0B30-46A2-8872-49BEDCB0FE55}.Release|Any CPU.ActiveCfg = Release|Any CPU + {DEC530F9-0B30-46A2-8872-49BEDCB0FE55}.Release|Any CPU.Build.0 = Release|Any CPU + {79A7BA50-A595-458E-9A9C-51F8638B5F46}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {79A7BA50-A595-458E-9A9C-51F8638B5F46}.Debug|Any CPU.Build.0 = Debug|Any CPU + {79A7BA50-A595-458E-9A9C-51F8638B5F46}.Release|Any CPU.ActiveCfg = Release|Any CPU + {79A7BA50-A595-458E-9A9C-51F8638B5F46}.Release|Any CPU.Build.0 = Release|Any CPU + {32364E3C-9EA5-40D6-85DC-DAA6B754846E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {32364E3C-9EA5-40D6-85DC-DAA6B754846E}.Debug|Any CPU.Build.0 = Debug|Any CPU + {32364E3C-9EA5-40D6-85DC-DAA6B754846E}.Release|Any CPU.ActiveCfg = Release|Any CPU + {32364E3C-9EA5-40D6-85DC-DAA6B754846E}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(NestedProjects) = preSolution + {A062EE19-A06C-4393-89CE-C1695270DB26} = {FD49E869-E8F2-4E40-837D-E0329F087D4A} + {DEC530F9-0B30-46A2-8872-49BEDCB0FE55} = {FD49E869-E8F2-4E40-837D-E0329F087D4A} + {79A7BA50-A595-458E-9A9C-51F8638B5F46} = {FD49E869-E8F2-4E40-837D-E0329F087D4A} + {32364E3C-9EA5-40D6-85DC-DAA6B754846E} = {FD49E869-E8F2-4E40-837D-E0329F087D4A} + EndGlobalSection +EndGlobal diff --git a/Nuget.config b/Nuget.config index af2c001..f578d4b 100644 --- a/Nuget.config +++ b/Nuget.config @@ -2,5 +2,6 @@ + \ No newline at end of file diff --git a/appveyor.yml b/appveyor.yml index 9b105b3..4147bdc 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -4,8 +4,8 @@ pull_requests: image: WMF 5 init: - ps: Install-PackageProvider NuGet -Force -- ps: (new-object net.webclient).DownloadFile('https://dotnetcli.blob.core.windows.net/dotnet/Sdk/rel-1.0.0/dotnet-dev-win-x64.latest.exe', "c:/dotnet-install.exe") -- cmd: c:\dotnet-install.exe /install /quiet +- ps: (new-object net.webclient).DownloadFile('https://raw.githubusercontent.com/dotnet/cli/master/scripts/obtain/dotnet-install.ps1', "C:/dotnet-install.ps1") +- ps: C:/dotnet-install.ps1 install: - ps: Install-Module platyPS -Force -RequiredVersion 0.7.0 - cmd: git submodule update --init --recursive @@ -19,17 +19,22 @@ build_script: - ps: | $env:PATH = "c:\program files\dotnet;$env:PATH" - $projectFile = "src\Docker.PowerShell\project.json" - $project = Get-Content $projectFile -Raw | ConvertFrom-Json - $version = $project.version + $projectFile = "src\Docker.PowerShell\Docker.PowerShell.csproj" + $projectRawContents = Get-Content $projectFile -Raw + $versionNodes = $projectRawContents | Select-Xml -XPath "/Project/PropertyGroup/Version" + if ($versionNodes.Count -ne 1) { + throw "Invalid number of version nodes found in csproj." + } + + $version = $versionNodes.Node.InnerXml # Tags do not get build versions. if ($env:APPVEYOR_REPO_TAG -ne "true") { $version += ".$($env:APPVEYOR_BUILD_VERSION.split("-")[0])" - # Update the project.json version to include the build number. - $project.version = $version - ConvertTo-Json $project -Depth 100 | Out-File -Encoding UTF8 $projectFile + # Update the .csproj version to include the build number. + $newProjectContents = $projectRawContents -replace ".+", "$version" + $newProjectContents | Out-File -Encoding UTF8 $projectFile } # Replace module manifest version. @@ -38,8 +43,8 @@ build_script: Get-Content $projectFile Get-Content $manifest -- ps: dotnet restore -- ps: dotnet build src/Docker.PowerShell/project.json +- ps: dotnet restore src/Docker.PowerShell/Docker.PowerShell.csproj +- ps: dotnet build src/Docker.PowerShell/Docker.PowerShell.csproj - ps: dotnet publish -f net46 -o $pwd\bin\Docker\clr -c Release $pwd\src\Docker.PowerShell - ps: dotnet publish -f netstandard1.6 -o $pwd\bin\Docker\coreclr -c Release $pwd\src\Docker.PowerShell - ps: nuget install Newtonsoft.Json -Version 9.0.1 -OutputDirectory $pwd\bin @@ -57,7 +62,7 @@ test_script: throw "Module failed to load: no commands found." } - ps: git checkout -- src/Docker.PowerShell/Docker.psd1 -- ps: git checkout -- src/Docker.PowerShell/project.json +- ps: git checkout -- src/Docker.PowerShell/Docker.PowerShell.csproj - ps: git config core.autocrlf true - ps: New-MarkdownHelp -Module Docker -OutputFolder src\Docker.PowerShell\Help -ErrorAction SilentlyContinue - ps: Update-MarkdownHelp -Path src\Docker.PowerShell\Help diff --git a/global.json b/global.json deleted file mode 100644 index d833655..0000000 --- a/global.json +++ /dev/null @@ -1,9 +0,0 @@ -{ - "projects": [ - "src", - "src/Docker.DotNet" - ], - "sdk": { - "version": "1.0.0-preview3-003178" - } -} \ No newline at end of file diff --git a/src/Docker.DotNet b/src/Docker.DotNet index 578de94..5448bb6 160000 --- a/src/Docker.DotNet +++ b/src/Docker.DotNet @@ -1 +1 @@ -Subproject commit 578de941725cb71023c455f87308008966151077 +Subproject commit 5448bb6978bdfeed5e34554983eecad1b54c41ec diff --git a/src/Docker.PowerShell/Docker.PowerShell.csproj b/src/Docker.PowerShell/Docker.PowerShell.csproj new file mode 100644 index 0000000..5416179 --- /dev/null +++ b/src/Docker.PowerShell/Docker.PowerShell.csproj @@ -0,0 +1,39 @@ + + + true + Docker.PowerShell + Docker.PowerShell is a module that allows you to interact with the Docker Remote API via a PowerShell like syntax. + 0.1.0 + net46;netstandard1.6 + false + Docker.PowerShell + https://github.com/Microsoft/Docker-PowerShell/blob/master/LICENSE + Copyright Microsoft 2015 + Docker Container C# .NET PowerShell + git + https://github.com/Microsoft/Docker-PowerShell + 1.6.1 + + + + + + + + + + + + + + + Always + + + Always + + + Always + + + \ No newline at end of file diff --git a/src/Docker.PowerShell/Docker.PowerShell.xproj b/src/Docker.PowerShell/Docker.PowerShell.xproj deleted file mode 100644 index aabe4db..0000000 --- a/src/Docker.PowerShell/Docker.PowerShell.xproj +++ /dev/null @@ -1,19 +0,0 @@ - - - - 14.0 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - ad2c487d-ec48-4b97-a977-4c2b52e097bf - Docker.PowerShell - .\obj - .\bin\ - - - - 2.0 - - - \ No newline at end of file diff --git a/src/Docker.PowerShell/project.json b/src/Docker.PowerShell/project.json deleted file mode 100644 index 37296a1..0000000 --- a/src/Docker.PowerShell/project.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "version": "0.1.0", - "description": "Docker.PowerShell Cmdlet Library", - "dependencies": { - "Docker.DotNet.X509": "2.124.3", - "Docker.DotNet": "2.124.3", - "Tar": "0.1.0-*" - }, - "frameworks": { - "netstandard1.6": { - "imports": [ - "portable-net45+win8" - ], - "dependencies": { - "Microsoft.PowerShell.SDK": { - "version": "1.0.0-alpha9", - "type": "platform" - } - } - }, - "net46": { - "dependencies": { - "Microsoft.PowerShell.5.ReferenceAssemblies": { - "version": "1.0.0", - "type": "build" - } - } - } - }, - "publishOptions": { - "include": [ - "Docker.psd1", - "Docker.psm1", - "Docker.Format.ps1xml" - ] - } -} \ No newline at end of file diff --git a/src/Tar/Tar.csproj b/src/Tar/Tar.csproj new file mode 100644 index 0000000..849a61c --- /dev/null +++ b/src/Tar/Tar.csproj @@ -0,0 +1,19 @@ + + + net46;netstandard1.3;netstandard1.6 + false + Tar + Copyright Microsoft 2015 + git + 1.6.1 + + + $(version) + + + + + + + + diff --git a/src/Tar/Tar.xproj b/src/Tar/Tar.xproj deleted file mode 100644 index 729f2a5..0000000 --- a/src/Tar/Tar.xproj +++ /dev/null @@ -1,19 +0,0 @@ - - - - 14.0 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - fac0b799-8bf2-4fce-8867-d717867403a1 - Tar - .\obj - .\bin\ - - - - 2.0 - - - \ No newline at end of file diff --git a/src/Tar/project.json b/src/Tar/project.json deleted file mode 100644 index ca3f1cb..0000000 --- a/src/Tar/project.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "version": "0.1.0", - "frameworks": { - "netstandard1.6": { - "dependencies": { - "NETStandard.Library": "1.6.0" - } - }, - "netstandard1.3": { - "dependencies": { - "NETStandard.Library": "1.6.0" - } - }, - "net46": {} - } -} \ No newline at end of file