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

Document the acquisition experience of tarballs/zip files #4591

Closed
Sridhar-MS opened this issue Dec 16, 2015 · 8 comments
Closed

Document the acquisition experience of tarballs/zip files #4591

Sridhar-MS opened this issue Dec 16, 2015 · 8 comments
Assignees
Milestone

Comments

@Sridhar-MS
Copy link
Contributor

Should we be using something like https://github.com/dotnet/cli/blob/master/scripts/install.sh?

@brthor
Copy link
Contributor

brthor commented Dec 16, 2015

Currently we use this install script in our own build to install stage 0.

#4489 is tracking the inconsistencies between that script and the deb/pkg installations.

Are there changes we need to make besides ironing out those inconsistencies?

@blackdwarf @piotrpMSFT

@blackdwarf
Copy link

@brthor there are two things why I wanted this issue to exist:

  1. In order to make a call on whether manual installing is using a script or using very manual works (i.e. curl the tarball, untar it, copy etc.)
  2. If we make a call on using a script (a-la install.sh/install.ps1) to track the work needed to make sure that the script is ready for consumption.

For instance, if we are using the script, then I see no reason that the environment variables that currently exist should be there, you should also be able to specify the target directory where the binaries should be unzipped etc. If we go the script way, we should reuse as much as possible from install.sh/install.sp1 but decouple it from our build for external users (should make it simpler).

Thoughts?

/cc @piotrpMSFT

@blackdwarf
Copy link

After some consideration, I think we should have two ways of getting the "local install" up and running:

  1. 100% manual way
  2. Install scripts (install.sh for *nix and install.ps1 for Windows)

The first is easy enough to reason about. The users download the archives (zip/tarball) and then unzip them to a given location. They need to set all of the environment variables manually and so forth. This is a way to install that is provided by the virtue of archives being on a publicly accessible feed. :)

The second way would rely on similar logic that currently exists in the install scripts for our own build, but would be decoupled and allow for at least two parameters at invocation:

  1. The target directory where the tools should live
  2. The version/channel so you can download different things and reason about what you are downloading. You may not want to have the latest all the time.

Updating bits through this mechanism would be to just re-invoke the script(s) with exactly the same parameters for install location and different parameters for version, and that would mean that your install location is overwritten with new bits.

Both of these would require the user to pre-install the prerequisites for the CLI to run based on documentation that we need to add.

Thoughts?

/cc @glennc

@glennc
Copy link
Contributor

glennc commented Dec 23, 2015

Given that this is for end users we should check for pre-reqs as well if we can, and at least warn if they aren't there.

I see no reason at the moment why this script couldn't be used in the build as well though, no need to maintain two.

@blackdwarf
Copy link

@glennc sure, whether they are separate or same is really just a decision of the implementer. ;) We can check for pre-reqs, that's a good idea.

@Sridhar-MS
Copy link
Contributor Author

There are already some checks for pre-reqs in install.sh.

@blackdwarf
Copy link

@piotrpMSFT @glennc @Sridhar-MS @brthor are we fine with this plan moving forward? Also, @glennc are you on board to change the installer scripts?

@blackdwarf
Copy link

OK, so @krwq is changing the installer scripts and dotnet/cli#1482 is tracking the spec. I will close this issue since it is out of date and this point.

@msftgits msftgits transferred this issue from dotnet/cli Jan 31, 2020
@msftgits msftgits added this to the 1.0.0-rc2 milestone Jan 31, 2020
rainersigwald pushed a commit that referenced this issue Jul 20, 2020
…0200529.3 (#4591)

Microsoft.Build.Localization , Microsoft.Build
 From Version 16.7.0-preview-20279-01 -> To Version 16.7.0-preview-20279-03

Co-authored-by: dotnet-maestro[bot] <dotnet-maestro[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants