# name the portage image FROM gentoo/portage:latest as portage # image is based on stage3-x86 FROM gentoo/stage3-x86:latest # copy the entire portage volume in COPY --from=portage /usr/portage /usr/portage RUN emerge -qv sys-libs/readline:0 sys-apps/util-linux dev-util/cmake sys-devel/make dev-vcs/git sys-libs/libfaketime net-misc/curl # Setup language environment ENV LC_ALL en_US.UTF-8 ENV LANG en_US.UTF-8 ENV LANGUAGE en_US.UTF-8 # Add source directory ADD . /root/code/ WORKDIR /root/code/ # Setup Rust RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs > rustup.sh && \ sh rustup.sh -y --profile minimal --default-toolchain stable --component rust-docs # Setup taskwarrior RUN git clean -dfx RUN git submodule init RUN git submodule update RUN cmake -DCMAKE_BUILD_TYPE=debug . RUN make -j8 RUN make install RUN task --version # Setup tests WORKDIR /root/code/test/ RUN make -j8 CMD ["bash", "-c", "./run_all -v ; cat all.log | grep 'not ok' ; ./problems"]