Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CI pipeline for installer #14

Closed
wants to merge 10,000 commits into from
Closed

CI pipeline for installer #14

wants to merge 10,000 commits into from

Conversation

jkoritzinsky
Copy link
Member

These were the changes I needed to get the CI pipeline building for the installer partition of the repository.

  • update install-nuget-credprovider-then-build.sh to understand subsets (not strictly necessary, but it made things a bit cleaner in the initial prototyping day).
  • Fix paths to the various YAML files included by the pipeline.
  • Update the path mounted in the docker container to be root/runtime instead of root/coresetup.
  • Fix paths for the manpages for the packaging steps.
  • Disable signing during the installer build.
  • Fix path to the cross directory
  • Fix placeholder detection in tools-local to work correctly within the docker container.
  • Fix parameters to installer.cmd and installer.sh to correctly pass --build and --restore on all platforms to restore the tools needed.

Fadi Hanna and others added 30 commits October 25, 2019 14:58
* Packaging for crossgen2 as a framework dependent application.

This requires us to manually emit a runtimeconfig json for now, since the build produces a self-contained version of crossgen2.

Also includes some minor cleanups to the way we build crossgen2:
- Removed from build.proj since we explicitly build it as a self-contained application from build.cmd/build.sh
- Removed the output path property from the csproj files. We use an explicit -o argument when publishing to specify the output folder
…025.3 (#8671)

- System.Windows.Extensions - 5.0.0-alpha.1.19525.3
- System.CodeDom - 5.0.0-alpha.1.19525.3
- System.Configuration.ConfigurationManager - 5.0.0-alpha.1.19525.3
- Microsoft.NETCore.Platforms - 5.0.0-alpha.1.19525.3
- Microsoft.NETCore.Targets - 5.0.0-alpha.1.19525.3
- Microsoft.Private.CoreFx.NETCoreApp - 5.0.0-alpha.1.19525.3
- Microsoft.Win32.Registry - 5.0.0-alpha.1.19525.3
- Microsoft.Win32.SystemEvents - 5.0.0-alpha.1.19525.3
- Microsoft.Windows.Compatibility - 5.0.0-alpha.1.19525.3
- System.Diagnostics.EventLog - 5.0.0-alpha.1.19525.3
- System.Security.AccessControl - 5.0.0-alpha.1.19525.3
- System.Security.Cryptography.Cng - 5.0.0-alpha.1.19525.3
- System.Security.Cryptography.Pkcs - 5.0.0-alpha.1.19525.3
- System.Security.Cryptography.ProtectedData - 5.0.0-alpha.1.19525.3
- System.Security.Cryptography.Xml - 5.0.0-alpha.1.19525.3
- System.Security.Permissions - 5.0.0-alpha.1.19525.3
- System.Security.Principal.Windows - 5.0.0-alpha.1.19525.3
- System.Text.Encodings.Web - 5.0.0-alpha.1.19525.3
- System.Text.Json - 5.0.0-alpha.1.19525.3
- System.Threading.AccessControl - 5.0.0-alpha.1.19525.3
- System.Resources.Extensions - 5.0.0-alpha.1.19525.3
- System.DirectoryServices - 5.0.0-alpha.1.19525.3
- System.Drawing.Common - 5.0.0-alpha.1.19525.3
- System.IO.FileSystem.AccessControl - 5.0.0-alpha.1.19525.3
- System.IO.Packaging - 5.0.0-alpha.1.19525.3
This change modifies R2RDump to use the new
System.CommandLine.Experimental module instead of the obsoleted
System.CommandLine parser we were using before. Apart from general
hygiene w.r.t. using up-to-date components one practical reason
for this switch-over is that the old parser is only available on
the unreliable myget.org nuget feed we plan to drop as part of
our planned repo consolidation.

During debugging of the change I noticed a bug in the implementation
of the "--verbose" option - it shouldn't be setting EntryPoints,
otherwise we actually end up with a super-terse output including
just the entry points. I have anecdotally verified that, after fixing
this in both the "new" and "old" R2RDump both produce identical output.

Thanks

Tomas
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Improved performance of complex casts by caching results of cast analysis.

* Easy out for same types.
* Introduce cast cache
* Use managed heap for the cache
* Fixes. Get rid of a fake array typedesc.
* TypeDesc conversions caching
* Removed NoGC helpers
* Cache typedesc conversions
* Renamed remaining trivial NoGC casting helpers
* Some cleanups. Comments, redundant code.
* PR feedback.
* Update dependencies from https://github.com/dotnet/coreclr build 20191025.1

- Microsoft.NET.Sdk.IL - 5.0.0-alpha1.19525.1
- Microsoft.NETCore.ILAsm - 5.0.0-alpha1.19525.1
- Microsoft.NETCore.Runtime.CoreCLR - 5.0.0-alpha1.19525.1

* remove Stopwatch.*.cs from System.Runtime.Extensions build

* Disable tests against CoreCLR bug
…aces

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
…025.2 (#8673)

- Microsoft.DotNet.XUnitExtensions - 5.0.0-beta.19525.2
- Microsoft.DotNet.VersionTools.Tasks - 5.0.0-beta.19525.2
- Microsoft.DotNet.Arcade.Sdk - 5.0.0-beta.19525.2
- Microsoft.DotNet.Build.Tasks.Feed - 5.0.0-beta.19525.2
- Microsoft.DotNet.Build.Tasks.Packaging - 5.0.0-beta.19525.2
- Microsoft.DotNet.Build.Tasks.SharedFramework.Sdk - 5.0.0-beta.19525.2
…025.2 (#42137)

- Microsoft.DotNet.XUnitExtensions - 5.0.0-beta.19525.2
- Microsoft.DotNet.XUnitConsoleRunner - 2.5.1-beta.19525.2
- Microsoft.DotNet.VersionTools.Tasks - 5.0.0-beta.19525.2
- Microsoft.DotNet.ApiCompat - 5.0.0-beta.19525.2
- Microsoft.DotNet.Arcade.Sdk - 5.0.0-beta.19525.2
- Microsoft.DotNet.Build.Tasks.Configuration - 5.0.0-beta.19525.2
- Microsoft.DotNet.Build.Tasks.Feed - 5.0.0-beta.19525.2
- Microsoft.DotNet.Build.Tasks.Packaging - 5.0.0-beta.19525.2
- Microsoft.DotNet.CodeAnalysis - 5.0.0-beta.19525.2
- Microsoft.DotNet.CoreFxTesting - 5.0.0-beta.19525.2
- Microsoft.DotNet.GenAPI - 5.0.0-beta.19525.2
- Microsoft.DotNet.Helix.Sdk - 5.0.0-beta.19525.2
- Microsoft.DotNet.RemoteExecutor - 5.0.0-beta.19525.2
- Microsoft.DotNet.GenFacades - 5.0.0-beta.19525.2
…91026.1 (#8674)

- NETStandard.Library - 2.2.0-prerelease.19526.1
* Enable building with clang 9

Update the docker images that we use for building.

* Add missing clang9 option to build.sh / build-test.sh

* Fix clang version matching and MUSL build

* Prevent Clang 9 from optimizing out s_gsCookie write
* Can't declare variable and also have extern c

* Remove extern c from variable declartion
)

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
The file was there to keep anonymous types used by DiagnosticsHandler from having their getters removed.  But a) it was relying on the implementation detail name generated by Roslyn, and b) it was keeping alive other state from other anonymous types in the assembly.  I changed it to use concrete types instead.  This also happens to result in less code, because we don't need the generated Equals/GetHashCode methods generated for anonymous types.
It's not necessary to specify the assembly name when the consumer is in the same assembly.
* Update dependencies from https://github.com/dotnet/corefx build 20191024.13

- Microsoft.NETCore.Platforms - 5.0.0-alpha.1.19524.13
- Microsoft.Private.CoreFx.NETCoreApp - 5.0.0-alpha.1.19524.13

* Update dependencies from https://github.com/dotnet/corefx build 20191024.14

- Microsoft.NETCore.Platforms - 5.0.0-alpha.1.19524.14
- Microsoft.Private.CoreFx.NETCoreApp - 5.0.0-alpha.1.19524.14

* Update dependencies from https://github.com/dotnet/corefx build 20191025.6

- Microsoft.NETCore.Platforms - 5.0.0-alpha.1.19525.6
- Microsoft.Private.CoreFx.NETCoreApp - 5.0.0-alpha.1.19525.6

* Workaround https://github.com/dotnet/coreclr/issues/27465
- Use PreserveDependencyAttribute for ctors used via reflection by FetcherForProperty
- Remove reflection use entirely when looking up Activity events
<!-- TODO: (Consolidation) Remove when consolidated. -->
<PropertyGroup>
<IsRuntimeRepository Condition="Exists('..\..\..\.dotnet-runtime-placeholder')">true</IsRuntimeRepository>
<IsRuntimeRepository Condition="Exists('$(MSBuildThisFileDirectory)..\.dotnet-runtime-placeholder')">true</IsRuntimeRepository>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is already fixed in upstream :)

@@ -118,8 +118,8 @@ jobs:
- script: |
set -x
df -h
$(RunArguments) $(BuildScript) $(BuildArguments)
displayName: Build
$(RunArguments) $(BuildScript) --restore --build --test $(BuildArguments)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please revert these changes, I submitted the correct fix in the consolidation repo: https://github.com/dotnet/consolidation/pull/16.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll make sure not to backport these specific changes when backporting to core-setup.

@ViktorHofer
Copy link
Member

Thanks @jkoritzinsky! What's your strategy for backporting the changes to upstream? @safern is currently doing the same for corefx so you might want to sync-up with him.

@@ -32,7 +32,7 @@
<DebPackageVersion>$(HostPackageVersion)</DebPackageVersion>
<InputRoot>$(SharedHostPublishRoot)</InputRoot>
<DebFile>$(SharedHostInstallerFile)</DebFile>
<ManPagesDir>$(RepoRoot)Documentation/manpages</ManPagesDir>
<ManPagesDir>$(RepoRoot)docs/installer/manpages</ManPagesDir>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also fixed in upstream with dotnet/core-setup#8767 and https://github.com/dotnet/consolidation/pull/17, to point it out. This change is good to get builds going though.

@jkoritzinsky
Copy link
Member Author

/azp run runtime-installer

@azure-pipelines
Copy link

Azure Pipelines could not run because the pipeline triggers exclude this branch/path.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.