Make msbuild work with the solution
This commit is contained in:
Родитель
3dceb5e11f
Коммит
25e888b683
|
@ -130,6 +130,10 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.IIS.Administratio
|
|||
{5D3BEEB8-5798-4037-8BB0-A35A7A42999A} = {5D3BEEB8-5798-4037-8BB0-A35A7A42999A}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "scripts", "scripts", "{E05E8FAA-90EE-43C7-911F-4543FB491159}"
|
||||
EndProject
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.IIS.Administration.PsSetup", "scripts\Microsoft.IIS.Administration.PsSetup.csproj", "{C5FA05E9-0A3E-4C00-B261-CE35A568659D}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
|
@ -279,7 +283,10 @@ Global
|
|||
{F1AEBED1-CE86-48D2-8389-6559A088B6F8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{F1AEBED1-CE86-48D2-8389-6559A088B6F8}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{F1AEBED1-CE86-48D2-8389-6559A088B6F8}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{F1AEBED1-CE86-48D2-8389-6559A088B6F8}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{C5FA05E9-0A3E-4C00-B261-CE35A568659D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{C5FA05E9-0A3E-4C00-B261-CE35A568659D}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{C5FA05E9-0A3E-4C00-B261-CE35A568659D}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{C5FA05E9-0A3E-4C00-B261-CE35A568659D}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
@ -321,6 +328,7 @@ Global
|
|||
{AE4B4D83-70CB-4194-82B1-57DF26279A47} = {BC25CF2F-4139-4D3F-9DC5-279FD380D0F2}
|
||||
{6FDC4BDA-91D3-4269-B89B-043EDC7768F7} = {BC25CF2F-4139-4D3F-9DC5-279FD380D0F2}
|
||||
{F1AEBED1-CE86-48D2-8389-6559A088B6F8} = {5504DA5E-BCF3-409E-A285-E59EDBBBB8B8}
|
||||
{C5FA05E9-0A3E-4C00-B261-CE35A568659D} = {E05E8FAA-90EE-43C7-911F-4543FB491159}
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {F5961521-6D78-4B19-9B46-BC648CC42DB1}
|
||||
|
|
|
@ -1,9 +1,19 @@
|
|||
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
|
||||
<OutputRoot>$(SolutionDir)\.build</OutputRoot>
|
||||
<AppOutputRoot>$(SolutionDir)\.build\Microsoft.IIS.Administration</AppOutputRoot>
|
||||
<PublishRoot>$(SolutionDir)\dist</PublishRoot>
|
||||
<AppPublishRoot>$(SolutionDir)\dist\Microsoft.IIS.Administration</AppPublishRoot>
|
||||
<OutputRoot>$(SolutionDir).build</OutputRoot>
|
||||
<AppOutputRoot>$(SolutionDir).build\Microsoft.IIS.Administration</AppOutputRoot>
|
||||
<PluginsOutputRoot>$(SolutionDir).build\Microsoft.IIS.Administration\plugins</PluginsOutputRoot>
|
||||
<PublishRoot>$(SolutionDir)dist</PublishRoot>
|
||||
<AppPublishRoot>$(SolutionDir)dist\Microsoft.IIS.Administration</AppPublishRoot>
|
||||
<PluginsPublishRoot>$(SolutionDir)dist\Microsoft.IIS.Administration\plugins</PluginsPublishRoot>
|
||||
|
||||
<!-- Publish properties -->
|
||||
<PublishProtocol>FileSystem</PublishProtocol>
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Any CPU</Platform>
|
||||
<RuntimeIdentifiers>win-x64;win-x86</RuntimeIdentifiers>
|
||||
<SelfContained>false</SelfContained>
|
||||
<_IsPortable>false</_IsPortable>
|
||||
</PropertyGroup>
|
||||
</Project>
|
||||
|
|
|
@ -1,33 +1,116 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<Import Project="..\build\sign.props" />
|
||||
<Import Project="..\build\Microsoft.IIS.Administration.props" />
|
||||
|
||||
<PropertyGroup>
|
||||
<ScriptsOutputPath>bin\setup</ScriptsOutputPath>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition=" $(SignType) != '' ">
|
||||
<ScriptsOutputPath>bin\signed\setup</ScriptsOutputPath>
|
||||
</PropertyGroup>
|
||||
|
||||
<Target Name="CopySetupScripts" BeforeTargets="CopyFilesToOutputDirectory">
|
||||
<ItemGroup>
|
||||
<_SetupScripts Include="setup\*.ps1;setup\*.json" />
|
||||
</ItemGroup>
|
||||
<Copy SourceFiles="@(_SetupScripts)" DestinationFiles="@(_SetupScripts->'$(OutDir)setup\%(Filename)%(Extension)')" />
|
||||
</Target>
|
||||
<ItemGroup>
|
||||
<PackageReference Include="MicroBuild.Core" Version="$(MicroBuildVersion)" />
|
||||
</ItemGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<Description>PsSetup</Description>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<ScriptsOutputPath>$(PublishRoot)\setup</ScriptsOutputPath>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="MicroBuild.Core" Version="$(MicroBuildVersion)" />
|
||||
<None Remove="setup\acl-util.ps1" />
|
||||
<None Remove="setup\cache.ps1" />
|
||||
<None Remove="setup\cert.ps1" />
|
||||
<None Remove="setup\config.ps1" />
|
||||
<None Remove="setup\dependencies.ps1" />
|
||||
<None Remove="setup\files.ps1" />
|
||||
<None Remove="setup\globals.ps1" />
|
||||
<None Remove="setup\install.ps1" />
|
||||
<None Remove="setup\json.ps1" />
|
||||
<None Remove="setup\migrate.ps1" />
|
||||
<None Remove="setup\modules.ps1" />
|
||||
<None Remove="setup\msi-setup.ps1" />
|
||||
<None Remove="setup\net.ps1" />
|
||||
<None Remove="setup\netsh.ps1" />
|
||||
<None Remove="setup\require.ps1" />
|
||||
<None Remove="setup\sanitize-logs.ps1" />
|
||||
<None Remove="setup\security.ps1" />
|
||||
<None Remove="setup\services.ps1" />
|
||||
<None Remove="setup\setup.ps1" />
|
||||
<None Remove="setup\uninstall.ps1" />
|
||||
<None Remove="setup\ver.ps1" />
|
||||
<None Remove="setup\version.json" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="setup\acl-util.ps1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="setup\cache.ps1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="setup\cert.ps1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="setup\config.ps1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="setup\dependencies.ps1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="setup\files.ps1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="setup\globals.ps1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="setup\install.ps1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="setup\json.ps1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="setup\migrate.ps1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="setup\modules.ps1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="setup\msi-setup.ps1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="setup\net.ps1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="setup\netsh.ps1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="setup\require.ps1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="setup\sanitize-logs.ps1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="setup\security.ps1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="setup\services.ps1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="setup\setup.ps1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="setup\uninstall.ps1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="setup\ver.ps1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="setup\version.json">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
|
||||
<Target Name="AssignScripts" BeforeTargets="SignFiles">
|
||||
<ItemGroup Condition=" '$(SignType)' != '' ">
|
||||
<FilesToSign Include="$(OutDir)setup\*.ps1;">
|
||||
<FilesToSign Include="$(OutputPath)setup\*.ps1;">
|
||||
<Authenticode>$(SigningIdentity)</Authenticode>
|
||||
</FilesToSign>
|
||||
</ItemGroup>
|
||||
|
@ -35,15 +118,9 @@
|
|||
|
||||
<Target Name="PostcompileScript" AfterTargets="Build">
|
||||
<ItemGroup>
|
||||
<_SignedScripts Include="$(OutDir)setup\*.ps1;$(OutDir)setup\*.json" />
|
||||
<_SignedScripts Include="$(OutputPath)setup\*.ps1;$(OutputPath)setup\*.json" />
|
||||
</ItemGroup>
|
||||
<Copy SourceFiles="@(_SignedScripts)" DestinationFiles="@(_SignedScripts->'$(ScriptsOutputPath)\%(Filename)%(Extension)')" />
|
||||
</Target>
|
||||
|
||||
<Target Name="PostPostcompileScript" AfterTargets="PostcompileScript">
|
||||
<RemoveDir Directories="bin\$(Configuration);" />
|
||||
</Target>
|
||||
|
||||
|
||||
|
||||
</Project>
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
param(
|
||||
[Parameter(Position = 0)]
|
||||
$projectDir = [System.IO.Path]::Combine($PSScriptRoot, "..", "..", "src", "Microsoft.IIS.Administration")
|
||||
)
|
||||
|
||||
Push-Location $projectDir
|
||||
try {
|
||||
foreach ($configFile in (Get-ChildItem -Path "config\*.default.json")) {
|
||||
$target = $configFile.FullName -replace '.default.json$', '.json'
|
||||
if (!(Test-Path $target)) {
|
||||
Copy-Item $configFile.FullName $target
|
||||
}
|
||||
}
|
||||
} finally {
|
||||
Pop-Location
|
||||
}
|
|
@ -0,0 +1,59 @@
|
|||
## This script would need to manually called after msbuild publish beause there is not "PostPublish" task in msbuild
|
||||
param(
|
||||
[string]
|
||||
$solutionDir = [System.IO.Path]::Combine($PSScriptRoot, "..", ".."),
|
||||
|
||||
[string]
|
||||
$publishDir = [System.IO.Path]::Combine($solutionDir, "dist")
|
||||
)
|
||||
|
||||
function Move-SymbolsFiles {
|
||||
$symbolsDir = Join-Path $publishDir symbols
|
||||
if (!(Test-Path $symbolsDir)) {
|
||||
mkdir $symbolsDir
|
||||
}
|
||||
Get-ChildItem -Path "*.pdb" -Recurse -File | ForEach-Object { Move-Item $_.FullName $symbolsDir -Force }
|
||||
}
|
||||
|
||||
function Remove-DuplicateDlls {
|
||||
$prefix = '.\plugins\'
|
||||
foreach ($pluginDll in (Get-ChildItem -Path "plugins" -Recurse -File | Resolve-Path -Relative)) {
|
||||
if (!$pluginDll.StartsWith($prefix)) {
|
||||
throw "Unexpected prefix path detected for path: ${pluginDll}"
|
||||
}
|
||||
$appDll = $pluginDll.Substring($prefix.Length)
|
||||
if (Test-Path $appDll) {
|
||||
Remove-Item $pluginDll -Force
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function Remove-PluginDependenciesFiles {
|
||||
Remove-Item -Path '.\plugins\*.deps.json'
|
||||
}
|
||||
|
||||
function Remove-NonWindowsRuntime {
|
||||
foreach ($runtime in Get-ChildItem . -Name "runtimes" -Directory -Recurse) {
|
||||
foreach ($os in ((Resolve-Path $runtime) | Get-ChildItem)) {
|
||||
if (!$os.Name.StartsWith('win')) {
|
||||
Remove-Item $os.FullName -Force -Recurse
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function Copy-3rdPartyNotice {
|
||||
Copy-Item (Join-Path $solutionDir ThirdPartyNotices.txt) $publishDir
|
||||
}
|
||||
|
||||
Push-Location (Join-Path $publishDir "Microsoft.IIS.Administration")
|
||||
try {
|
||||
Move-SymbolsFiles
|
||||
Remove-DuplicateDlls
|
||||
Remove-PluginDependenciesFiles
|
||||
Remove-NonWindowsRuntime
|
||||
Copy-3rdPartyNotice
|
||||
} finally {
|
||||
Pop-Location
|
||||
}
|
||||
|
|
@ -1,277 +0,0 @@
|
|||
# Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
# Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
||||
|
||||
|
||||
Param(
|
||||
# The path to place the published app
|
||||
[parameter(Position = 0)]
|
||||
[string]
|
||||
$OutputPath,
|
||||
|
||||
# Flag for publishing with the Debug configuration
|
||||
[parameter()]
|
||||
[switch]
|
||||
$ConfigDebug,
|
||||
|
||||
# Flag to skip restoring the projects
|
||||
# Using this flag reduces publish time but can only be used after an initial publish
|
||||
# Any change in dependencies will require a restore
|
||||
[parameter()]
|
||||
[switch]
|
||||
$SkipRestore,
|
||||
|
||||
# Flag to automatically remove the content located at the output path
|
||||
[parameter()]
|
||||
[switch]
|
||||
$SkipPrompt,
|
||||
|
||||
# Flag to enable signing targets if any
|
||||
[parameter()]
|
||||
[string]
|
||||
$SignType,
|
||||
|
||||
# Identity of the certificate to use for signing, ex: Contoso
|
||||
[parameter()]
|
||||
[string]
|
||||
$SigningIdentity,
|
||||
|
||||
# Identity of the certificate to use for signing setup scripts
|
||||
[parameter()]
|
||||
[string]
|
||||
$ScriptSigningIdentity
|
||||
)
|
||||
|
||||
$applicationName = "Microsoft.IIS.Administration"
|
||||
|
||||
function Get-ScriptDirectory
|
||||
{
|
||||
Split-Path $script:MyInvocation.MyCommand.Path
|
||||
}
|
||||
|
||||
function Get-SolutionDirectory
|
||||
{
|
||||
return $(Resolve-Path $(Join-Path $(Get-ScriptDirectory) "../..")).Path
|
||||
}
|
||||
|
||||
function Get-VersionObject
|
||||
{
|
||||
$versionPath = $(Resolve-Path $(Join-Path $(Get-ScriptDirectory) "..\setup\version.json")).Path
|
||||
if (-not(Test-Path $versionPath)) {
|
||||
throw "Could not find version."
|
||||
}
|
||||
$versionFile = Get-Item $versionPath -ErrorAction Stop
|
||||
$versionText = [System.IO.File]::ReadAllText($versionFile.FullName)
|
||||
return ConvertFrom-Json $versionText
|
||||
}
|
||||
|
||||
function DeletePreExistingFiles($targetPath)
|
||||
{
|
||||
$items = Get-ChildItem $targetPath
|
||||
|
||||
if (-not($SkipPrompt)) {
|
||||
$confirmation = Read-Host "Remove the contents of $targetPath ? (y/n)"
|
||||
|
||||
if($confirmation -ne 'y') {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
foreach($item in $items) {
|
||||
Remove-Item ($item.FullName) -Recurse
|
||||
}
|
||||
}
|
||||
|
||||
if ([string]::IsNullOrEmpty($OutputPath)) {
|
||||
$OutputPath = Join-Path $(Get-ScriptDirectory) bin
|
||||
}
|
||||
|
||||
$ProjectPath = $(Resolve-Path $(join-path $(Get-SolutionDirectory) src/Microsoft.IIS.Administration)).Path
|
||||
|
||||
$ProjectPathExists = Test-Path $ProjectPath
|
||||
|
||||
if(!$ProjectPathExists) {
|
||||
throw "Project could not be found"
|
||||
}
|
||||
|
||||
if(-not(Test-Path $OutputPath)) {
|
||||
New-Item -type Directory $OutputPath -ErrorAction Stop | out-null
|
||||
}
|
||||
|
||||
$configFolderPath = Join-Path $ProjectPath "config"
|
||||
|
||||
$configPathExists = Test-Path $configFolderPath
|
||||
|
||||
if(!$configPathExists) {
|
||||
throw "Config folder does not exist"
|
||||
}
|
||||
|
||||
if ([string]::IsNullOrEmpty($ScriptSigningIdentity)) {
|
||||
$ScriptSigningIdentity = $SigningIdentity
|
||||
}
|
||||
|
||||
if (-not([string]::IsNullOrEmpty($SignType))) {
|
||||
try {
|
||||
$msbuild = Get-Command msbuild -ErrorAction SilentlyContinue
|
||||
|
||||
if ($msbuild -eq $null) {
|
||||
throw "MsBuild.exe not on path"
|
||||
}
|
||||
}
|
||||
catch {
|
||||
throw "Could not find msbuild: $($_.Exception.Message)"
|
||||
}
|
||||
|
||||
if ([string]::IsNullOrEmpty($SigningIdentity)) {
|
||||
throw "SigningIdentity required to produce a signed build"
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
$dotnet = Get-Command dotnet -ErrorAction SilentlyContinue
|
||||
|
||||
if ($dotnet -eq $null) {
|
||||
throw ".NET SDK not installed"
|
||||
}
|
||||
}
|
||||
catch {
|
||||
throw "Could not find dotnet tools: $($_.Exception.Message)"
|
||||
}
|
||||
|
||||
DeletePreExistingFiles $OutputPath
|
||||
|
||||
$applicationPath = Join-Path $OutputPath $applicationName
|
||||
|
||||
New-Item -type Directory $applicationPath -ErrorAction Stop | out-null
|
||||
|
||||
$configuration = "Release"
|
||||
if($ConfigDebug) {
|
||||
$configuration = "Debug"
|
||||
}
|
||||
|
||||
if (-not($SkipRestore)) {
|
||||
dotnet restore $(Get-SolutionDirectory)
|
||||
|
||||
if ($LASTEXITCODE -ne 0) {
|
||||
throw "Restore failed"
|
||||
}
|
||||
}
|
||||
|
||||
try{
|
||||
if ([string]::IsNullOrEmpty($SignType)) {
|
||||
dotnet publish $ProjectPath --framework netcoreapp2.1 --output $applicationPath --configuration $configuration
|
||||
}
|
||||
else {
|
||||
msbuild $ProjectPath /t:publish /p:Configuration=$Configuration /p:PublishDir=$applicationPath /p:SignType=$SignType /p:SigningIdentity=$SigningIdentity
|
||||
}
|
||||
|
||||
if ($LASTEXITCODE -ne 0) {
|
||||
throw "Publish failed"
|
||||
}
|
||||
}
|
||||
catch {
|
||||
throw "Publish failed: $($_.Exception.Message)"
|
||||
}
|
||||
|
||||
$outputConfigPath = Join-Path $applicationPath "config"
|
||||
$outputConfigPathExists = Test-Path $outputConfigPath
|
||||
|
||||
if(!$outputConfigPathExists) {
|
||||
New-Item $outputConfigPath -Type directory | Out-Null
|
||||
}
|
||||
|
||||
Copy-Item (Join-Path $configFolderPath "modules.default.json") (Join-Path $outputConfigPath "modules.json") -Force -ErrorAction Stop;
|
||||
Copy-Item (Join-Path $configFolderPath "api-keys.default.json") (Join-Path $outputConfigPath "api-keys.json") -Force -ErrorAction Stop;
|
||||
Copy-Item (Join-Path $configFolderPath "appsettings.default.json") (Join-Path $outputConfigPath "appsettings.json") -Force -ErrorAction Stop;
|
||||
|
||||
# Dlls required for plugins reside in the plugins folder at dev time
|
||||
$pluginFolder = Join-Path $ProjectPath "plugins"
|
||||
$outputPluginsFolder = Join-Path $applicationPath "plugins"
|
||||
|
||||
if(!(Test-Path $outputPluginsFolder)) {
|
||||
New-Item $outputPluginsFolder -ItemType Directory | Out-Null
|
||||
}
|
||||
|
||||
# Publish plugins to the plugins directory
|
||||
try {
|
||||
$packagerPath = $(Resolve-Path $(join-path $(Get-SolutionDirectory) src/Packager/Bundle)).Path
|
||||
|
||||
if (-not($SkipRestore)) {
|
||||
dotnet restore $packagerPath
|
||||
|
||||
if ($LASTEXITCODE -ne 0) {
|
||||
throw "Plugin restore failed"
|
||||
}
|
||||
}
|
||||
|
||||
if ([string]::IsNullOrEmpty($SignType)) {
|
||||
dotnet publish $packagerPath --framework netcoreapp2.1 --output $outputPluginsFolder --configuration $configuration
|
||||
}
|
||||
else {
|
||||
msbuild $packagerPath /t:publish /p:Configuration=$Configuration /p:PublishDir=$outputPluginsFolder /p:SignType=$SignType /p:SigningIdentity=$SigningIdentity
|
||||
}
|
||||
|
||||
if ($LASTEXITCODE -ne 0) {
|
||||
throw "Plugin build failed"
|
||||
}
|
||||
}
|
||||
catch {
|
||||
throw "Could not build plugins for publishing: $($_.Exception.Message)"
|
||||
}
|
||||
|
||||
# Copy setup
|
||||
if ([string]::IsNullOrEmpty($SignType)) {
|
||||
Copy-Item $(Join-Path $(Get-SolutionDirectory) scripts/setup) $OutputPath -Recurse -ErrorAction Stop
|
||||
}
|
||||
else {
|
||||
$SetupProjectPath = $(Join-Path $(Get-SolutionDirectory) scripts/Microsoft.IIS.Administration.PsSetup.csproj)
|
||||
|
||||
if (-not($SkipRestore)) {
|
||||
dotnet restore $SetupProjectPath
|
||||
|
||||
if ($LASTEXITCODE -ne 0) {
|
||||
throw "Setup script restore failed"
|
||||
}
|
||||
}
|
||||
|
||||
msbuild $SetupProjectPath /p:SignType=$SignType /p:SigningIdentity=$ScriptSigningIdentity
|
||||
Copy-Item $(Join-Path $(Get-SolutionDirectory) scripts/bin/signed/setup) $OutputPath -Recurse -ErrorAction Stop
|
||||
|
||||
if ($LASTEXITCODE -ne 0) {
|
||||
throw "Setup script build failed"
|
||||
}
|
||||
}
|
||||
|
||||
# Copy thirdpartynotices.txt
|
||||
Copy-Item $(Join-Path $(Get-SolutionDirectory) ThirdPartyNotices.txt) $OutputPath -ErrorAction Stop
|
||||
|
||||
# Remove all unnecessary files
|
||||
if (-not($ConfigDebug)) {
|
||||
Get-ChildItem $OutputPath *.pdb -Recurse | Remove-Item -Force | Out-Null
|
||||
}
|
||||
|
||||
# Remove non-windows runtime dlls
|
||||
$runtimeDirs = Get-ChildItem -Recurse $OutputPath runtimes
|
||||
foreach ($runtimeDir in $runtimeDirs) {
|
||||
Get-ChildItem $runtimeDir.FullName | Where-Object { $_.name -ne "win" } | ForEach-Object { Remove-Item $_.FullName -Force -Recurse }
|
||||
}
|
||||
|
||||
# Remove non dlls from plugins
|
||||
Get-ChildItem $outputPluginsFolder -File | where {-not($_.Name -match ".dll$")} | Remove-Item -Force
|
||||
Remove-Item (Join-Path $outputPluginsFolder Bundle.dll) -Force
|
||||
|
||||
$mainDlls = Get-ChildItem $applicationPath *.dll
|
||||
$mainDlls += $(Get-ChildItem -Recurse $applicationPath/runtimes/*.dll)
|
||||
$pluginDlls = Get-ChildItem -Recurse $outputPluginsFolder *.dll
|
||||
|
||||
# Ensure no intersection between plugin dlls and application dlls
|
||||
foreach ($pluginDll in $pluginDlls) {
|
||||
foreach ($mainDll in $mainDlls) {
|
||||
if ($mainDll.Name -eq $pluginDll.Name) {
|
||||
Remove-Item $pluginDll.FullName -Force | Out-Null
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$publishVersion = $(Get-VersionObject).version
|
||||
Write-Host "Finished publishing $applicationName $publishVersion"
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.AccessManagement</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.AccessManagement</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.AccessManagement</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.Certificates Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.Certificates</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.Certificates</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
<Description>Microsoft.IIS.Administration.Core Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.Core</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.Core</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
<Description>Microsoft.IIS.Administration.Files.Core Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.Files.Core</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.Files.Core</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.Files Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.Files</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.Files</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.AppPools Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.AppPools</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.AppPools</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.Application Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.Applications</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.Applications</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.Authentication Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.Authentication</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.Authentication</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.Authorization Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.Authorization</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.Authorization</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.CentralCertificates Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.CentralCertificates</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.CentralCertificates</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.Compression Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.Compression</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.Compression</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.DefaultDocument Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.DefaultDocuments</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.DefaultDocuments</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.Delegation Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.Delegation</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.Delegation</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.DirectoryBrowsing Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.DirectoryBrowsing</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.DirectoryBrowsing</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.Files Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.Files</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.Files</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.Handlers Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.Handlers</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.Handlers</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.HttpRedirect Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.HttpRedirect</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.HttpRedirect</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.HttpRequestTracing Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.HttpRequestTracing</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.HttpRequestTracing</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.HTTPResponseHeaders Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.HttpResponseHeaders</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.HttpResponseHeaders</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.IPRestrictions Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.IPRestrictions</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.IPRestrictions</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.Info Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.Info</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.Info</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.Logging Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.Logging</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.Logging</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.Modules Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.Modules</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.Modules</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.Monitoring Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.Monitoring</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.Monitoring</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.RequestFiltering Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.RequestFiltering</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.RequestFiltering</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.RequestMonitor Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.RequestMonitor</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.RequestMonitor</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.Scm Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.Scm</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.Scm</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.Sites Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.Sites</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.Sites</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.SslSettings Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.SslSettings</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.SslSettings</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -1,11 +1,13 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<Import Project="..\..\build\sign.props" />
|
||||
<Import Project="..\..\build\version.props" />
|
||||
<Import Project="..\..\build\plugins.props" />
|
||||
|
||||
<PropertyGroup>
|
||||
<Description>Microsoft.IIS.Administration.WebServer.MimeTypes Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.StaticContent</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.StaticContent</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -1,11 +1,13 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
<Import Project="..\..\build\sign.props" />
|
||||
<Import Project="..\..\build\version.props" />
|
||||
<Import Project="..\..\build\plugins.props" />
|
||||
|
||||
<PropertyGroup>
|
||||
<Description>Microsoft.IIS.Administration.WebServer.UrlRewrite Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.UrlRewrite</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.UrlRewrite</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.VirtualDirectory Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.VirtualDirectories</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.VirtualDirectories</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer.WorkerProcesses Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer.WorkerProcesses</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer.WorkerProcesses</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<Description>Microsoft.IIS.Administration.WebServer Class Library</Description>
|
||||
<VersionPrefix>$(IISAdministrationVersion)</VersionPrefix>
|
||||
<Authors>Microsoft</Authors>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Microsoft.IIS.Administration.WebServer</AssemblyName>
|
||||
<PackageId>Microsoft.IIS.Administration.WebServer</PackageId>
|
||||
</PropertyGroup>
|
||||
|
|
|
@ -37,6 +37,24 @@
|
|||
<ProjectReference Include="..\Microsoft.IIS.Administration.Files.Core\Microsoft.IIS.Administration.Files.Core.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<None Remove="config\api-keys.json" />
|
||||
<None Remove="config\appsettings.json" />
|
||||
<None Remove="config\modules.json" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="config\api-keys.json">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="config\appsettings.json">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="config\modules.json">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</EmbeddedResource>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="MicroBuild.Core" Version="$(MicroBuildCoreVersion)">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
|
@ -70,6 +88,10 @@
|
|||
</FilesToSign>
|
||||
</ItemGroup>
|
||||
|
||||
<Target Name="CreatConfigs" BeforeTargets="PrepareForBuild">
|
||||
<Exec Command="powershell -NonInteractive -executionpolicy Unrestricted -command "&'..\..\scripts\build\Copy-Configs.ps1' '$(MSBuildProjectDirectory)'"" />
|
||||
</Target>
|
||||
|
||||
<!-- Workaround for: Files generated during build are not copying to publish directory on first publish https://github.com/dotnet/cli/issues/5498#issuecomment-275932671 -->
|
||||
<Target Name="AddGeneratedContentItems" BeforeTargets="AssignTargetPaths" DependsOnTargets="PrepareForPublish">
|
||||
<ItemGroup>
|
||||
|
@ -77,4 +99,10 @@
|
|||
</ItemGroup>
|
||||
</Target>
|
||||
|
||||
<ItemGroup>
|
||||
<AllPluginDlls Include="$(PluginsPublishRoot)\**\*"></AllPluginDlls>
|
||||
<PluginDlls Include="$(PluginsPublishRoot)\**\*">
|
||||
<DuplicateDependency>$(AppPublishRoot)%(RecursiveDir)%(Filename)%(Extension)</DuplicateDependency>
|
||||
</PluginDlls>
|
||||
</ItemGroup>
|
||||
</Project>
|
||||
|
|
|
@ -1,39 +0,0 @@
|
|||
{
|
||||
"iisSettings": {
|
||||
"windowsAuthentication": true,
|
||||
"anonymousAuthentication": true,
|
||||
"iisExpress": {
|
||||
"applicationUrl": "http://localhost:54872/",
|
||||
"sslPort": 44326
|
||||
}
|
||||
},
|
||||
"profiles": {
|
||||
"IIS Express": {
|
||||
"commandName": "IISExpress",
|
||||
"launchBrowser": true,
|
||||
"launchUrl": "https://localhost:44326",
|
||||
"environmentVariables": {
|
||||
"ASPNET_ENV": "Development"
|
||||
},
|
||||
"sdkVersion": "dnx-coreclr-win-x64.1.0.0-rc1-final"
|
||||
},
|
||||
"IIS": {},
|
||||
"web": {
|
||||
"commandName": "web",
|
||||
"environmentVariables": {
|
||||
"Hosting:Environment": "Development"
|
||||
}
|
||||
},
|
||||
"Microsoft.IIS.Administration": {
|
||||
"commandName": "Project",
|
||||
"workingDirectory": ".",
|
||||
"launchBrowser": true,
|
||||
"launchUrl": "https://localhost:44326",
|
||||
"environmentVariables": {
|
||||
"USE_CURRENT_DIRECTORY_AS_ROOT": "TRUE",
|
||||
"ASPNETCORE_ENVIRONMENT": "Development"
|
||||
},
|
||||
"applicationUrl": "https://localhost:44326"
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,47 +0,0 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<Description>Bundles together all of the core plugins for the Microsoft IIS Administration API</Description>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
<AssemblyName>Bundle</AssemblyName>
|
||||
<OutputType>Exe</OutputType>
|
||||
<PackageId>Microsoft IIS Administration API Bundle</PackageId>
|
||||
<RuntimeFrameworkVersion>2.0.0</RuntimeFrameworkVersion>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.AccessManagement\Microsoft.IIS.Administration.AccessManagement.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.Certificates\Microsoft.IIS.Administration.Certificates.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.Files\Microsoft.IIS.Administration.Files.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer\Microsoft.IIS.Administration.WebServer.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.Applications\Microsoft.IIS.Administration.WebServer.Applications.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.AppPools\Microsoft.IIS.Administration.WebServer.AppPools.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.Authentication\Microsoft.IIS.Administration.WebServer.Authentication.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.Authorization\Microsoft.IIS.Administration.WebServer.Authorization.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.CentralCertificates\Microsoft.IIS.Administration.WebServer.CentralCertificates.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.Compression\Microsoft.IIS.Administration.WebServer.Compression.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.DefaultDocuments\Microsoft.IIS.Administration.WebServer.DefaultDocuments.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.Delegation\Microsoft.IIS.Administration.WebServer.Delegation.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.DirectoryBrowsing\Microsoft.IIS.Administration.WebServer.DirectoryBrowsing.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.Files\Microsoft.IIS.Administration.WebServer.Files.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.Handlers\Microsoft.IIS.Administration.WebServer.Handlers.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.HttpRedirect\Microsoft.IIS.Administration.WebServer.HttpRedirect.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.HttpRequestTracing\Microsoft.IIS.Administration.WebServer.HttpRequestTracing.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.HttpResponseHeaders\Microsoft.IIS.Administration.WebServer.HttpResponseHeaders.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.Info\Microsoft.IIS.Administration.WebServer.Info.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.IPRestrictions\Microsoft.IIS.Administration.WebServer.IPRestrictions.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.Logging\Microsoft.IIS.Administration.WebServer.Logging.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.Modules\Microsoft.IIS.Administration.WebServer.Modules.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.Monitoring\Microsoft.IIS.Administration.WebServer.Monitoring.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.RequestFiltering\Microsoft.IIS.Administration.WebServer.RequestFiltering.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.RequestMonitor\Microsoft.IIS.Administration.WebServer.RequestMonitor.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.Scm\Microsoft.IIS.Administration.WebServer.Scm.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.Sites\Microsoft.IIS.Administration.WebServer.Sites.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.SslSettings\Microsoft.IIS.Administration.WebServer.SslSettings.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.StaticContent\Microsoft.IIS.Administration.WebServer.StaticContent.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.UrlRewrite\Microsoft.IIS.Administration.WebServer.UrlRewrite.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.VirtualDirectories\Microsoft.IIS.Administration.WebServer.VirtualDirectories.csproj" />
|
||||
<ProjectReference Include="..\..\Microsoft.IIS.Administration.WebServer.WorkerProcesses\Microsoft.IIS.Administration.WebServer.WorkerProcesses.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
|
@ -1,10 +0,0 @@
|
|||
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
||||
|
||||
|
||||
public class Program {
|
||||
public static void Main(string[] args){
|
||||
System.Console.WriteLine("Hello world.");
|
||||
}
|
||||
}
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<Description>Publish all of the core plugins for the Microsoft IIS Administration API</Description>
|
||||
<TargetFramework>netcoreapp2.1</TargetFramework>
|
||||
</PropertyGroup>
|
||||
|
||||
<Target Name="PostBuild" AfterTargets="PostBuildEvent">
|
||||
<Exec Command="dotnet restore $(ProjectDir)../Bundle" />
|
||||
</Target>
|
||||
<Target Name="PostPostBuild" AfterTargets="PostBuild">
|
||||
<Exec Condition="'$(MSBuildRuntimeType)' == 'Core'" Command="dotnet msbuild $(ProjectDir)../Bundle/Bundle.csproj /t:publish /p:PublishDir=$(ProjectDir)../../Microsoft.IIS.Administration/plugins /p:Configuration=$(Configuration)" />
|
||||
<Exec Condition="'$(MSBuildRuntimeType)' != 'Core'" Command=""$(MsBuildToolsPath)\msbuild.exe" $(ProjectDir)..\Bundle\Bundle.csproj /t:publish /p:PublishDir=$(ProjectDir)..\..\Microsoft.IIS.Administration\plugins /p:Configuration=$(Configuration) /p:SignType=$(SignType) /p:SigningIdentity=$(SigningIdentity)" />
|
||||
</Target>
|
||||
</Project>
|
Загрузка…
Ссылка в новой задаче