separate agd build process from runtime files
See original GitHub issueWhat is the Problem Being Solved?
Our work with agd
to date involves building from source: git clone ...; yarn && yarn build
and the like.
We have yet to document a result from the build process that can be copied from a build host to a deployment host.
Description of the Design
Perhaps a tarball that could be installed in /usr/local
similar to installing go?
We would have to identify the necessary set of files. Perhaps the built agoric-sdk
directory suffices? But agd
itself typically goes in ~/go/bin
; would that be a post-unpack step?
Which platforms to support? How portable is the result of a yarn build
?
stretch goal
- support unattended installation with tools such as cosmovisor.
Security Considerations
This would reduce some risk involved in the yarn && yarn build
step, which relies on various scripts from npm to be well-behaved. We do have checksums in our yarn.lock
file that give reasonable assurance that the same scripts we routinely run in ci and development would be run by customers.
Test Plan
Build a release artifact and try it out in places like a blank ubuntu docker container.
Issue Analytics
- State:
- Created a year ago
- Comments:5 (5 by maintainers)
Top GitHub Comments
I am not sure how portable some of the node addons are between linux versions. I do remember running into issues between Ubuntu/debian major versions, probably because of some dynamically linked libraries.
In a cosmic-swingset meeting today, we agreed to de-emphasize the “binary” goal and emphasize the goal of building on one host and deploying on another.