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

Check OS / pre-req's and fail fast if not met #5797

Closed
wgknowles opened this issue May 9, 2020 · 4 comments · Fixed by #7381
Closed

Check OS / pre-req's and fail fast if not met #5797

wgknowles opened this issue May 9, 2020 · 4 comments · Fixed by #7381
Assignees
Labels
Good First Issue Good for newcomers Help Wanted Extra attention is needed Priority: Low Low priority item

Comments

@wgknowles
Copy link
Contributor

wgknowles commented May 9, 2020

🚀 Feature Request

Description

A lot of time and hassle is spent troubleshooting issues that boil down to not running on supported operating systems, or not having the necessary pre-requisites (e.g. Homebrew on macOS). It may be helpful to add in a check for this info by default, and then to introduce a new flag to bypass the check for people who are tinkering with unsupported configurations.

Describe the solution you'd like

Example error messages:

ERROR: System does not meet the minimum Operating System requirement, use --bypass-os-check to skip this check. (expected Mac OS X 10.14+, found 10.13) 
ERROR: System does not meet software pre-requisites, use --bypass-prereq-check to skip this check. (Homebrew not found).

Describe alternatives you've considered

Docs have all the info, but people don't RTFM. Current error messages / stack dumps are quite scary.

@prestonvanloon prestonvanloon added Good First Issue Good for newcomers Help Wanted Extra attention is needed labels May 11, 2020
@0xKiwi 0xKiwi added the Priority: Low Low priority item label May 11, 2020
@0xKiwi
Copy link
Contributor

0xKiwi commented May 11, 2020

@prestonvanloon any ideas on how this could be done? How would this work for docker users?

What conditions should we considered required by the client?

@prestonvanloon
Copy link
Member

Supported OS / architectures are:

  • Linux AMD64
  • Linux ARM64
  • Mac OS X AMD64 (OS X 10.14+ only)
  • Windows AMD64

The idea would be to complain if the host is not one of those things.

@dv8silencer
Copy link
Contributor

I'd be happy to try to tackle this. Other than Homebrew, is there any other (software, non-OS) prerequisite?

@farazdagi
Copy link
Contributor

@dv8silencer are you still interested in tackling this issue?

Re. answer to your question: the OSX version of find util is not GNU find compatible, so prysm.sh script will require one to install findutils with brew. This is only needed when system is run with prysm.sh though (and is already handled by the script itself).

I believe, we should keep scope simple and focused, that's:

  • start with OS/arch check only
  • not sure if we even need that separate disable check flag i.e. emitting warning when minimum requirements are not met should be enough (no need to stop the system, and then not to stop it when "disable check" flag is provided). User will have more feedback of what's going on, and that should be it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Good First Issue Good for newcomers Help Wanted Extra attention is needed Priority: Low Low priority item
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants