Files
compliance-scanner-agent/Dockerfile.dashboard
T
sharangandClaude Opus 4.8 2c03371b18
CI / Check (push) Skipped
CI / Check (pull_request) Failing after 3m23s
CI / Detect Changes (pull_request) Skipped
CI / Deploy Agent (pull_request) Skipped
CI / Deploy Dashboard (pull_request) Skipped
CI / Deploy Docs (pull_request) Skipped
CI / Deploy MCP (pull_request) Skipped
chore(ci): repoint registry/git/cargo meghsakha.com -> breakpilot.com
TLD migration (Phase-3 prep). CI now pushes/pulls against **breakpilot.com** instead of meghsakha.com:
- image registry `repo.meghsakha.com` -> `repo.breakpilot.com` (Harbor, same account)
- git host `gitea.meghsakha.com` -> `git.breakpilot.com` (clone/remote/release-API/insteadOf)
- cargo index `crates.meghsakha.com` -> `crates.breakpilot.com`

Dual-serve means this is a no-op today; it keeps CI working once meghsakha is retired.
Only `.gitea/workflows/*` and `Dockerfile*` touched.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-06 10:30:53 +02:00

33 lines
1.1 KiB
Docker

FROM rust:1.94-bookworm AS builder
RUN cargo install dioxus-cli --version 0.7.3 --locked
ARG DOCS_URL=/docs
WORKDIR /app
COPY . .
ENV DOCS_URL=${DOCS_URL}
# compliance-agent (a workspace member) depends on the private tramiton-core git
# repo, so the workspace resolve needs it even to build the dashboard.
# Authenticate the fetch with a PAT passed as a BuildKit secret.
RUN --mount=type=secret,id=tramiton_token \
if [ -s /run/secrets/tramiton_token ]; then \
git config --global \
url."https://sharang:$(cat /run/secrets/tramiton_token)@git.breakpilot.com/".insteadOf \
"ssh://git@git.breakpilot.com:22222/"; \
fi && \
CARGO_NET_GIT_FETCH_WITH_CLI=true dx build --release --package compliance-dashboard
FROM debian:bookworm-slim
RUN apt-get update && apt-get install -y ca-certificates libssl3 && rm -rf /var/lib/apt/lists/*
WORKDIR /app
COPY --from=builder /app/target/dx/compliance-dashboard/release/web/compliance-dashboard /app/compliance-dashboard
COPY --from=builder /app/target/dx/compliance-dashboard/release/web/public /app/public
ENV IP=0.0.0.0
EXPOSE 8080
ENTRYPOINT ["./compliance-dashboard"]