1*bb4ee6a4SAndroid Build Coastguard Worker# Copyright 2023 The ChromiumOS Authors 2*bb4ee6a4SAndroid Build Coastguard Worker# Use of this source code is governed by a BSD-style license that can be 3*bb4ee6a4SAndroid Build Coastguard Worker# found in the LICENSE file. 4*bb4ee6a4SAndroid Build Coastguard Worker 5*bb4ee6a4SAndroid Build Coastguard WorkerFROM docker.io/ubuntu:kinetic-20221130 6*bb4ee6a4SAndroid Build Coastguard Worker 7*bb4ee6a4SAndroid Build Coastguard Worker# Allow APT to cache packages between docker image builds 8*bb4ee6a4SAndroid Build Coastguard WorkerRUN rm -f /etc/apt/apt.conf.d/docker-clean; echo 'Binary::apt::APT::Keep-Downloaded-Packages "true";' > /etc/apt/apt.conf.d/keep-cache 9*bb4ee6a4SAndroid Build Coastguard Worker 10*bb4ee6a4SAndroid Build Coastguard Worker# Install dependencies (APT and cargo packages are cached between image builds for faster iterative builds). 11*bb4ee6a4SAndroid Build Coastguard WorkerCOPY --chmod=555 tools/install-deps rust-toolchain /tools/ 12*bb4ee6a4SAndroid Build Coastguard WorkerRUN --mount=type=cache,target=/var/cache/apt,sharing=private \ 13*bb4ee6a4SAndroid Build Coastguard Worker --mount=type=cache,target=/var/lib/apt,sharing=private \ 14*bb4ee6a4SAndroid Build Coastguard Worker --mount=type=cache,target=/scratch/cargo_target,sharing=private \ 15*bb4ee6a4SAndroid Build Coastguard Worker apt-get update \ 16*bb4ee6a4SAndroid Build Coastguard Worker # sudo is installed here since it's required by install-deps. 17*bb4ee6a4SAndroid Build Coastguard Worker # tzdata is installed here so it won't later prompt for configuration. 18*bb4ee6a4SAndroid Build Coastguard Worker && DEBIAN_FRONTEND=noninteractive TZ=Etc/UTC apt-get install --yes sudo tzdata \ 19*bb4ee6a4SAndroid Build Coastguard Worker # Run crosvm's install-deps 20*bb4ee6a4SAndroid Build Coastguard Worker && cd tools \ 21*bb4ee6a4SAndroid Build Coastguard Worker && ./install-deps 22*bb4ee6a4SAndroid Build Coastguard Worker 23*bb4ee6a4SAndroid Build Coastguard WorkerENV PATH=$PATH:~/.cargo/bin 24*bb4ee6a4SAndroid Build Coastguard Worker 25*bb4ee6a4SAndroid Build Coastguard WorkerVOLUME /workspace 26*bb4ee6a4SAndroid Build Coastguard WorkerWORKDIR /workspace 27