1. Fix bug in test builds that was causing failures for some reason I
still don't understand.
`tee` output to stderr was failing with "resource temporarily
unavailable". The hack that fixed it was to simply write the herb
output to a file and dump it to stdout after it fully completes.
2. sh/cachix works without CACHIX keys. Simply doesn't upload in that case.
3. Write code to cache testbus builds (disabled for now)
4. fakeship builds get further in bootstrap sequence before committing.
This fixes problems with PRs from forked repos and enables the scripts
to be run locally.
By baking (potentially) multiple pills into an image, we can provide
mainnet vs ropsten images. It is still up to the operator to pass
along the pill path(s) to the entrypoint. For example, using Docker:
docker run --tty urbit -B /share/brass.pill -J /share/ivory.pill ...
The main .image attribute still uses only the solid pill, and image-ropsten
has been provided with brass and ivory pills.
Additionally herb has been added to the image for convenience.
Arvo testnets typically use Ropsten's deploy of the Azimuth contract
instead of mainnet's. This commit adds an 'arvo-ropsten' derivation for
Arvo as specialised to Ropsten.
In addition to using a different Azimuth address in %zuse, this also
configures %ames and :acme appropriately for running an alternate
network on Ropsten. %ames has its protocol version incremented, and
:acme uses the Let's Encrypt staging API.
Included here are derivations for creating brass and ivory pills using
arvo-ropsten, to boot.
Rather than conditional reconstructing the "urbit/bin/urbit-debug -g"
string everytime using the debug conditional, this information has been
added to the derivation's .meta attribute.
* Add cross-compilation for `lmdb`.
* Got built caching working in CI with `cachix`.
* Cache cross compilation dependencies and toolchains.
* Do release builds in CI.
* Upload release builds to `bootstrap.urbit.org` on successful build.
* Lots of optimization work for CI.
* Boot from a solid pill in CI and load arvo with `-A`.
* Increase `vere` HTTP timeout to 15m.