summaryrefslogtreecommitdiff
path: root/external/apache2/llvm/dist/libcxx/utils/ci/run-buildbot-container
blob: 30e8b181bf92c94ff3904526a635189d9f2146ca (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/usr/bin/env bash

# This script starts a shell in a container running the libc++ build bot Docker
# image. That image emulates the environment used by libc++'s Linux builders on
# BuildKite.
#
# Once you're inside the shell, you can run the various build jobs with the
# `run-buildbot` script.
#
# This script must be run from within the LLVM monorepo. Furthermore, the
# monorepo will be mounted as `/llvm` inside the container. Be careful, the
# state in `/llvm` is shared between the container and the host machine, which
# is useful for editing files on the host machine and re-running the build bot
# in the container.

set -e

MONOREPO_ROOT="$(git rev-parse --show-toplevel)"
if [[ ! -d "${MONOREPO_ROOT}/libcxx/utils/ci" ]]; then
    echo "Was unable to find the root of the LLVM monorepo; are you running from within the monorepo?"
    exit 1
fi
docker pull ldionne/libcxx-builder
docker run -it --volume "${MONOREPO_ROOT}:/llvm" --workdir "/llvm" ldionne/libcxx-builder bash