This repository was archived by the owner on Aug 18, 2020. It is now read-only.
[DEVOPS-985] add useStackBinaries parameter to default.nix #3342
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
This adds a top level argument to cardano-sl nix to
useStackBinaries
. By passing this argument, None of the nix built cardano binaries are used or even in the dependency tree. All this requires is nix to be installed to generate scripts developers can run to:The way this works is if
useStackBinaries
is specified, the binary being executed that normal comes fromiohkPkgs
built by nix is prefixed withstack exec --
and those binaries are removed from the nix dependency tree. Essentially, it treats the binaries as strings and prepends a string making for super fast nix builds and shifting the burden to stack at run-time.To test you need:
stack in your PATH
be in the root of the
cardano-sl
reporun any of the following, or read the exchange docs for more complex examples:
nix-build -A connectScripts.mainnet.wallet -o launch_mainnet_wallet_stack --arg useStackBinaries true && ./launch_mainnet_wallet_stack
nix-build -A demoCluster -o launch_demo_cluster_stack --arg useStackBinaries true && ./launch_demo_cluster_stack
nix-build -A walletIntegrationTests -o wallet_integration_tests_stack --arg useStackBinaries true && ./wallet_integration_tests_stack
One final note, since these are not run in an isolated sandbox, there is a potential of your system interfering with the behavior. For example, If
walletIntegrationTests
throws SSL errors, there's a good chance you have a wallet already listening on port 8090.Linked issue
https://iohk.myjetbrains.com/youtrack/issue/DEVOPS-985
Type of change
Developer checklist
Testing checklist
QA Steps
Screenshots (if available)