3 RUN apt-get update && apt-get install -y --no-install-recommends \
18 # Install dependencies for chromium browser
19 RUN apt-get install -y \
59 COPY scripts/sccache.sh /scripts/
60 RUN sh /scripts/sccache.sh
62 COPY scripts/cmake.sh /scripts/
65 COPY host-x86_64/x86_64-gnu-tools/checktools.sh /tmp/
67 RUN curl -sL https://nodejs.org/dist/v14.4.0/node-v14.4.0-linux-x64.tar.xz | tar -xJ
68 ENV NODE_FOLDER=/node-v14.4.0-linux-x64/bin
69 ENV PATH="$NODE_FOLDER:${PATH}"
71 COPY host-x86_64/x86_64-gnu-tools/browser-ui-test.version /tmp/
73 # For now, we need to use `--unsafe-perm=true` to go around an issue when npm tries
74 # to create a new folder. For reference:
75 # https://github.com/puppeteer/puppeteer/issues/375
77 # We also specify the version in case we need to update it to go around cache limitations.
79 # The `browser-ui-test.version` file is also used by bootstrap to emit warnings in case
80 # the local version of the package is different than the one used by the CI.
81 RUN npm install -g browser-ui-test@$(head -n 1 /tmp/browser-ui-test.version) --unsafe-perm=true
83 ENV RUST_CONFIGURE_ARGS \
84 --set llvm.allow-old-toolchain \
85 --build=x86_64-unknown-linux-gnu \
86 --save-toolstates=/tmp/toolstate/toolstates.json
88 ENV SCRIPT /tmp/checktools.sh ../x.py && \
89 NODE_PATH=`npm root -g` python3 ../x.py test src/test/rustdoc-gui --stage 2