xref: /aosp_15_r20/external/bcc/scripts/docker/build.sh (revision 387f9dfdfa2baef462e92476d413c7bc2470293e)
1#!/bin/bash
2set -e
3# Builds debian packages using docker wrapper
4
5function help() {
6  message=$1
7  echo "USAGE: build.sh DOCKER_REPO DOCKER_TAG OS_TAG [DISTRO]"
8  echo "hint: ${message}"
9}
10
11docker_repo=$1
12docker_tag=$2
13os_tag=$3
14distro=${4:-ubuntu}
15
16[ -z "${docker_repo}" ] && help "You must specify repo, eg: quay.io/iovisoc/bcc" && exit 1
17[ -z "${docker_tag}" ] && help "You must specify tag, eg: bionic-release-master, latest, SHA, git tag, etc " && exit 1
18[ -z "${os_tag}" ] && help "You must specify os tag, eg: 18.04, bionic, etc " && exit 1
19
20
21# The main docker image build,
22echo "Building ${distro} ${os_tag} release docker image for ${docker_repo}:${docker_tag}"
23docker build -t ${docker_repo}:${docker_tag} --build-arg OS_TAG=${os_tag} -f docker/Dockerfile.${distro} .
24
25echo "Copying build artifacts to $(pwd)/output"
26mkdir -p output
27docker run -v $(pwd)/output:/output ${docker_repo}:${docker_tag} /bin/bash -c "cp /root/bcc/* /output"
28