FROM rustlang/rust:nightly-alpine3.10 # findutils needed to replace busybox xargs because it is failing to # pass stdin through when using the `-a` flag RUN apk --no-cache add bash git npm nodejs findutils # Create unprivileged user RUN addgroup -S duster && adduser -S duster -G duster # Install LinkedIn DustJS. Installing it globally before copying in # the repo to avoid spamming the npm servers with every codebase # change. RUN npm install -g dustjs-linkedin dustjs-helpers # Copy repo into duster user's directory RUN mkdir /home/duster/duster WORKDIR /home/duster/duster COPY . . RUN chown -R duster:duster /home/duster/duster USER duster RUN git clean -dfxq RUN cargo build RUN npm link dustjs-linkedin dustjs-helpers ENTRYPOINT ["/home/duster/duster/js/run_compliance_suite.bash"]