mirror of
https://github.com/serai-dex/serai.git
synced 2025-12-08 12:19:24 +00:00
Add a crate to test the runtime can be reproducibly built
This commit is contained in:
@@ -52,15 +52,10 @@ and signatures.
|
||||
* Expose necessary ports.
|
||||
* Map necessary volumes.
|
||||
|
||||
The best way is to build using `docker compose`. If you'd prefer to build using
|
||||
`docker` directly, each image can be built independently.
|
||||
|
||||
**Example:** `docker build ./coins/bitcoin`
|
||||
|
||||
### Entrypoint
|
||||
|
||||
The Serai node and external networks' nodes are each started from an entrypoint
|
||||
script inside the /scripts folder.
|
||||
script inside the `/scripts `folder.
|
||||
|
||||
To update the scripts on the image you must rebuild the updated images using the
|
||||
`--build` flag after `up` in `docker compose`.
|
||||
|
||||
@@ -76,7 +76,19 @@ services:
|
||||
- "./processor/scripts:/scripts"
|
||||
entrypoint: /scripts/entry-dev.sh
|
||||
|
||||
# Serai services
|
||||
# Serai runtime
|
||||
|
||||
runtime:
|
||||
profiles:
|
||||
- runtime
|
||||
build:
|
||||
context: ../
|
||||
dockerfile: ./orchestration/runtime/Dockerfile
|
||||
entrypoint: |
|
||||
sh -c "cd /serai/substrate/runtime && cargo clean && cargo build --release && \
|
||||
sha256sum /serai/target/release/wbuild/serai-runtime/serai_runtime.wasm"
|
||||
|
||||
# Serai nodes
|
||||
|
||||
_serai:
|
||||
&serai_defaults
|
||||
|
||||
28
orchestration/runtime/Dockerfile
Normal file
28
orchestration/runtime/Dockerfile
Normal file
@@ -0,0 +1,28 @@
|
||||
FROM rust:1.71.0-slim-bookworm as builder
|
||||
|
||||
# Add files for build
|
||||
ADD common /serai/common
|
||||
ADD crypto /serai/crypto
|
||||
ADD coins /serai/coins
|
||||
ADD message-queue /serai/message-queue
|
||||
ADD processor /serai/processor
|
||||
ADD coordinator /serai/coordinator
|
||||
ADD substrate /serai/substrate
|
||||
ADD tests /serai/tests
|
||||
ADD Cargo.toml /serai
|
||||
ADD Cargo.lock /serai
|
||||
ADD AGPL-3.0 /serai
|
||||
|
||||
WORKDIR /serai
|
||||
|
||||
# Move to a Debian package snapshot
|
||||
RUN rm -rf /etc/apt/sources.list.d/debian.sources && \
|
||||
rm -rf /var/lib/apt/lists/* && \
|
||||
echo "deb [arch=amd64] http://snapshot.debian.org/archive/debian/20230703T000000Z bookworm main" > /etc/apt/sources.list && \
|
||||
apt update
|
||||
|
||||
# Install dependencies
|
||||
RUN apt install clang -y
|
||||
|
||||
# Add the wasm toolchain
|
||||
RUN rustup target add wasm32-unknown-unknown
|
||||
Reference in New Issue
Block a user