Files
xahaud/bin/ci
Nik Bougalis f072469409 Simplify & modernize code:
- Simplify and consolidate code for parsing hex input.
- Replace beast::endian::order with boost::endian::order.
- Simplify CountedObject code.
- Remove pre-C++17 workarounds in favor of C++17 based solutions.
- Improve `base_uint` and simplify its hex-parsing interface by
  consolidating the `SexHex` and `SetHexExact` methods into one
  API: `parseHex` which forces callers to verify the result of
  the operation; as a result some public-facing API endpoints
  may now return errors when passed values that were previously
  accepted.
- Remove the simple fallback implementations of SHA2 and RIPEMD
  introduced to reduce our dependency on OpenSSL. The code is
  slow and rarely, if ever, exercised and we rely on OpenSSL
  functionality for Boost.ASIO as well.
2020-12-04 12:45:12 -08:00
..
2020-12-04 12:45:12 -08:00
2019-08-05 09:49:43 -07:00
2020-12-04 12:45:12 -08:00

In this directory are two scripts, build.sh and test.sh used for building and testing rippled.

(For now, they assume Bash and Linux. Once I get Windows containers for testing, I'll try them there, but if Bash is not available, then they will soon be joined by PowerShell scripts build.ps and test.ps.)

We don't want these scripts to require arcane invocations that can only be pieced together from within a CI configuration. We want something that humans can easily invoke, read, and understand, for when we eventually have to test and debug them interactively. That means:

(1) They should work with no arguments. (2) They should document their arguments. (3) They should expand short arguments into long arguments.

While we want to provide options for common use cases, we don't need to offer the kitchen sink. We can rightfully expect users with esoteric, complicated needs to write their own scripts.

To make argument-handling easy for us, the implementers, we can just take all arguments from environment variables. They have the nice advantage that every command-line uses named arguments. For the benefit of us and our users, we document those variables at the top of each script.