# Build stage
FROM golang:alpine AS builder

WORKDIR /build

COPY go.mod go.sum ./
RUN go mod download

COPY cmd/ ./cmd/
COPY internal/ ./internal/
RUN CGO_ENABLED=0 GOOS=linux go build -o host-agent ./cmd/host-agent

# Run stage
FROM alpine:latest

RUN apk --no-cache add ca-certificates

WORKDIR /app
COPY --from=builder /build/host-agent .

# gopsutil이 호스트 시스템 메트릭을 읽도록 경로 지정 (compose에서 /proc 등 마운트)
ENV HOST_PROC=/host/proc \
    HOST_SYS=/host/sys \
    HOST_ETC=/host/etc

CMD ["./host-agent"]
