Add fmt, check, and clippy targets to the Makefile so that people don't
have to remember the exact set of parameters needed. Also fix the test
target since we no longer run the tests through docker.
* solana/devnet_setup.sh: Build CLI instead of JITing it
This makes the registration process a few seconds faster.
* solana/Dockerfile: Don't copy devnet_setup.sh at the beginning
This is unnecessary, and inefficient, because each time the file
changes, a lot of things get rebuilt/reinstalled.
* solana/Dockerfile: cache cargo registry
this allows skipping rebuilding cargo dependencies. Small contract
changes now rebuild in 20s, down from 60s before
* Remove unnecessary debian depencies
* Rename rust-toolchain.toml to rust-toolchain (rustup in the container
didn't recognise it with .toml extension) and use in containers
instead of manually specifying rust version
* solana/Dockerfile: Use prebuilt docker image
* solana: Add docs on docker base images
Refactor the solana Dockerfile so that the solana release installation
is a separate stage and have the builder stage derive from it. Add a
new "ci_tests" stage that also derives from the solana stage but runs
the integration tests instead.
Invoke the solana ci_tests stage from the Tiltfile when ci_tests are
enabled.
Merge all the separate solana crates into a single workspace. This is
the same thing we do for terra and will make it easier to check / lint /
test all the crates together.
This will make is easier to separate modules and solitaire in the future.
We also get rid of the old bridge code.
Change-Id: I4d663c36739dfec77cd5d3f1ed6b51f422fe0c91
We no longer need to carry a patch and build Solana, and can use
solana-test-validator (with sleepy PoH!) instead. This significantly reduces
build times and will make downstream testing much easier.
Also remove the remnants of do.sh and the old BPF toolchain.
Test Plan: Ran E2E tests.
* Tiltfile: Make the guardian k8s_resource depend on solana-devnet
This makes guardian network convergence faster as the guardian pods
don't have to suffer from increasing redeploy back-off delays. This
should impact performance neglibibly as solana-devnet is still the
heaviest build we perform (at the time of this writing saturating a
32-thread Ryzen 9 CPU on my build machine.)
* hotfix bpf-sdk: bump bpf-sdk; use cargo-build-bpf