FROM rust:latest AS build-env
COPY ./ /src/
COPY ./dockerfiles/netrc /root/.netrc
RUN mkdir /root/.cargo
COPY ./dockerfiles/cargo-config /.cargo/config
RUN curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add -
RUN echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list
RUN curl -sL https://deb.nodesource.com/setup_13.x | bash -
RUN apt-get update && apt-get install -y strace build-essential clang nodejs yarn
WORKDIR /src/react-slideshow
RUN yarn install
RUN yarn build
WORKDIR /src
RUN cargo version && cargo install --path .

FROM rust:slim
COPY --from=build-env /usr/local/cargo/bin/photosync /usr/bin/
