# evobgp-agent + BIRD 2.14+ (bird/birdc) из исходников — совпадает с образом evobgp-bird2.
# См. gobinary/Dockerfile — ECR Public вместо прямого pull с Docker Hub (устойчивость CI).
FROM public.ecr.aws/docker/library/golang:1.22-bookworm AS build
WORKDIR /src
COPY go.mod go.sum ./
COPY . .
RUN go build -trimpath -ldflags="-s -w" -o /out/evobgp-agent ./cmd/evobgp-agent

FROM public.ecr.aws/docker/library/debian:bookworm-slim AS bird-build
ARG BIRD_VERSION=2.14
COPY deploy/docker/bird/bird-from-source.sh /tmp/bird-from-source.sh
RUN chmod +x /tmp/bird-from-source.sh && BIRD_VERSION="${BIRD_VERSION}" /tmp/bird-from-source.sh

FROM public.ecr.aws/docker/library/debian:bookworm-slim
RUN apt-get update && apt-get install -y --no-install-recommends libreadline8 libtinfo6 ca-certificates \
	&& rm -rf /var/lib/apt/lists/*
COPY --from=bird-build /usr/local/sbin/bird /usr/local/sbin/bird
COPY --from=bird-build /usr/local/sbin/birdc /usr/local/sbin/birdc
COPY --from=build /out/evobgp-agent /usr/local/bin/evobgp-agent
WORKDIR /etc/bird
ENTRYPOINT ["/usr/local/bin/evobgp-agent"]
