Add standalone ATO controller in lean Rust.
Some checks are pending
CodeView ATO CI / rust (push) Waiting to run
CodeView ATO CI / integration (push) Blocked by required conditions

Pure ato-core logic, minimal HTTP client, JSON config and spec files.
Docker build with tests; integrates with TrainSim over simple REST API.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Mona Lisa 2026-06-14 20:37:21 +00:00
parent b4e580af11
commit a8d40b466b
20 changed files with 748 additions and 24 deletions

17
Dockerfile Normal file
View file

@ -0,0 +1,17 @@
FROM rust:1.85-bookworm AS builder
WORKDIR /src
COPY Cargo.toml ./
COPY crates ./crates
COPY config ./config
COPY spec ./spec
RUN cargo test --workspace && cargo build --release -p ato-app
FROM debian:bookworm-slim
RUN apt-get update && apt-get install -y --no-install-recommends ca-certificates \
&& rm -rf /var/lib/apt/lists/*
COPY --from=builder /src/target/release/ato /usr/local/bin/ato
COPY config/ato.default.json /etc/ato/ato.default.json
ENV ATO_CONFIG=/etc/ato/ato.default.json
USER nobody
WORKDIR /etc/ato
ENTRYPOINT ["/usr/local/bin/ato"]