rover icon indicating copy to clipboard operation
rover copied to clipboard

Be able to set BINARY_DOWNLOAD_PREFIX used in install.sh

Open mikeq opened this issue 1 year ago • 2 comments

Description

Our CI/CD pipelines do not have access to the outside world directly but through our Nexus Repo manager. The rover installation using the shell script has a hard coded value for the BINARY_DOWNLOAD_PREFIX, ideally this should pick up an environment variable if specified or default to the hardcoded value.

BINARY_DOWNLOAD_PREFIX=${BINARY_DOWNLOAD_PREFIX:-"https://github.com/apollographql/rover/releases/download"}

This would allow us to point BINARY_DOWNLOAD_PREFIX to our internal Nexus repo to fetch the rover release

This issue refers to https://github.com/apollographql/rover/blob/main/installers/binstall/scripts/nix/install.sh

mikeq avatar Apr 30 '24 07:04 mikeq

Most of the install script is about checking for dependencies and architecture. As a workaround, you could instead download the binary from your internal repo and run it directly (or add it to path manually).

dylan-apollo avatar May 01 '24 17:05 dylan-apollo

@dylan-apollo yeah, as a workaround I have copied the install.sh and made the change I suggest above to line 18 until this request is actioned. The script does an environment check for $VERSION being passed in and this is much the same.

It is better to have a script workout which binary I need, which will vary depending on what container I run it within or the build arguments passed to the CI pipeline.

I'm happy to submit a PR for it, but I believe that needs to be agreed in advance?

mikeq avatar May 02 '24 15:05 mikeq