Our build scripts were pulling down all of buildtools and run.exe in
service of "clean.{cmd|sh}". While having consisent commands across
the repos is a good thing to strive for, we are pulling down a bunch
of additional stuff we don't need for simple commands that have well
known analogs (e.g. git clean).
If we had been all in on run.exe, this might have made sense, but we
aren't, so it feels like something we should clean up.
By doing this, we can stop downloading bootstrap from github when we
build (super dangerous anyway because changes in buildtools could have
broken us).
In addition, I changed the way we install dotnet to just invoke the
script in `scripts/obtain/` instead of downloading a version from
GitHub. This makes local development of changes to obtain easier and
removes yet another place we had to download a script.
* Add support to build with the linux portable
* Pass targets to run for the linux portable
* Address PR comments
* Update the bootstrapper version
* Address the PR comments for improving the help text
* Fixing permissions
* Allow host info passed in from the command line to override machine settings
* Simplify the logic
* Address PR comments to keep a separate HostRid and HostOSName that are static
* Rename to BuildInfo.props
* Address PR comments
* Fix the previous merge
* Fix spacing
* Address PR comments
During the cli build, the cli downloads and executes the bootstrap
script from buildtools. The bootstrap script then downloads and executes
the dotnet-install script from cli, but in the 'rel/1.0.0' branch, not
the master branch.
This means that someone building cli's master branch will end up using
the dotnet-install.sh or dotnet-install.ps1 script from cli's rel/1.0.0
branch.
Fix that by telling the bootstrap script to download and use the version
of dotnet-install script from the master branch (which is the current
branch the user is building).
Ideally, we would just call the dotnet-install script in the current
repo/branch, but because the bootstrap script sits in the middle and is
part of a different repository, we can't.
This is a workaround for #5410.
* Switch to using new bootstrap script to initialize buildtools.
* Set up the version-specific shared runtime symlink in run-build so buildtools doesn't have to care about it.
* Address code review feedback.
* Addressed code review feedback.
* Change to using bootstrap script for Linux build as well.
* Change to using latest for CLI.