diff --git a/DotnetCLIVersion.txt b/DotnetCLIVersion.txt
index b8320e32..170f3fc4 100644
--- a/DotnetCLIVersion.txt
+++ b/DotnetCLIVersion.txt
@@ -1 +1 @@
-2.0.0-preview1-005899
+2.0.0-preview1-005977
diff --git a/RepoDirectories.props b/RepoDirectories.props
index caf00182..f9deb67c 100644
--- a/RepoDirectories.props
+++ b/RepoDirectories.props
@@ -12,6 +12,7 @@
$(ObjDir)
+ $(DotNetRestorePackagesPath)
$(RepoRoot)packages/
$(RepoRoot)Tools/
$(ToolRuntimePath)local/
@@ -27,4 +28,8 @@
$(BuildToolsTaskDir)
$(ToolsDir)dotnetcli/
+
+
+ $(BaseIntermediateOutputPath)HostMachineInfo.props
+
diff --git a/build.proj b/build.proj
index 667eb783..9838df21 100644
--- a/build.proj
+++ b/build.proj
@@ -16,6 +16,7 @@
CreateOrUpdateCurrentVersionFile;
CreateVersionInfoFile;
+ CreateHostMachineInfoFile;
BatchRestorePackages;
BuildCustomTasks;
@@ -34,6 +35,26 @@
+
+
+
+
+
+
+
+<Project>
+ <PropertyGroup>
+ <HostMachineRid>$(HostMachineRid)</HostMachineRid>
+ </PropertyGroup>
+</Project>
+
+
+
+
+
+
diff --git a/buildpipeline/Core-Setup-Linux-Arm-BT.json b/buildpipeline/Core-Setup-Linux-Arm-BT.json
index 6457d98a..00ffb3a1 100644
--- a/buildpipeline/Core-Setup-Linux-Arm-BT.json
+++ b/buildpipeline/Core-Setup-Linux-Arm-BT.json
@@ -123,7 +123,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --rm $(PB_CrossBuildArgs)$(DockerCommonRunArgs) $(PB_GitDirectory)/build.sh -OfficialBuildId=$(OfficialBuildId) $(PB_BuildArguments)",
+ "arguments": "run --rm $(PB_CrossBuildArgs)$(DockerCommonRunArgs) $(PB_GitDirectory)/build.sh -OfficialBuildId=$(OfficialBuildId) $(PB_BuildArguments) -- $(PB_AdditionalMSBuildArguments)",
"workingFolder": "$(PB_SourcesDirectory)",
"failOnStandardError": "false"
}
@@ -141,7 +141,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --privileged --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=Linux /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) /p:DebianId_ubuntu1404-x64=$(PB_DebianId_ubuntu1404-x64) /p:DebianId_debian8-x64=$(PB_DebianId_debian8-x64) /p:DebianId_ubuntu1604-x64=$(PB_DebianId_ubuntu1604-x64) /p:DebianId_ubuntu1610-x64=$(PB_DebianId_ubuntu1610-x64)",
+ "arguments": "run --privileged --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:ContainerName=$(PB_ContainerName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumContainerName=$(PB_ChecksumContainerName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=Linux /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) /p:DebianId_ubuntu1404-x64=$(PB_DebianId_ubuntu1404-x64) /p:DebianId_debian8-x64=$(PB_DebianId_debian8-x64) /p:DebianId_ubuntu1604-x64=$(PB_DebianId_ubuntu1604-x64) /p:DebianId_ubuntu1610-x64=$(PB_DebianId_ubuntu1610-x64) $(PB_AdditionalMSBuildArguments)",
"workingFolder": "$(PB_SourcesDirectory)",
"failOnStandardError": "false"
}
@@ -357,19 +357,22 @@
"PB_AzureAccountName": {
"value": "sourcebuild"
},
+ "PB_ContainerName": {
+ "value": "dotnet"
+ },
"PB_AzureAccessToken": {
"value": null,
"isSecret": true
},
- "PB_DistroRid": {
- "value": "ubuntu.14.04-arm"
- },
"PB_TargetArchitecture": {
"value": "arm"
},
"PB_AdditionalBuildArguments": {
"value": ""
},
+ "PB_AdditionalMSBuildArguments": {
+ "value": ""
+ },
"PB_PortableBuild": {
"value": "false"
},
@@ -382,6 +385,9 @@
"PB_ChecksumAzureAccountName": {
"value": "dotnetclichecksums"
},
+ "PB_ChecksumContainerName": {
+ "value": "dotnet"
+ },
"PB_ChecksumAzureAccessToken": {
"value": null,
"isSecret": true
diff --git a/buildpipeline/Core-Setup-Linux-BT.json b/buildpipeline/Core-Setup-Linux-BT.json
index 4aa8b3a9..342fb225 100644
--- a/buildpipeline/Core-Setup-Linux-BT.json
+++ b/buildpipeline/Core-Setup-Linux-BT.json
@@ -141,7 +141,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --privileged --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /p:DistroRid=$(PB_DistroRid) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=Linux /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) /p:DebianId_ubuntu1404-x64=$(PB_DebianId_ubuntu1404-x64) /p:DebianId_debian8-x64=$(PB_DebianId_debian8-x64) /p:DebianId_ubuntu1604-x64=$(PB_DebianId_ubuntu1604-x64) /p:DebianId_ubuntu1610-x64=$(PB_DebianId_ubuntu1610-x64)",
+ "arguments": "run --privileged --rm $(DockerCommonRunArgs) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:ContainerName=$(PB_ContainerName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumContainerName=$(PB_ChecksumContainerName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=Linux /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) /p:DebianId_ubuntu1404-x64=$(PB_DebianId_ubuntu1404-x64) /p:DebianId_debian8-x64=$(PB_DebianId_debian8-x64) /p:DebianId_ubuntu1604-x64=$(PB_DebianId_ubuntu1604-x64) /p:DebianId_ubuntu1610-x64=$(PB_DebianId_ubuntu1610-x64)",
"workingFolder": "$(PB_SourcesDirectory)",
"failOnStandardError": "false"
}
@@ -215,7 +215,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1404) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies /p:DistroRid=$(DistroRid_Ubuntu1404) $(DistroSpecificMSBuildArguments)",
+ "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1404) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies $(DistroSpecificMSBuildArguments)",
"workingFolder": "",
"failOnStandardError": "false"
}
@@ -233,7 +233,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1404) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) /p:DistroRid=$(DistroRid_Ubuntu1404) $(DistroSpecificMSBuildArguments)",
+ "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1404) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) $(DistroSpecificMSBuildArguments)",
"workingFolder": "",
"failOnStandardError": "false"
}
@@ -251,7 +251,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1404) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Ubuntu1404) /p:PublishDebToolToFeed=true /p:CliNuGetFeedUrl=$(CLI_NUGET_FEED_URL) /p:CliNuGetApiKey=$(CLI_NUGET_API_KEY) $(DistroSpecificMSBuildArguments) $(DistroSpecificMSBuildPublishArgs)",
+ "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1404) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:PublishDebToolToFeed=true /p:CliNuGetFeedUrl=$(CLI_NUGET_FEED_URL) /p:CliNuGetApiKey=$(CLI_NUGET_API_KEY) $(DistroSpecificMSBuildArguments) $(DistroSpecificMSBuildPublishArgs)",
"workingFolder": "",
"failOnStandardError": "false"
}
@@ -305,7 +305,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1604) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies /p:DistroRid=$(DistroRid_Ubuntu1604) $(DistroSpecificMSBuildArguments)",
+ "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1604) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies $(DistroSpecificMSBuildArguments)",
"workingFolder": "",
"failOnStandardError": "false"
}
@@ -323,7 +323,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1604) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) /p:DistroRid=$(DistroRid_Ubuntu1604) $(DistroSpecificMSBuildArguments)",
+ "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1604) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) $(DistroSpecificMSBuildArguments)",
"workingFolder": "",
"failOnStandardError": "false"
}
@@ -341,7 +341,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1604) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Ubuntu1604) $(DistroSpecificMSBuildArguments) $(DistroSpecificMSBuildPublishArgs)",
+ "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1604) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj $(DistroSpecificMSBuildArguments) $(DistroSpecificMSBuildPublishArgs)",
"workingFolder": "",
"failOnStandardError": "false"
}
@@ -395,7 +395,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1610) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies /p:DistroRid=$(DistroRid_Ubuntu1610) $(DistroSpecificMSBuildArguments)",
+ "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1610) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies $(DistroSpecificMSBuildArguments)",
"workingFolder": "",
"failOnStandardError": "false"
}
@@ -413,7 +413,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1610) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) /p:DistroRid=$(DistroRid_Ubuntu1610) $(DistroSpecificMSBuildArguments)",
+ "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1610) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) $(DistroSpecificMSBuildArguments)",
"workingFolder": "",
"failOnStandardError": "false"
}
@@ -431,7 +431,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1610) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Ubuntu1610) $(DistroSpecificMSBuildArguments) $(DistroSpecificMSBuildPublishArgs)",
+ "arguments": "run --rm $(DockerCommonRunArgs_Ubuntu1610) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj $(DistroSpecificMSBuildArguments) $(DistroSpecificMSBuildPublishArgs)",
"workingFolder": "",
"failOnStandardError": "false"
}
@@ -485,7 +485,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --rm $(DockerCommonRunArgs_Debian8) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies /p:DistroRid=$(DistroRid_Debian8) $(DistroSpecificMSBuildArguments)",
+ "arguments": "run --rm $(DockerCommonRunArgs_Debian8) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies $(DistroSpecificMSBuildArguments)",
"workingFolder": "",
"failOnStandardError": "false"
}
@@ -503,7 +503,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --rm $(DockerCommonRunArgs_Debian8) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) /p:DistroRid=$(DistroRid_Debian8) $(DistroSpecificMSBuildArguments)",
+ "arguments": "run --rm $(DockerCommonRunArgs_Debian8) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) $(DistroSpecificMSBuildArguments)",
"workingFolder": "",
"failOnStandardError": "false"
}
@@ -521,7 +521,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --rm $(DockerCommonRunArgs_Debian8) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Debian8) $(DistroSpecificMSBuildArguments) $(DistroSpecificMSBuildPublishArgs)",
+ "arguments": "run --rm $(DockerCommonRunArgs_Debian8) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj $(DistroSpecificMSBuildArguments) $(DistroSpecificMSBuildPublishArgs)",
"workingFolder": "",
"failOnStandardError": "false"
}
@@ -575,7 +575,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --rm $(DockerCommonRunArgs_Debian9) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies /p:DistroRid=$(DistroRid_Debian9) $(DistroSpecificMSBuildArguments)",
+ "arguments": "run --rm $(DockerCommonRunArgs_Debian9) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies $(DistroSpecificMSBuildArguments)",
"workingFolder": "",
"failOnStandardError": "false"
}
@@ -593,7 +593,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --rm $(DockerCommonRunArgs_Debian9) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) /p:DistroRid=$(DistroRid_Debian9) $(DistroSpecificMSBuildArguments)",
+ "arguments": "run --rm $(DockerCommonRunArgs_Debian9) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) $(DistroSpecificMSBuildArguments)",
"workingFolder": "",
"failOnStandardError": "false"
}
@@ -611,7 +611,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --rm $(DockerCommonRunArgs_Debian9) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Debian9) $(DistroSpecificMSBuildArguments) $(DistroSpecificMSBuildPublishArgs)",
+ "arguments": "run --rm $(DockerCommonRunArgs_Debian9) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj $(DistroSpecificMSBuildArguments) $(DistroSpecificMSBuildPublishArgs)",
"workingFolder": "",
"failOnStandardError": "false"
}
@@ -665,7 +665,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --rm $(DockerCommonRunArgs_Rhel7) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies /p:DistroRid=$(DistroRid_Rhel7) $(DistroSpecificMSBuildArguments)",
+ "arguments": "run --rm $(DockerCommonRunArgs_Rhel7) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/build.proj /t:BuildTraversalBuildDependencies $(DistroSpecificMSBuildArguments)",
"workingFolder": "",
"failOnStandardError": "false"
}
@@ -683,7 +683,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --rm $(DockerCommonRunArgs_Rhel7) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) /p:DistroRid=$(DistroRid_Rhel7) $(DistroSpecificMSBuildArguments)",
+ "arguments": "run --rm $(DockerCommonRunArgs_Rhel7) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/src/pkg/packaging/dir.proj $(AdditionalMSBuildProperties) $(DistroSpecificMSBuildArguments)",
"workingFolder": "",
"failOnStandardError": "false"
}
@@ -701,7 +701,7 @@
},
"inputs": {
"filename": "docker",
- "arguments": "run --rm $(DockerCommonRunArgs_Rhel7) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj /p:DistroRid=$(DistroRid_Rhel7) $(DistroSpecificMSBuildArguments) $(DistroSpecificMSBuildPublishArgs)",
+ "arguments": "run --rm $(DockerCommonRunArgs_Rhel7) $(PB_GitDirectory)/Tools/msbuild.sh $(PB_GitDirectory)/publish/publish.proj $(DistroSpecificMSBuildArguments) $(DistroSpecificMSBuildPublishArgs)",
"workingFolder": "",
"failOnStandardError": "false"
}
@@ -854,6 +854,9 @@
"PB_ChecksumAzureAccountName": {
"value": "dotnetclichecksums"
},
+ "PB_ChecksumContainerName": {
+ "value": "dotnet"
+ },
"PB_ChecksumAzureAccessToken": {
"value": null,
"isSecret": true
@@ -928,13 +931,13 @@
"PB_AzureAccountName": {
"value": "sourcebuild"
},
+ "PB_ContainerName": {
+ "value": "dotnet"
+ },
"PB_AzureAccessToken": {
"value": null,
"isSecret": true
},
- "PB_DistroRid": {
- "value": "ubuntu.14.04-$(PB_TargetArchitecture)"
- },
"PB_TargetArchitecture": {
"value": "x64"
},
@@ -957,7 +960,7 @@
"value": "/flp:v=diag /p:TargetArchitecture=$(PB_TargetArchitecture) /p:PortableBuild=false /p:ConfigurationGroup=$(BuildConfiguration) /p:OSGroup=Linux /p:OfficialBuildId=$(OfficialBuildId)"
},
"DistroSpecificMSBuildPublishArgs": {
- "value": "/p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) $(PB_DebianKeys)"
+ "value": "/p:AzureAccountName=$(PB_AzureAccountName) /p:ContainerName=$(PB_ContainerName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumContainerName=$(PB_ChecksumContainerName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /p:DebRepoUser=$(PB_DebRepoUser) /p:DebRepoServer=$(PB_DebRepoServer) /p:DebRepoPass=$(DEB_REPO_PASSWORD) $(PB_DebianKeys)"
},
"PB_DebianKeys": {
"value": "/p:DebianId_ubuntu1404-x64=$(PB_DebianId_ubuntu1404-x64) /p:DebianId_debian8-x64=$(PB_DebianId_debian8-x64) /p:DebianId_debian9-x64=$(PB_DebianId_debian9-x64) /p:DebianId_ubuntu1604-x64=$(PB_DebianId_ubuntu1604-x64) /p:DebianId_ubuntu1610-x64=$(PB_DebianId_ubuntu1610-x64)"
@@ -965,9 +968,6 @@
"DockerTag_Ubuntu1404": {
"value": "ubuntu-14.04-debpkg-e5cf912-20175003025046"
},
- "DistroRid_Ubuntu1404": {
- "value": "ubuntu.14.04-x64"
- },
"DockerImageName_Ubuntu1404": {
"value": "$(PB_DockerRepository):$(DockerTag_Ubuntu1404)"
},
@@ -977,9 +977,6 @@
"DockerTag_Ubuntu1604": {
"value": "ubuntu-16.04-debpkg-e5cf912-20174703024721"
},
- "DistroRid_Ubuntu1604": {
- "value": "ubuntu.16.04-$(PB_TargetArchitecture)"
- },
"DockerImageName_Ubuntu1604": {
"value": "$(PB_DockerRepository):$(DockerTag_Ubuntu1604)"
},
@@ -989,9 +986,6 @@
"DockerTag_Ubuntu1610": {
"value": "ubuntu-16.10-debpkg-ec863bb-20170003030028"
},
- "DistroRid_Ubuntu1610": {
- "value": "ubuntu.16.10-$(PB_TargetArchitecture)"
- },
"DockerImageName_Ubuntu1610": {
"value": "$(PB_DockerRepository):$(DockerTag_Ubuntu1610)"
},
@@ -1001,9 +995,6 @@
"DockerTag_Debian8": {
"value": "debian-8.2-debpkg-9f87c3c-20173003023006"
},
- "DistroRid_Debian8": {
- "value": "debian.8-$(PB_TargetArchitecture)"
- },
"DockerImageName_Debian8": {
"value": "$(PB_DockerRepository):$(DockerTag_Debian8)"
},
@@ -1013,9 +1004,6 @@
"DockerTag_Debian9": {
"value": "debian-8.2-debpkg-9f87c3c-20173003023006"
},
- "DistroRid_Debian9": {
- "value": "debian.9-$(PB_TargetArchitecture)"
- },
"DockerImageName_Debian9": {
"value": "$(PB_DockerRepository):$(DockerTag_Debian9)"
},
@@ -1025,9 +1013,6 @@
"DockerTag_Rhel7": {
"value": "rhel-7-rpmpkg-c982313-20174116044113"
},
- "DistroRid_Rhel7": {
- "value": "rhel.7-$(PB_TargetArchitecture)"
- },
"DockerImageName_Rhel7": {
"value": "$(PB_DockerRepository):$(DockerTag_Rhel7)"
},
diff --git a/buildpipeline/Core-Setup-OSX-BT.json b/buildpipeline/Core-Setup-OSX-BT.json
index 7872962e..e3273cbb 100644
--- a/buildpipeline/Core-Setup-OSX-BT.json
+++ b/buildpipeline/Core-Setup-OSX-BT.json
@@ -85,7 +85,7 @@
},
"inputs": {
"filename": "$(PB_SourcesDirectory)/Tools/msbuild.sh",
- "arguments": "$(PB_SourcesDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=OSX",
+ "arguments": "$(PB_SourcesDirectory)/publish/publish.proj /p:AzureAccountName=$(PB_AzureAccountName) /p:ContainerName=$(PB_ContainerName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumContainerName=$(PB_ChecksumContainerName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:ConfigurationGroup=$(BuildConfiguration) /p:PortableBuild=$(PB_PortableBuild) /p:OSGroup=OSX",
"workingFolder": "$(PB_SourcesDirectory)",
"failOnStandardError": "false"
}
@@ -193,6 +193,9 @@
"PB_AzureAccountName": {
"value": "sourcebuild"
},
+ "PB_ContainerName": {
+ "value": "dotnet"
+ },
"PB_AzureAccessToken": {
"value": null,
"isSecret": true
@@ -200,6 +203,9 @@
"PB_ChecksumAzureAccountName": {
"value": "dotnetclichecksums"
},
+ "PB_ChecksumContainerName": {
+ "value": "dotnet"
+ },
"PB_ChecksumAzureAccessToken": {
"value": null,
"isSecret": true
diff --git a/buildpipeline/Core-Setup-Publish.json b/buildpipeline/Core-Setup-Publish.json
index bedc27a2..94c9eb85 100644
--- a/buildpipeline/Core-Setup-Publish.json
+++ b/buildpipeline/Core-Setup-Publish.json
@@ -232,7 +232,7 @@
"solution": "$(PB_SourcesDirectory)\\publish\\publish.proj",
"platform": "$(PB_TargetArchitecture)",
"configuration": "$(BuildConfiguration)",
- "msbuildArguments": "/p:Configuration=$(BuildConfiguration) $(PB_CommonMSBuildArgs) /p:SignType=$(PB_SignType) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /p:GitHubUser=$(PB_GitHubUser) /p:GitHubEmail=$(PB_GitHubEmail) /p:GitHubAuthToken=$(GITHUB_PASSWORD) /p:VersionsRepoOwner=$(PB_VersionsRepoOwner) /p:VersionsRepo=$(PB_VersionsRepo) /p:VersionsRepoPath=build-info/dotnet/$(PB_RepoName)/$(SourceBranch) /p:Finalize=true /p:DotNetToolDir=$(DotNetToolDir) /p:EmbedIndexToolDir=$(EmbedIndexToolDir) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log",
+ "msbuildArguments": "/p:Configuration=$(BuildConfiguration) $(PB_CommonMSBuildArgs) /p:SignType=$(PB_SignType) /p:NuGetFeedUrl=$(NUGET_FEED_URL) /p:NuGetSymbolsFeedUrl=$(NUGET_SYMBOLS_FEED_URL) /p:NuGetApiKey=$(NUGET_API_KEY) /p:AzureAccountName=$(PB_AzureAccountName) /p:ContainerName=$(PB_ContainerName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumContainerName=$(PB_ChecksumContainerName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /p:GitHubUser=$(PB_GitHubUser) /p:GitHubEmail=$(PB_GitHubEmail) /p:GitHubAuthToken=$(GITHUB_PASSWORD) /p:VersionsRepoOwner=$(PB_VersionsRepoOwner) /p:VersionsRepo=$(PB_VersionsRepo) /p:VersionsRepoPath=build-info/dotnet/$(PB_RepoName)/$(SourceBranch) /p:Finalize=true /p:DotNetToolDir=$(DotNetToolDir) /p:EmbedIndexToolDir=$(EmbedIndexToolDir) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log",
"clean": "false",
"maximumCpuCount": "false",
"restoreNugetPackages": "false",
@@ -363,9 +363,6 @@
"value": null,
"isSecret": true
},
- "PB_DistroRid": {
- "value": "win7-x64"
- },
"NUGET_SYMBOLS_FEED_URL": {
"value": "https:%2F%2Fdotnet.myget.org/F/dotnet-core/symbols/api/v2/package"
},
@@ -378,6 +375,9 @@
"PB_AzureAccountName": {
"value": "dotnetcli"
},
+ "PB_ContainerName": {
+ "value": "dotnet"
+ },
"PB_AzureAccessToken": {
"value": null,
"isSecret": true
@@ -385,6 +385,9 @@
"PB_ChecksumAzureAccountName": {
"value": "dotnetclichecksums"
},
+ "PB_ChecksumContainerName": {
+ "value": "dotnet"
+ },
"PB_ChecksumAzureAccessToken": {
"value": null,
"isSecret": true
@@ -400,7 +403,7 @@
"value": "HEAD"
},
"PB_CommonMSBuildArgs": {
- "value": "/p:DistroRid=$(PB_DistroRid) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetArchitecture=$(PB_TargetArchitecture)"
+ "value": "/p:ConfigurationGroup=$(BuildConfiguration) /p:TargetArchitecture=$(PB_TargetArchitecture)"
},
"OfficialBuildId": {
"value": "$(Build.BuildNumber)"
diff --git a/buildpipeline/Core-Setup-Windows-Arm-BT.json b/buildpipeline/Core-Setup-Windows-Arm-BT.json
index dc0a4f91..6437f8cb 100644
--- a/buildpipeline/Core-Setup-Windows-Arm-BT.json
+++ b/buildpipeline/Core-Setup-Windows-Arm-BT.json
@@ -291,7 +291,7 @@
"msbuildLocation": "",
"platform": "$(PB_TargetArchitecture)",
"configuration": "$(BuildConfiguration)",
- "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken)",
+ "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:ContainerName=$(PB_ContainerName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumContainerName=$(PB_ChecksumContainerName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken)",
"clean": "false",
"maximumCpuCount": "false",
"restoreNugetPackages": "false",
@@ -445,10 +445,6 @@
"CertificateId": {
"value": "400"
},
- "PB_DistroRid": {
- "value": "win-$(PB_TargetArchitecture)",
- "allowOverride": true
- },
"MsbuildSigningArguments": {
"value": "/p:CertificateId=$(CertificateId) /v:detailed /p:SignType=$(PB_SignType)"
},
@@ -468,6 +464,9 @@
"PB_ChecksumAzureAccountName": {
"value": "dotnetclichecksums"
},
+ "PB_ChecksumContainerName": {
+ "value": "dotnet"
+ },
"PB_ChecksumAzureAccessToken": {
"value": null,
"isSecret": true
@@ -478,6 +477,9 @@
"PB_AzureAccountName": {
"value": "sourcebuild"
},
+ "PB_ContainerName": {
+ "value": "dotnet"
+ },
"PB_AzureAccessToken": {
"value": null,
"isSecret": true
@@ -501,7 +503,7 @@
"allowOverride": true
},
"PB_CommonMSBuildArgs": {
- "value": "/p:DistroRid=$(PB_DistroRid) /p:ConfigurationGroup=$(BuildConfiguration) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:PortableBuild=$(PB_PortableBuild) /p:DisableCrossgen=true $(PB_AdditionalBuildArguments)"
+ "value": "/p:ConfigurationGroup=$(BuildConfiguration) /p:TargetArchitecture=$(PB_TargetArchitecture) /p:PortableBuild=$(PB_PortableBuild) /p:DisableCrossgen=true $(PB_AdditionalBuildArguments)"
},
"PB_AdditionalBuildArguments": {
"value": ""
diff --git a/buildpipeline/Core-Setup-Windows-BT.json b/buildpipeline/Core-Setup-Windows-BT.json
index dc50ac94..98cb1fd1 100644
--- a/buildpipeline/Core-Setup-Windows-BT.json
+++ b/buildpipeline/Core-Setup-Windows-BT.json
@@ -480,7 +480,7 @@
"msbuildLocation": "",
"platform": "$(PB_TargetArchitecture)",
"configuration": "$(BuildConfiguration)",
- "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:PublishRidAgnosticPackages=$(PB_PublishRidAgnosticPackages) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log",
+ "msbuildArguments": "$(PB_CommonMSBuildArgs) /p:AzureAccountName=$(PB_AzureAccountName) /p:ContainerName=$(PB_ContainerName) /p:AzureAccessToken=$(PB_AzureAccessToken) /p:PublishRidAgnosticPackages=$(PB_PublishRidAgnosticPackages) /p:BuildFullPlatformManifest=$(PB_BuildFullPlatformManifest) /p:ChecksumAzureAccountName=$(PB_ChecksumAzureAccountName) p:ChecksumContainerName=$(PB_ChecksumContainerName) /p:ChecksumAzureAccessToken=$(PB_ChecksumAzureAccessToken) /flp:v=detailed;LogFile=$(PB_SourcesDirectory)\\publish.log",
"clean": "false",
"maximumCpuCount": "false",
"restoreNugetPackages": "false",
@@ -644,6 +644,9 @@
"PB_AzureAccountName": {
"value": "sourcebuild"
},
+ "PB_ContainerName": {
+ "value": "dotnet"
+ },
"PB_Branch": {
"value": "master",
"allowOverride": true
@@ -658,6 +661,9 @@
"PB_ChecksumAzureAccountName": {
"value": "dotnetclichecksums"
},
+ "PB_ChecksumContainerName": {
+ "value": "dotnet"
+ },
"PB_CleanAgent": {
"value": "true"
},
@@ -761,7 +767,6 @@
"clean": "false",
"checkoutSubmodules": false
},
- "processParameters": {},
"quality": "definition",
"queue": {
"id": 36,
diff --git a/buildpipeline/pipeline.json b/buildpipeline/pipeline.json
index 07db339c..848f4495 100644
--- a/buildpipeline/pipeline.json
+++ b/buildpipeline/pipeline.json
@@ -18,7 +18,6 @@
{
"Name": "Core-Setup-Linux-BT",
"Parameters": {
- "PB_DistroRid": "rhel.7.2-x64",
"PB_DockerTag": "rhel7_prereqs_2",
"PB_AdditionalBuildArguments":"-PortableBuild=true -strip-symbols",
"PB_PortableBuild": "true"
@@ -33,10 +32,10 @@
{
"Name": "Core-Setup-Linux-Arm-BT",
"Parameters": {
- "PB_DistroRid": "rhel.6-x64",
"PB_DockerTag": "centos-6-c8c9b08-20174310104313",
"PB_TargetArchitecture": "x64",
- "PB_AdditionalBuildArguments":"-TargetArchitecture=x64 -DistroRid=rhel.6-x64 -PortableBuild=false -strip-symbols",
+ "PB_AdditionalBuildArguments":"-TargetArchitecture=x64 -PortableBuild=false -strip-symbols",
+ "PB_AdditionalMSBuildArguments":"/p:OutputRid=rhel.6-x64",
"PB_PortableBuild": "false"
},
"ReportingParameters": {
@@ -48,10 +47,9 @@
{
"Name": "Core-Setup-Linux-Arm-BT",
"Parameters": {
- "PB_DistroRid": "ubuntu.14.04-arm",
"PB_DockerTag": "ubuntu-14.04-cross-0cd4667-20172211042239",
"PB_TargetArchitecture": "arm",
- "PB_AdditionalBuildArguments":"-TargetArchitecture=arm -DistroRid=linux-arm -DisableCrossgen=true -PortableBuild=true -SkipTests=true -CrossBuild=true -strip-symbols",
+ "PB_AdditionalBuildArguments":"-TargetArchitecture=arm -DisableCrossgen=true -PortableBuild=true -SkipTests=true -CrossBuild=true -strip-symbols",
"PB_CrossBuildArgs": "-e ROOTFS_DIR ",
"PB_PortableBuild": "true"
},
@@ -108,7 +106,6 @@
{
"Name": "Core-Setup-Windows-BT",
"Parameters": {
- "PB_DistroRid": "win7-x64",
"PB_TargetArchitecture": "x64",
"PB_PortableBuild": "true",
"PB_PublishRidAgnosticPackages": "true",
@@ -124,7 +121,6 @@
{
"Name": "Core-Setup-Windows-BT",
"Parameters": {
- "PB_DistroRid": "win7-x86",
"PB_TargetArchitecture": "x86",
"PB_PortableBuild": "true"
},
diff --git a/config.json b/config.json
index 2a113767..f20b4d59 100644
--- a/config.json
+++ b/config.json
@@ -30,12 +30,6 @@
"values": [ "True", "False"],
"defaultValue": "False"
},
- "DistroRid": {
- "description": "Specifies the distro rid for Unix OS.",
- "valueType": "property",
- "values": [],
- "defaultValue": "${OSRid}-${CPUArch}"
- },
"TargetArchitecture":{
"description": "Build for the specified architecture (x64, x86 (supported only on Windows), arm, or arm64, default: x64)",
"valueType": "property",
@@ -270,7 +264,6 @@
"TargetArchitecture": "default",
"OSGroup": "default",
"MsBuildLogging":"default",
- "DistroRid":"default",
"Project":"build.proj"
}
}
diff --git a/dependencies.props b/dependencies.props
index a9506aa5..51c9a4ee 100644
--- a/dependencies.props
+++ b/dependencies.props
@@ -35,6 +35,16 @@
$(MSBuildThisFileFullPath)
+
+
+ 15.1.1012
+ $(MicrosoftBuildPackageVersion)
+ $(MicrosoftBuildPackageVersion)
+ $(MicrosoftBuildPackageVersion)
+
+ 1.1.1
+
+
$(BaseDotNetBuildInfo)corefx/$(DependencyBranch)
diff --git a/dir.props b/dir.props
index c6a5dc23..36b18cd9 100644
--- a/dir.props
+++ b/dir.props
@@ -38,10 +38,23 @@
$(OS)
+
+
+
+ $(OverridePackageSource);
+ https://dotnet.myget.org/F/dotnet-core/api/v3/index.json;
+ https://dotnet.myget.org/F/cli-deps/api/v3/index.json;
+ https://dotnet.myget.org/F/dotnet-buildtools/api/v3/index.json;
+ https://www.myget.org/F/nugetbuild/api/v3/index.json;
+ https://api.nuget.org/v3/index.json;
+ https://dotnet.myget.org/F/dotnet-corefxlab/api/v3/index.json;
+
+
+
-
+
$(PreReleaseLabel)-
$(VersionSuffix)$(BuildNumberMajor)-$(BuildNumberMinor)
@@ -60,11 +73,11 @@
@@ -75,20 +88,20 @@
false
$(ProductVersion)
2.0.0
-
-
false
$(ProductVersion)
2.0.0
-
false
$(ProductVersion)
@@ -98,18 +111,6 @@
Runtime/$(SharedFrameworkNugetVersion)
-
-
-
-
-
-
-
-
-
-
-
-
@@ -119,6 +120,8 @@
DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
$(DotnetRestorePrefix)$(DotnetRestoreCommand)
+
+ $(DotnetRestorePrefix)"$(DotnetToolCommand)" restore $(DotnetRestoreSource)
@@ -130,7 +133,7 @@
x64
$(TargetArchitecture)
-
- win-$(TargetArchitecture)
- osx-$(TargetArchitecture)
- linux-$(TargetArchitecture)
+ win-$(TargetArchitecture)
+ osx-$(TargetArchitecture)
+ linux-$(TargetArchitecture)
- win10-$(TargetArchitecture)
- $(TargetRid)
+ $(OutputRid)
- $(TargetRid).$(ConfigurationGroup)
+ $(OutputRid).$(ConfigurationGroup)
$(BinDir)
$(BaseOutputPath)$(OSPlatformConfig)\
@@ -251,12 +248,11 @@
$(IntermediateOutputRootPath)sharedFrameworkPublish\
$(IntermediateOutputRootPath)sharedFrameworkPublish.symbols\
- $(SharedFrameworkPublishDir)shared\$(SharedFrameworkName)\$(SharedFrameworkNugetVersion)
false
- $(BaseOutputRootPath)sharedfx_$(TargetRid)_$(ConfigurationGroup)_version_badge.svg
+ $(BaseOutputRootPath)sharedfx_$(OutputRid)_$(ConfigurationGroup)_version_badge.svg
@@ -294,39 +290,39 @@
false
-
+
true
-
+
true
true
-
+
true
true
true
-
+
true
true
true
-
+
true
true
true
-
+
true
true
@@ -349,18 +345,18 @@
.deb
.rpm
.exe
- $(InstallerExtension)
+ $(InstallerExtension)
-
- $(TargetRid)
- osx.10.10-x64
- rhel.7-x64
- rhel.7-x64
- rhel.7-x64
- rhel.7-x64
- rhel.7-x64
+
+ $(OutputRid)
+ osx.10.10-x64
+ rhel.7-x64
+ rhel.7-x64
+ rhel.7-x64
+ rhel.7-x64
+ rhel.7-x64
$(SharedFrameworkNugetVersion)-$(PackageTargetRid)
$(HostResolverVersion)-$(PackageTargetRid)
@@ -372,7 +368,7 @@
$(HostFxrInstallerStart)$(HostResolverVersionMoniker)$(InstallerExtension)
$(SharedFrameworkInstallerStart)$(ProductMoniker)$(InstallerExtension)
-
+
dotnet-host
$(SharedHostDebPkgName.ToLower())
@@ -419,6 +415,11 @@
/p:OSGroup=$(OSGroup) /p:DistroRid=$(DistroRid) /p:PortableBuild=$(PortableBuild) /p:TargetArchitecture=$(TargetArchitecture) /p:ConfigurationGroup=$(ConfigurationGroup)
+
+
+ --no-restore
+
+
diff --git a/init-tools.cmd b/init-tools.cmd
index 40fca031..7f31e164 100644
--- a/init-tools.cmd
+++ b/init-tools.cmd
@@ -12,9 +12,6 @@ set BUILD_TOOLS_PATH=%PACKAGES_DIR%Microsoft.DotNet.BuildTools\%BUILDTOOLS_VERSI
set INIT_TOOLS_RESTORE_PROJECT=%~dp0init-tools.msbuild
set BUILD_TOOLS_SEMAPHORE=%TOOLRUNTIME_DIR%\%BUILDTOOLS_VERSION%\init-tools.completed
-:: We do not want to run the first-time experience.
-set DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
-
:: if force option is specified then clean the tool runtime and build tools package directory to force it to get recreated
if [%1]==[force] (
if exist "%TOOLRUNTIME_DIR%" rmdir /S /Q "%TOOLRUNTIME_DIR%"
@@ -29,10 +26,24 @@ if exist "%BUILD_TOOLS_SEMAPHORE%" (
if exist "%TOOLRUNTIME_DIR%" rmdir /S /Q "%TOOLRUNTIME_DIR%"
+if exist "%DotNetBuildToolsDir%" (
+ echo Using tools from '%DotNetBuildToolsDir%'.
+ mklink /j "%TOOLRUNTIME_DIR%" "%DotNetBuildToolsDir%"
+
+ if not exist "%DOTNET_CMD%" (
+ echo ERROR: Ensure that '%DotNetBuildToolsDir%' contains the .NET Core SDK at '%DOTNET_PATH%'
+ exit /b 1
+ )
+
+ echo Done initializing tools.
+ echo Using tools from '%DotNetBuildToolsDir%'. > "%BUILD_TOOLS_SEMAPHORE%"
+ exit /b 0
+)
+
echo Running %0 > "%INIT_TOOLS_LOG%"
set /p DOTNET_VERSION=< "%~dp0DotnetCLIVersion.txt"
-if exist "%DOTNET_CMD%" goto :afterdotnetinstall
+if exist "%DOTNET_CMD%" goto :afterdotnetrestore
echo Installing dotnet cli...
if NOT exist "%DOTNET_PATH%" mkdir "%DOTNET_PATH%"
@@ -46,7 +57,7 @@ if NOT exist "%DOTNET_LOCAL_PATH%" (
exit /b 1
)
-:afterdotnetinstall
+:afterdotnetrestore
if exist "%BUILD_TOOLS_PATH%" goto :afterbuildtoolsrestore
echo Restoring BuildTools version %BUILDTOOLS_VERSION%...
diff --git a/init-tools.sh b/init-tools.sh
index d6a60130..3c1a0a73 100755
--- a/init-tools.sh
+++ b/init-tools.sh
@@ -12,126 +12,116 @@ __BUILD_TOOLS_PACKAGE_VERSION=$(cat $__scriptpath/BuildToolsVersion.txt)
__DOTNET_TOOLS_VERSION=$(cat $__scriptpath/DotnetCLIVersion.txt)
__BUILD_TOOLS_PATH=$__PACKAGES_DIR/microsoft.dotnet.buildtools/$__BUILD_TOOLS_PACKAGE_VERSION/lib
__INIT_TOOLS_RESTORE_PROJECT=$__scriptpath/init-tools.msbuild
-__INIT_TOOLS_DONE_MARKER_DIR=$__TOOLRUNTIME_DIR/$__BUILD_TOOLS_PACKAGE_VERSION
-__INIT_TOOLS_DONE_MARKER=$__INIT_TOOLS_DONE_MARKER_DIR/done
+__BUILD_TOOLS_SEMAPHORE=$__TOOLRUNTIME_DIR/$__BUILD_TOOLS_PACKAGE_VERSION/init-tools.complete
-# We do not want to run the first-time experience.
-export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
-
-if [ -z "$__DOTNET_PKG" ]; then
- if [ "$(uname -m | grep "i[3456]86")" = "i686" ]; then
- echo "Warning: build not supported on 32 bit Unix"
- fi
-OSName=$(uname -s)
- case $OSName in
- Darwin)
- OS=OSX
- __DOTNET_PKG=dotnet-dev-osx-x64
- ulimit -n 2048
- ;;
-
- Linux)
- __DOTNET_PKG=dotnet-dev-linux-x64
- OS=Linux
-
- if [ -e /etc/os-release ]; then
- source /etc/os-release
- if [[ $ID == "alpine" ]]; then
- # remove the last version digit
- VERSION_ID=${VERSION_ID%.*}
- __DOTNET_PKG=dotnet-dev-alpine.$VERSION_ID-x64
- fi
- elif [ -e /etc/redhat-release ]; then
- redhatRelease=$( $__init_tools_log
+if [ -d "$DotNetBuildToolsDir" ]; then
+ echo "Using tools from '$DotNetBuildToolsDir'."
+ ln -s "$DotNetBuildToolsDir" "$__TOOLRUNTIME_DIR"
- if [ ! -e $__DOTNET_PATH ]; then
-
- mkdir -p "$__DOTNET_PATH"
-
- if [ -n "$DOTNET_TOOLSET_DIR" ] && [ -d "$DOTNET_TOOLSET_DIR/$__DOTNET_TOOLS_VERSION" ]; then
- echo "Copying $DOTNET_TOOLSET_DIR/$__DOTNET_TOOLS_VERSION to $__DOTNET_PATH" >> $__init_tools_log
- cp -r $DOTNET_TOOLSET_DIR/$__DOTNET_TOOLS_VERSION/* $__DOTNET_PATH
- elif [ -n "$DOTNET_TOOL_DIR" ] && [ -d "$DOTNET_TOOL_DIR" ]; then
- echo "Copying $DOTNET_TOOL_DIR to $__DOTNET_PATH" >> $__init_tools_log
- cp -r $DOTNET_TOOL_DIR/* $__DOTNET_PATH
- else
- echo "Installing dotnet cli..."
- __DOTNET_LOCATION="https://dotnetcli.azureedge.net/dotnet/Sdk/${__DOTNET_TOOLS_VERSION}/${__DOTNET_PKG}.${__DOTNET_TOOLS_VERSION}.tar.gz"
- # curl has HTTPS CA trust-issues less often than wget, so lets try that first.
- echo "Installing '${__DOTNET_LOCATION}' to '$__DOTNET_PATH/dotnet.tar'" >> $__init_tools_log
- which curl > /dev/null 2> /dev/null
- if [ $? -ne 0 ]; then
- wget -q -O $__DOTNET_PATH/dotnet.tar ${__DOTNET_LOCATION}
- else
- curl --retry 10 -sSL --create-dirs -o $__DOTNET_PATH/dotnet.tar ${__DOTNET_LOCATION}
- fi
- cd $__DOTNET_PATH
- tar -xf $__DOTNET_PATH/dotnet.tar
-
- cd $__scriptpath
-
- __PATCH_CLI_NUGET_FRAMEWORKS=1
- fi
+ if [ ! -e "$__DOTNET_CMD" ]; then
+ echo "ERROR: Ensure that $DotNetBuildToolsDir contains the .NET Core SDK at $__DOTNET_PATH"
+ exit 1
fi
-
- if [ -n "$BUILD_TOOLS_TOOLSET_DIR" ] && [ -d "$BUILD_TOOLS_TOOLSET_DIR/$__BUILD_TOOLS_PACKAGE_VERSION" ]; then
- echo "Copying $BUILD_TOOLS_TOOLSET_DIR/$__BUILD_TOOLS_PACKAGE_VERSION to $__TOOLRUNTIME_DIR" >> $__init_tools_log
- cp -r $BUILD_TOOLS_TOOLSET_DIR/$__BUILD_TOOLS_PACKAGE_VERSION/* $__TOOLRUNTIME_DIR
- elif [ -n "$BUILD_TOOLS_TOOL_DIR" ] && [ -d "$BUILD_TOOLS_TOOL_DIR" ]; then
- echo "Copying $BUILD_TOOLS_TOOL_DIR to $__TOOLRUNTIME_DIR" >> $__init_tools_log
- cp -r $BUILD_TOOLS_TOOL_DIR/* $__TOOLRUNTIME_DIR
- else
- if [ ! -e $__BUILD_TOOLS_PATH ]; then
- echo "Restoring BuildTools version $__BUILD_TOOLS_PACKAGE_VERSION..."
- echo "Running: $__DOTNET_CMD restore \"$__INIT_TOOLS_RESTORE_PROJECT\" --no-cache --packages $__PACKAGES_DIR --source $__BUILDTOOLS_SOURCE /p:BuildToolsPackageVersion=$__BUILD_TOOLS_PACKAGE_VERSION" >> $__init_tools_log
- $__DOTNET_CMD restore "$__INIT_TOOLS_RESTORE_PROJECT" --no-cache --packages $__PACKAGES_DIR --source $__BUILDTOOLS_SOURCE /p:BuildToolsPackageVersion=$__BUILD_TOOLS_PACKAGE_VERSION >> $__init_tools_log
- if [ ! -e "$__BUILD_TOOLS_PATH/init-tools.sh" ]; then echo "ERROR: Could not restore build tools correctly. See '$__init_tools_log' for more details."1>&2; fi
- fi
-
- echo "Initializing BuildTools..."
- echo "Running: $__BUILD_TOOLS_PATH/init-tools.sh $__scriptpath $__DOTNET_CMD $__TOOLRUNTIME_DIR" >> $__init_tools_log
-
- # Executables restored with .NET Core 2.0 do not have executable permission flags. https://github.com/NuGet/Home/issues/4424
- chmod +x $__BUILD_TOOLS_PATH/init-tools.sh
- $__BUILD_TOOLS_PATH/init-tools.sh $__scriptpath $__DOTNET_CMD $__TOOLRUNTIME_DIR >> $__init_tools_log
- if [ "$?" != "0" ]; then
- echo "ERROR: An error occured when trying to initialize the tools. Please check '$__init_tools_log' for more details."1>&2
- exit 1
- fi
- fi
-
- echo "Making all .sh files executable under Tools."
- # Executables restored with .NET Core 2.0 do not have executable permission flags. https://github.com/NuGet/Home/issues/4424
- ls $__scriptpath/Tools/*.sh | xargs chmod +x
- ls $__scriptpath/Tools/scripts/docker/*.sh | xargs chmod +x
-
- Tools/crossgen.sh $__scriptpath/Tools
-
- mkdir -p $__INIT_TOOLS_DONE_MARKER_DIR
- touch $__INIT_TOOLS_DONE_MARKER
-
echo "Done initializing tools."
-else
- echo "Tools are already initialized"
+ mkdir -p "$(dirname "$__BUILD_TOOLS_SEMAPHORE")" && touch $__BUILD_TOOLS_SEMAPHORE
+ exit 0
fi
+
+echo "Running: $__scriptpath/init-tools.sh" > $__init_tools_log
+
+if [ ! -e $__DOTNET_PATH ]; then
+ if [ -z "$__DOTNET_PKG" ]; then
+ if [ "$(uname -m | grep "i[3456]86")" = "i686" ]; then
+ echo "Warning: build not supported on 32 bit Unix"
+ fi
+ OSName=$(uname -s)
+ case $OSName in
+ Darwin)
+ OS=OSX
+ __DOTNET_PKG=dotnet-dev-osx-x64
+ ulimit -n 2048
+ ;;
+
+ Linux)
+ __DOTNET_PKG=dotnet-dev-linux-x64
+ OS=Linux
+
+ if [ -e /etc/os-release ]; then
+ source /etc/os-release
+ if [[ $ID == "alpine" ]]; then
+ # remove the last version digit
+ VERSION_ID=${VERSION_ID%.*}
+ __DOTNET_PKG=dotnet-dev-alpine.$VERSION_ID-x64
+ fi
+ elif [ -e /etc/redhat-release ]; then
+ redhatRelease=$(> $__init_tools_log
+ which curl > /dev/null 2> /dev/null
+ if [ $? -ne 0 ]; then
+ wget -q -O $__DOTNET_PATH/dotnet.tar ${__DOTNET_LOCATION}
+ else
+ curl --retry 10 -sSL --create-dirs -o $__DOTNET_PATH/dotnet.tar ${__DOTNET_LOCATION}
+ fi
+ cd $__DOTNET_PATH
+ tar -xf $__DOTNET_PATH/dotnet.tar
+
+ cd $__scriptpath
+fi
+
+if [ ! -e $__BUILD_TOOLS_PATH ]; then
+ echo "Restoring BuildTools version $__BUILD_TOOLS_PACKAGE_VERSION..."
+ echo "Running: $__DOTNET_CMD restore \"$__INIT_TOOLS_RESTORE_PROJECT\" --no-cache --packages $__PACKAGES_DIR --source $__BUILDTOOLS_SOURCE /p:BuildToolsPackageVersion=$__BUILD_TOOLS_PACKAGE_VERSION" >> $__init_tools_log
+ $__DOTNET_CMD restore "$__INIT_TOOLS_RESTORE_PROJECT" --no-cache --packages $__PACKAGES_DIR --source $__BUILDTOOLS_SOURCE /p:BuildToolsPackageVersion=$__BUILD_TOOLS_PACKAGE_VERSION >> $__init_tools_log
+ if [ ! -e "$__BUILD_TOOLS_PATH/init-tools.sh" ]; then echo "ERROR: Could not restore build tools correctly. See '$__init_tools_log' for more details."1>&2; fi
+fi
+
+echo "Initializing BuildTools..."
+echo "Running: $__BUILD_TOOLS_PATH/init-tools.sh $__scriptpath $__DOTNET_CMD $__TOOLRUNTIME_DIR" >> $__init_tools_log
+
+# Executables restored with .NET Core 2.0 do not have executable permission flags. https://github.com/NuGet/Home/issues/4424
+chmod +x $__BUILD_TOOLS_PATH/init-tools.sh
+$__BUILD_TOOLS_PATH/init-tools.sh $__scriptpath $__DOTNET_CMD $__TOOLRUNTIME_DIR >> $__init_tools_log
+if [ "$?" != "0" ]; then
+ echo "ERROR: An error occured when trying to initialize the tools. Please check '$__init_tools_log' for more details."1>&2
+ exit 1
+fi
+
+echo "Making all .sh files executable under Tools."
+# Executables restored with .NET Core 2.0 do not have executable permission flags. https://github.com/NuGet/Home/issues/4424
+ls $__scriptpath/Tools/*.sh | xargs chmod +x
+ls $__scriptpath/Tools/scripts/docker/*.sh | xargs chmod +x
+
+Tools/crossgen.sh $__scriptpath/Tools
+
+mkdir -p "$(dirname "$__BUILD_TOOLS_SEMAPHORE")" && touch $__BUILD_TOOLS_SEMAPHORE
+
+echo "Done initializing tools."
+
diff --git a/netci.groovy b/netci.groovy
index 2f47d3dd..d642b519 100644
--- a/netci.groovy
+++ b/netci.groovy
@@ -48,7 +48,7 @@ platformList.each { platform ->
dockerContainer = "ubuntu1404_cross_prereqs_v4-tizen_rootfs"
dockerCommand = "docker run -e ROOTFS_DIR=/crossrootfs/${architecture}.tizen.build --name ${dockerContainer} --rm -v \${WORKSPACE}:${dockerWorkingDirectory} -w=${dockerWorkingDirectory} ${dockerRepository}:${dockerContainer}"
- buildArgs += " -DistroRid=tizen.4.0.0-${architecture} -SkipTests=true -DisableCrossgen=true -PortableBuild=false -CrossBuild=true -- /p:OverridePackageSource=https:%2F%2Ftizen.myget.org/F/dotnet-core/api/v3/index.json"
+ buildArgs += " -SkipTests=true -DisableCrossgen=true -PortableBuild=false -CrossBuild=true -- /p:OverridePackageSource=https:%2F%2Ftizen.myget.org/F/dotnet-core/api/v3/index.json /p:OutputRid=tizen.4.0.0-${architecture}"
buildCommand = "${dockerCommand} ./build.sh ${buildArgs}"
}
else if (os == "Linux") {
@@ -57,7 +57,7 @@ platformList.each { platform ->
if (architecture == 'arm' || architecture == 'armel') {
dockerContainer = "ubuntu-14.04-cross-0cd4667-20172211042239"
dockerCommand = "docker run -e ROOTFS_DIR=/crossrootfs/${architecture} --name ${dockerContainer} --rm -v \${WORKSPACE}:${dockerWorkingDirectory} -w=${dockerWorkingDirectory} ${dockerRepository}:${dockerContainer}"
- buildArgs += " -DistroRid=linux-${architecture} -SkipTests=true -DisableCrossgen=true -CrossBuild=true"
+ buildArgs += " -SkipTests=true -DisableCrossgen=true -CrossBuild=true"
buildCommand = "${dockerCommand} ./build.sh ${buildArgs}"
osForGHTrigger = "Linux"
diff --git a/publish/dir.props b/publish/dir.props
index 562b4161..2afbc8f0 100644
--- a/publish/dir.props
+++ b/publish/dir.props
@@ -9,11 +9,6 @@
Runtime/$(ProductVersion)
.sha512
-
-
- $(DistroRid).$(SharedFrameworkNugetVersion)
- $(DistroRid).$(HostResolverVersion)
-
+
+
+
@@ -30,7 +40,7 @@
Properties="%(Project.AdditionalProperties)"
BuildInParallel="true" />
-
+
@@ -86,8 +96,13 @@
-
+ DependsOnTargets="GenerateDebRepoFiles"
+ Condition="'$(DebRepoId)' != '' AND
+ '$(DebRepoUser)' != '' AND
+ '$(DebRepoPass)' != '' AND
+ '$(DebRepoServer)' != ''">
+
+ Condition="'@(_MissingBlobNames)' == '' AND '$(NuGetFeedUrl)' != ''">
@@ -227,8 +242,7 @@
-
+ Condition="'$(PublishDebToolToFeed)' == 'true' AND '$(CliNuGetFeedUrl)' != ''">
diff --git a/run.cmd b/run.cmd
index 4c1465dc..eb193fba 100644
--- a/run.cmd
+++ b/run.cmd
@@ -17,8 +17,5 @@ if not exist "%_VSCOMNTOOLS%" (
call "%_VSCOMNTOOLS%\VsDevCmd.bat"
:Run
-:: We do not want to run the first-time experience.
-set DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
-pushd %~dp0
powershell -NoProfile -ExecutionPolicy unrestricted -Command "%~dp0run.ps1 -- %*"
exit /b %ERRORLEVEL%
\ No newline at end of file
diff --git a/run.ps1 b/run.ps1
index 5363d4ff..1a260830 100644
--- a/run.ps1
+++ b/run.ps1
@@ -2,6 +2,9 @@
$toolsLocalPath = Join-Path $PSScriptRoot "Tools"
$restorePackagesPath = Join-Path $PSScriptRoot "packages"
+# We do not want to run the first-time experience.
+$env:DOTNET_SKIP_FIRST_TIME_EXPERIENCE = 1
+
$initTools = Join-Path $PSScriptRoot "init-tools.cmd"
& $initTools
diff --git a/run.sh b/run.sh
index 9b68d2d5..56e18f21 100755
--- a/run.sh
+++ b/run.sh
@@ -11,11 +11,12 @@ invocation='echo "Calling: ${FUNCNAME[0]}"'
__scriptpath=$(cd "$(dirname "$0")"; pwd -P)
__toolsLocalPath=$__scriptpath/Tools
+# We do not want to run the first-time experience.
+export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
+
$__scriptpath/init-tools.sh
__dotnet=$__toolsLocalPath/dotnetcli/dotnet
-# We do not want to run the first-time experience.
-export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
$__dotnet $__toolsLocalPath/run.exe $*
exit $?
diff --git a/signing/sign.proj b/signing/sign.proj
index 3f34ba6a..925ae26e 100644
--- a/signing/sign.proj
+++ b/signing/sign.proj
@@ -11,7 +11,7 @@
-
+
@@ -153,7 +157,7 @@
-
+
@@ -191,7 +195,7 @@
OverwriteReadOnlyFiles="True"
SkipUnchangedFiles="False"
UseHardlinksIfPossible="False" />
-
+
@@ -217,11 +221,11 @@
-
-
-
-
+
+
+
+
@@ -233,10 +237,10 @@
-
+
-
+
@@ -255,9 +259,9 @@
$(SharedFrameworkBrandName)
-
- $(LibIcuPackageName)
-
+
+ $(LibIcuPackageName)
+
diff --git a/src/pkg/packaging/dir.proj b/src/pkg/packaging/dir.proj
index 8e6d2cf6..4b789743 100644
--- a/src/pkg/packaging/dir.proj
+++ b/src/pkg/packaging/dir.proj
@@ -2,7 +2,7 @@
-
+
GenerateVersionBadge;
@@ -26,7 +26,7 @@
-
-
+ Command='find %(OutDirs.Identity) -type f -name "*" -exec chmod 644 {} \;' />
+
+ Command='find %(OutDirs.Identity) -type f -name "*.so" -exec chmod 755 {} \;' />
-
-
+ Command='find %(OutDirs.Identity) -type f ! -name "*.*" -exec chmod 755 {} \;' />
+
+
-
+
-
+
-
+
@@ -129,10 +129,10 @@
-
-
-
+
@@ -165,17 +165,24 @@
+
+
+
+
+
+
- --no-build --output $(PackagesOutDir)
+ $(NoRestoreArg) --no-build --output $(PackagesOutDir)
$(PackArgs) $(MSBuildPassThroughPropertyList) /p:BaseOutputPath=$(IntermediateOutputForPackaging)
-
+
-
+
diff --git a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj
index d3ec6833..f70af0ee 100644
--- a/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj
+++ b/src/pkg/projects/Microsoft.NETCore.App/src/Microsoft.NETCore.App.depproj
@@ -4,7 +4,7 @@
unused
-
unused
.NETCoreApp,Version=v2.1
@@ -40,7 +40,7 @@
-
@@ -68,11 +68,11 @@
<_runtimePackageId>%(_runtimeCLR.NuGetPackageId)
<_runtimePackageVersion>%(_runtimeCLR.NuGetPackageVersion)
<_runtimePackagePath>$(PackagesDir)/$(_runtimePackageId.ToLowerInvariant())/$(_runtimePackageVersion)
-
+
<_crossGenPath>$(_runtimePackagePath)/tools$(_crossDir)/crossgen$(ApplicationFileExtension)
<_runtimeDirectory>%(_runtimeCLR.RootDir)%(_runtimeCLR.Directory)
-
+
<_coreLibDirectory>%(_runtimeCoreLib.RootDir)%(_runtimeCoreLib.Directory)
@@ -84,7 +84,7 @@
<_jitPath>%(_runtimeJIT.FullPath)
<_jitPath Condition="'$(_crossDir)' != ''">$(_jitPackagePath)/runtimes$(_crossDir)/native/$(LibraryFilePrefix)clrjit$(LibraryFileExtension)
-
+
<_fxLibDirectory>%(_fxSystemRuntime.RootDir)%(_fxSystemRuntime.Directory)
@@ -100,7 +100,7 @@
-
$(PackagesDir)$([System.String]::new('%(Reference.NuGetPackageId)').ToLowerInvariant())/%(Reference.NuGetPackageVersion)/version.txt
@@ -135,7 +135,7 @@
-
true
@@ -157,13 +157,13 @@
<_docFilesToPackage Include="%(FilesToPackage.RootDir)%(FilesToPackage.Directory)**\%(FilesToPackage.FileName).xml" />
-
+
ref/$(PackageTargetFramework)/%(RecursiveDir)
-
+
<_sourcePathCandidate Include="@(FilesToPackage->'$(PackagesDir)\%(NuGetPackageId)\%(NuGetPackageVersion)\sources')" />
<_sourcePathCandidate Include="@(FilesToPackage->'$(PackagesDir)\%(NuGetPackageId)\%(NuGetPackageVersion)\src')" />
@@ -215,7 +215,7 @@
-
+
<_crossGenedFilesToPackage Include="@(_filesToCrossGen->'%(CrossGenedPath)')" />
@@ -228,7 +228,7 @@
<_crossgenPlatformDirectories Include="%(_filesToCrossGen.RootDir)%(_filesToCrossGen.Directory)" />
-
+
@@ -261,7 +261,7 @@
-
+
CreatePerfMap
<_crossGenSymbolsOutputDirectory>$(CrossGenSymbolsOutputPath)/%(_filesToCrossGen.TargetPath)
-
+
<_crossGenSymbolsArgs Include="-readytorun" />
<_crossGenSymbolsArgs Include="-platform_assemblies_paths %(_filesToCrossGen.CrossGenedDirectory)$(_pathSeparatorEscaped)$(_coreLibDirectory)" />
@@ -283,9 +283,9 @@
-
+
-
+
@@ -305,7 +305,7 @@
-
+
@@ -320,10 +320,10 @@
-
+
-
+
diff --git a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj
index 1c15ed10..e90b3467 100644
--- a/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj
+++ b/src/pkg/projects/Microsoft.NETCore.UniversalWindowsPlatform/src/Microsoft.NETCore.UniversalWindowsPlatform.depproj
@@ -4,7 +4,7 @@
unused
-
unused
$(UAPvNextTFMFull)
@@ -50,7 +50,7 @@
-
@@ -65,7 +65,7 @@
<_FilesToPackage Include="@(ReferenceCopyLocalPaths)">
-
true
@@ -107,13 +107,13 @@
<_docFilesToPackage Include="%(FilesToPackage.RootDir)%(FilesToPackage.Directory)**\%(FilesToPackage.FileName).xml" />
-
+
ref/$(PackageTargetFramework)/%(RecursiveDir)
-
@@ -128,7 +128,7 @@
-
+
<_sourcePathCandidate Include="@(FilesToPackage->'$(PackagesDir)\%(NuGetPackageId)\%(NuGetPackageVersion)\sources')" />
<_sourcePathCandidate Include="@(FilesToPackage->'$(PackagesDir)\%(NuGetPackageId)\%(NuGetPackageVersion)\src')" />
@@ -166,10 +166,10 @@
-
+
-
+
diff --git a/src/pkg/projects/dir.props b/src/pkg/projects/dir.props
index 139a6cb6..9b49bdb8 100644
--- a/src/pkg/projects/dir.props
+++ b/src/pkg/projects/dir.props
@@ -13,6 +13,9 @@
$(NuGetRuntimeIdentifier)
true
+
+ false
+ true
diff --git a/src/pkg/projects/dir.targets b/src/pkg/projects/dir.targets
index dff3214c..8f1eb7a4 100644
--- a/src/pkg/projects/dir.targets
+++ b/src/pkg/projects/dir.targets
@@ -6,6 +6,14 @@
true
+
+
+ $(Version)
+
+
@@ -37,7 +45,7 @@
-
runtimes/$(PackageTargetRuntime)/native
true
@@ -60,7 +68,7 @@
DestinationFolder="%(_SymbolsFiles.DestinationFolder)" />
-
@@ -75,7 +83,7 @@
@@ -109,5 +117,5 @@
ItemName="Dependency" />
-
-
+
+
\ No newline at end of file
diff --git a/src/pkg/projects/netcoreappRIDs.props b/src/pkg/projects/netcoreappRIDs.props
index efc59265..404bffd4 100644
--- a/src/pkg/projects/netcoreappRIDs.props
+++ b/src/pkg/projects/netcoreappRIDs.props
@@ -1,18 +1,8 @@
-
-
- $(DistroRid)
- osx.10.12-$(Platform)
- win7-$(Platform)
- win8-$(Platform)
- win10-$(Platform)
-
-
- win-$(Platform)
- osx-$(Platform)
- linux-$(Platform)
+
+ $(OutputRid)
diff --git a/src/sharedFramework/lockedhost/lockedhost.csproj b/src/sharedFramework/lockedhost/lockedhost.csproj
index 94e79734..38785134 100644
--- a/src/sharedFramework/lockedhost/lockedhost.csproj
+++ b/src/sharedFramework/lockedhost/lockedhost.csproj
@@ -3,6 +3,8 @@
false
true
+ false
+ false
2008;8021
diff --git a/src/sharedFramework/sharedFramework.proj b/src/sharedFramework/sharedFramework.proj
index 629659de..6fcf09ac 100644
--- a/src/sharedFramework/sharedFramework.proj
+++ b/src/sharedFramework/sharedFramework.proj
@@ -18,6 +18,9 @@
$(MSBuildPassThroughPropertyList) /p:TargetFramework=$(Framework) /p:RuntimeIdentifier=$(PackageTargetRid)
+
+ $(IntermediateOutputRootPath)sharedFrameworkPublish.packages\
+ $(SharedFrameworkPublishDir)shared\$(SharedFrameworkName)\$(SharedFrameworkNugetVersion)
@@ -32,13 +35,15 @@
-
+
-
+
@@ -142,13 +147,14 @@
-
+
-
-
+
\ No newline at end of file
diff --git a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs
index 7be639ff..2b690c47 100644
--- a/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs
+++ b/src/test/HostActivationTests/GivenThatICareAboutMultilevelSDKLookup.cs
@@ -98,7 +98,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup
_userSelectedMessage = $"Using dotnet SDK dll=[{_userSdkBaseDir}";
_exeSelectedMessage = $"Using dotnet SDK dll=[{_exeSdkBaseDir}";
}
-
+
[Fact]
public void SdkLookup_Global_Json_Patch_Rollup()
{
@@ -349,7 +349,7 @@ namespace Microsoft.DotNet.CoreSetup.Test.HostActivation.MultilevelSDKLookup
.And
.HaveStdErrContaining(Path.Combine(_exeSelectedMessage, "10000.0.0-dummy", _dotnetSdkDllMessageTerminator));
- // Add a dummy version in the exe dir
+ // Add a dummy version in the user dir
AddAvailableSdkVersions(_exeSdkBaseDir, "10000.0.0");
// Specified CLI version: none
diff --git a/src/test/dir.proj b/src/test/dir.proj
index 72f828b9..b8226c3b 100644
--- a/src/test/dir.proj
+++ b/src/test/dir.proj
@@ -90,7 +90,7 @@
+
+
+
+
+ true
+
+
+
\ No newline at end of file
diff --git a/tools-local/scripts/arm32_ci_script.sh b/tools-local/scripts/arm32_ci_script.sh
index 310a1dd5..552c5866 100644
--- a/tools-local/scripts/arm32_ci_script.sh
+++ b/tools-local/scripts/arm32_ci_script.sh
@@ -213,7 +213,7 @@ function cross_build_core_setup_with_docker {
fi
# Cross building core-setup with rootfs in Docker
- __buildCmd="./build.sh --configuration $__buildConfig --env-vars DISABLE_CROSSGEN=1,TARGETPLATFORM=$__buildArch,TARGETRID=$__runtimeOS-$__buildArch,CROSS=1,ROOTFS_DIR=$__rootfsDir"
+ __buildCmd="./build.sh --configuration $__buildConfig --env-vars DISABLE_CROSSGEN=1,TARGETPLATFORM=$__buildArch,OUTPUTRID=$__runtimeOS-$__buildArch,CROSS=1,ROOTFS_DIR=$__rootfsDir"
$__dockerCmd $__buildCmd
}
diff --git a/tools-local/scripts/dockerbuild.sh b/tools-local/scripts/dockerbuild.sh
new file mode 100644
index 00000000..6f15ca8e
--- /dev/null
+++ b/tools-local/scripts/dockerbuild.sh
@@ -0,0 +1,84 @@
+#!/usr/bin/env bash
+#
+# Copyright (c) .NET Foundation and contributors. All rights reserved.
+# Licensed under the MIT license. See LICENSE file in the project root for full license information.
+#
+
+set -e
+
+SOURCE="${BASH_SOURCE[0]}"
+while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink
+ DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
+ SOURCE="$(readlink "$SOURCE")"
+ [[ "$SOURCE" != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located
+done
+DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
+
+cd "$DIR/.."
+
+while [[ $# > 0 ]]; do
+ key=$1
+
+ case $key in
+ -t|--tag)
+ DOCKER_TAG=$2
+ shift
+ ;;
+ -d|--dockerfile)
+ DOCKERFILE=$2
+ shift
+ ;;
+ -h|-?|--help)
+ echo "Usage: $0 [-d|--dockerfile ] [-t|--tag ] "
+ echo ""
+ echo "Options:"
+ echo " The path to the folder that contains a Dockerfile to use to create the build container"
+ echo " The name of docker image tag"
+ exit 0
+ ;;
+ *)
+ break # the first non-switch we get ends parsing
+ ;;
+ esac
+
+ shift
+done
+
+# Executes a command and retries if it fails.
+# NOTE: This function is the exact copy from init-docker.sh.
+# Reason for not invoking init.docker.sh directly is since that script
+# also performs cleanup, which we do not want in this case.
+execute() {
+ local count=0
+ local retries=5
+ local waitFactor=6
+ until "$@"; do
+ local exit=$?
+ count=$(( $count + 1 ))
+ if [ $count -lt $retries ]; then
+ local wait=$(( waitFactor ** (( count - 1 )) ))
+ echo "Retry $count/$retries exited $exit, retrying in $wait seconds..."
+ sleep $wait
+ else
+ say_err "Retry $count/$retries exited $exit, no more retries left."
+ return $exit
+ fi
+ done
+
+ return 0
+}
+
+# Build the docker container (will be fast if it is already built)
+echo "Building Docker Container using Dockerfile: $DOCKERFILE"
+
+# Get the name of Docker image.
+image=$(grep -i "^FROM " "$DOCKERFILE/Dockerfile" | awk '{ print $2 }')
+
+# Explicitly pull the base image with retry logic.
+# This eliminates intermittent failures during docker build caused by failing to retrieve the base image.
+if [ ! -z "$image" ]; then
+ echo "Pulling Docker image $image"
+ execute docker pull $image
+fi
+
+docker build --build-arg USER_ID=$(id -u) -t $DOCKER_TAG $DOCKERFILE
diff --git a/tools-local/scripts/dockerrun.sh b/tools-local/scripts/dockerrun.sh
index 80f3d089..4d5a3d85 100644
--- a/tools-local/scripts/dockerrun.sh
+++ b/tools-local/scripts/dockerrun.sh
@@ -87,44 +87,8 @@ fi
# VSO
[ ! -z "$BUILD_BUILDID" ] && DOTNET_BUILD_CONTAINER_NAME="${BUILD_BUILDID}-${BUILD_BUILDNUMBER}"
-# Executes a command and retries if it fails.
-# NOTE: This function is the exact copy from init-docker.sh.
-# Reason for not invoking init.docker.sh directly is since that script
-# also performs cleanup, which we do not want in this case.
-execute() {
- local count=0
- local retries=5
- local waitFactor=6
- until "$@"; do
- local exit=$?
- count=$(( $count + 1 ))
- if [ $count -lt $retries ]; then
- local wait=$(( waitFactor ** (( count - 1 )) ))
- echo "Retry $count/$retries exited $exit, retrying in $wait seconds..."
- sleep $wait
- else
- say_err "Retry $count/$retries exited $exit, no more retries left."
- return $exit
- fi
- done
-
- return 0
-}
-
-# Build the docker container (will be fast if it is already built)
-echo "Building Docker Container using Dockerfile: $DOCKERFILE"
-
-# Get the name of Docker image.
-image=$(grep -i "^FROM " "$DOCKERFILE/Dockerfile" | awk '{ print $2 }')
-
-# Explicitly pull the base image with retry logic.
-# This eliminates intermittent failures during docker build caused by failing to retrieve the base image.
-if [ ! -z "$image" ]; then
- echo "Pulling Docker image $image"
- execute docker pull $image
-fi
-
-docker build --build-arg USER_ID=$(id -u) -t $DOTNET_BUILD_CONTAINER_TAG $DOCKERFILE
+#Build the docker image
+"$DIR/dockerbuild.sh" -t $DOTNET_BUILD_CONTAINER_TAG -d $DOCKERFILE
# Run the build in the container
echo "Launching build in Docker Container"
diff --git a/tools-local/tasks/BuildFPMToolPreReqs .cs b/tools-local/tasks/BuildFPMToolPreReqs .cs
new file mode 100644
index 00000000..d04cb8c2
--- /dev/null
+++ b/tools-local/tasks/BuildFPMToolPreReqs .cs
@@ -0,0 +1,320 @@
+// Copyright (c) .NET Foundation and contributors. All rights reserved.
+// Licensed under the MIT license. See LICENSE file in the project root for full license information.
+
+using System;
+using System.Collections.Generic;
+using Microsoft.Build.Utilities;
+using Microsoft.Build.Framework;
+using System.IO;
+using System.Linq;
+using System.Text;
+using Newtonsoft.Json;
+
+namespace Microsoft.DotNet.Build.Tasks
+{
+ ///
+ /// This task prepares the command line parameters for running a RPM build using FPM tool and also updates the copyright and changelog file tokens.
+ /// If parses various values from the config json by first reading it into a model and then builds the required string for parameters and passes it back.
+ ///
+ ///
+ public class BuildFPMToolPreReqs : BuildTask
+ {
+ [Required]
+ public string InputDir { get; set; }
+ [Required]
+ public string OutputDir { get; set; }
+ [Required]
+ public string PackageVersion { get; set; }
+ [Required]
+ public string ConfigJsonFile { get; set; }
+ [Output]
+ public string FPMParameters { get; set; }
+
+ public override bool Execute()
+ {
+ try
+ {
+ if (!File.Exists(ConfigJsonFile))
+ {
+ throw new FileNotFoundException($"Expected file {ConfigJsonFile} was not found.");
+ }
+
+ // Open the Config Json and read the values into the model
+ TextReader projectFileReader = File.OpenText(ConfigJsonFile);
+ if (projectFileReader != null)
+ {
+ string jsonFileText = projectFileReader.ReadToEnd();
+ ConfigJson configJson = JsonConvert.DeserializeObject(jsonFileText);
+
+ // Update the Changelog and Copyright files by replacing tokens with values from config json
+ UpdateChangelog(configJson, PackageVersion);
+ UpdateCopyRight(configJson);
+
+ // Build the full list of parameters
+ FPMParameters = BuildCmdParameters(configJson, PackageVersion);
+ Log.LogMessage(MessageImportance.Normal, "Generated RPM paramters: " + FPMParameters);
+ }
+ else
+ {
+ throw new IOException($"Could not open the file {ConfigJsonFile} for reading.");
+ }
+ }
+ catch (Exception e)
+ {
+ Log.LogError("Exception while processing RPM paramters: " + e.Message);
+ }
+
+ return !Log.HasLoggedErrors;
+ }
+
+ // Update the tokens in the changelog file from the config Json
+ private void UpdateChangelog(ConfigJson configJson, string package_version)
+ {
+ try
+ {
+ string changelogFile = Path.Combine(InputDir, "templates", "changelog");
+ if (!File.Exists(changelogFile))
+ {
+ throw new FileNotFoundException($"Expected file {changelogFile} was not found.");
+ }
+ string str = File.ReadAllText(changelogFile);
+ str = str.Replace("{PACKAGE_NAME}", configJson.Package_Name);
+ str = str.Replace("{PACKAGE_VERSION}", package_version);
+ str = str.Replace("{PACKAGE_REVISION}", configJson.Release.Package_Revision);
+ str = str.Replace("{URGENCY}", configJson.Release.Urgency);
+ str = str.Replace("{CHANGELOG_MESSAGE}", configJson.Release.Changelog_Message);
+ str = str.Replace("{MAINTAINER_NAME}", configJson.Maintainer_Name);
+ str = str.Replace("{MAINTAINER_EMAIL}", configJson.Maintainer_Email);
+ // The date format needs to be like Wed May 17 2017
+ str = str.Replace("{DATE}", DateTime.UtcNow.ToString("ddd MMM dd yyyy"));
+ File.WriteAllText(changelogFile, str);
+ }
+ catch (Exception e)
+ {
+ Log.LogError("Exception while updating the changelog file: " + e.Message);
+ }
+ }
+
+ public void UpdateCopyRight(ConfigJson configJson)
+ {
+ try
+ {
+ // Update the tokens in the copyright file from the config Json
+ string copyrightFile = Path.Combine(InputDir, "templates", "copyright");
+ if (!File.Exists(copyrightFile))
+ {
+ throw new FileNotFoundException($"Expected file {copyrightFile} was not found.");
+ }
+ string str = File.ReadAllText(copyrightFile);
+ str = str.Replace("{COPYRIGHT_TEXT}", configJson.CopyRight);
+ str = str.Replace("{LICENSE_NAME}", configJson.License.Type);
+ str = str.Replace("{LICENSE_NAME}", configJson.License.Type);
+ str = str.Replace("{LICENSE_TEXT}", configJson.License.Full_Text);
+ File.WriteAllText(copyrightFile, str);
+ }
+ catch (Exception e)
+ {
+ Log.LogError("Exception while updating the copyright file: " + e.Message);
+ }
+ }
+
+ private string BuildCmdParameters(ConfigJson configJson, string package_version)
+ {
+ // Parameter list that needs to be passed to FPM tool:
+ // -s : is the input source type(dir) --Static
+ // -t : is the type of package(rpm) --Static
+ // -n : is for the name of the package --JSON
+ // -v : is the version to give to the package --ARG
+ // -a : architecture --JSON
+ // -d : is for all dependent packages. This can be used multiple times to specify the dependencies of the package. --JSON
+ // --rpm-os : the operating system to target this rpm --Static
+ // --rpm-changelog : the changelog from FILEPATH contents --ARG
+ // --rpm-summary : it is the RPM summary that shows in the Title --JSON
+ // --description : it is the description for the package --JSON
+ // -p : The actual package name (with path) for your package. --ARG+JSON
+ // --conflicts : Other packages/versions this package conflicts with provided as CSV --JSON
+ // --directories : Recursively add directories as being owned by the package. --JSON
+ // --after-install : FILEPATH to the script to be run after install of the package --JSON
+ // --after-remove : FILEPATH to the script to be run after package removal --JSON
+ // --license : the licensing name for the package. This will include the license type in the meta-data for the package, but will not include the associated license file within the package itself. --JSON
+ // --iteration : the iteration to give to the package. This comes from the package_revision --JSON
+ // --url : url for this package. --JSON
+ // --verbose : Set verbose output for FPM tool --Static
+ // : Add all the folder mappings for packge_root, docs, man pages --Static
+
+ var parameters = new List();
+ parameters.Add("-s dir");
+ parameters.Add("-t rpm");
+ parameters.Add(string.Concat("-n ", configJson.Package_Name));
+ parameters.Add(string.Concat("-v ", package_version));
+ parameters.Add(string.Concat("-a ", configJson.Control.Architecture));
+
+ // Build the list of dependencies as -d -d
+ if (configJson.Rpm_Dependencies != null)
+ {
+ foreach (RpmDependency rpmdep in configJson.Rpm_Dependencies)
+ {
+ string dependency = "";
+ if (rpmdep.Package_Name != "")
+ {
+ // If no version is specified then the dependency is just the package without >= check
+ if (rpmdep.Package_Version == "")
+ {
+ dependency = rpmdep.Package_Name;
+ }
+ else
+ {
+ dependency = string.Concat(rpmdep.Package_Name, " >= ", rpmdep.Package_Version);
+ }
+ }
+ if (dependency != "") parameters.Add(string.Concat("-d ", EscapeArg(dependency)));
+ }
+ }
+
+ // Build the list of owned directories
+ if (configJson.Directories != null)
+ {
+ foreach (string dir in configJson.Directories)
+ {
+ if (dir != "")
+ {
+ parameters.Add(string.Concat("--directories ", EscapeArg(dir)));
+ }
+ }
+ }
+
+ parameters.Add("--rpm-os linux");
+ parameters.Add(string.Concat("--rpm-changelog ", EscapeArg(Path.Combine(InputDir, "templates", "changelog")))); // Changelog File
+ parameters.Add(string.Concat("--rpm-summary ", EscapeArg(configJson.Short_Description)));
+ parameters.Add(string.Concat("--description ", EscapeArg(configJson.Long_Description)));
+ parameters.Add(string.Concat("--maintainer ", EscapeArg(configJson.Maintainer_Name + " <" + configJson.Maintainer_Email + ">")));
+ parameters.Add(string.Concat("--vendor ", EscapeArg(configJson.Vendor)));
+ parameters.Add(string.Concat("-p ", Path.Combine(OutputDir, configJson.Package_Name + ".rpm")));
+ if (configJson.Package_Conflicts != null) parameters.Add(string.Concat("--conflicts ", EscapeArg(string.Join(",", configJson.Package_Conflicts))));
+ if (configJson.After_Install_Source != null) parameters.Add(string.Concat("--after-install ", Path.Combine(InputDir, EscapeArg(configJson.After_Install_Source))));
+ if (configJson.After_Remove_Source != null) parameters.Add(string.Concat("--after-remove ", Path.Combine(InputDir, EscapeArg(configJson.After_Remove_Source))));
+ parameters.Add(string.Concat("--license ", EscapeArg(configJson.License.Type)));
+ parameters.Add(string.Concat("--iteration ", configJson.Release.Package_Revision));
+ parameters.Add(string.Concat("--url ", "\"", EscapeArg(configJson.Homepage), "\""));
+ parameters.Add("--verbose");
+
+ // Map all the payload directories as they need to install on the system
+ if (configJson.Install_Root != null) parameters.Add(string.Concat(Path.Combine(InputDir, "package_root/="), configJson.Install_Root)); // Package Files
+ if (configJson.Install_Man != null) parameters.Add(string.Concat(Path.Combine(InputDir, "docs", "host/="), configJson.Install_Man)); // Man Pages
+ if (configJson.Install_Doc != null) parameters.Add(string.Concat(Path.Combine(InputDir, "templates", "copyright="), configJson.Install_Doc)); // CopyRight File
+
+ return string.Join(" ", parameters);
+ }
+
+ private string EscapeArg(string arg)
+ {
+ var sb = new StringBuilder();
+
+ bool quoted = ShouldSurroundWithQuotes(arg);
+ if (quoted) sb.Append("\"");
+
+ for (int i = 0; i < arg.Length; ++i)
+ {
+ var backslashCount = 0;
+
+ // Consume All Backslashes
+ while (i < arg.Length && arg[i] == '\\')
+ {
+ backslashCount++;
+ i++;
+ }
+
+ // Escape any backslashes at the end of the arg
+ // This ensures the outside quote is interpreted as
+ // an argument delimiter
+ if (i == arg.Length)
+ {
+ sb.Append('\\', 2 * backslashCount);
+ }
+
+ // Escape any preceding backslashes and the quote
+ else if (arg[i] == '"')
+ {
+ sb.Append('\\', (2 * backslashCount) + 1);
+ sb.Append('"');
+ }
+
+ // Output any consumed backslashes and the character
+ else
+ {
+ sb.Append('\\', backslashCount);
+ sb.Append(arg[i]);
+ }
+ }
+
+ if (quoted) sb.Append("\"");
+
+ return sb.ToString();
+ }
+ private bool ShouldSurroundWithQuotes(string argument)
+ {
+ // Don't quote already quoted strings
+ if (argument.StartsWith("\"", StringComparison.Ordinal) &&
+ argument.EndsWith("\"", StringComparison.Ordinal))
+ {
+ return false;
+ }
+
+ // Only quote if whitespace exists in the string
+ if (argument.Contains(" ") || argument.Contains("\t") || argument.Contains("\n"))
+ {
+ return true;
+ }
+ return false;
+ }
+ }
+
+ ///
+ /// Model classes for reading and storing the JSON.
+ ///
+ public class ConfigJson
+ {
+ public string Maintainer_Name { get; set; }
+ public string Maintainer_Email { get; set; }
+ public string Vendor { get; set; }
+ public string Package_Name { get; set; }
+ public string Install_Root { get; set; }
+ public string Install_Doc { get; set; }
+ public string Install_Man { get; set; }
+ public string Short_Description { get; set; }
+ public string Long_Description { get; set; }
+ public string Homepage { get; set; }
+ public string CopyRight { get; set; }
+ public Release Release { get; set; }
+ public Control Control { get; set; }
+ public License License { get; set; }
+ public List Rpm_Dependencies { get; set; }
+ public List Package_Conflicts { get; set; }
+ public List Directories { get; set; }
+ public string After_Install_Source { get; set; }
+ public string After_Remove_Source { get; set; }
+ }
+ public class Release
+ {
+ public string Package_Version { get; set; }
+ public string Package_Revision { get; set; }
+ public string Urgency { get; set; }
+ public string Changelog_Message { get; set; }
+ }
+ public class Control
+ {
+ public string Priority { get; set; }
+ public string Section { get; set; }
+ public string Architecture { get; set; }
+ }
+ public class License
+ {
+ public string Type { get; set; }
+ public string Full_Text { get; set; }
+ }
+ public class RpmDependency
+ {
+ public string Package_Name { get; set; }
+ public string Package_Version { get; set; }
+ }
+}
diff --git a/tools-local/tasks/core-setup.tasks.builds b/tools-local/tasks/core-setup.tasks.builds
index d37dd953..718ab565 100644
--- a/tools-local/tasks/core-setup.tasks.builds
+++ b/tools-local/tasks/core-setup.tasks.builds
@@ -5,7 +5,8 @@
TargetGroup=netstandard1.3
-
+
TargetGroup=net45
diff --git a/tools-local/tasks/core-setup.tasks.csproj b/tools-local/tasks/core-setup.tasks.csproj
index 354bd672..39f2083b 100644
--- a/tools-local/tasks/core-setup.tasks.csproj
+++ b/tools-local/tasks/core-setup.tasks.csproj
@@ -37,18 +37,10 @@
-
- 0.1.0-preview-00022
-
-
- 0.1.0-preview-00022
-
-
- 0.1.0-preview-00022
-
-
- 0.1.0-preview-00022
-
+
+
+
+
4.5.24
None