obs: build_from_docker: Add arg to build based in a branch.

Build OBS packages based in a kata brach.

Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
This commit is contained in:
Jose Carlos Venegas Munoz 2018-08-01 17:27:21 -05:00
parent f7074e178a
commit 0d789968a4

View File

@ -10,8 +10,8 @@ set -o errexit
set -o nounset
set -o pipefail
script_dir=$( cd $( dirname "${BASH_SOURCE[0]}" ) && pwd )
script_name="$(basename "${BASH_SOURCE[0]}")"
cache_dir=${PWD}/obs-cache
#where packaing repo lives
packaging_repo_dir=$(cd "${script_dir}/.." && pwd )
@ -24,31 +24,54 @@ https_proxy=${https_proxy:-}
no_proxy=${no_proxy:-}
PUSH=${PUSH:-}
GO_ARCH=$(go env GOARCH)
export GO_ARCH
sudo docker build \
--build-arg http_proxy="${http_proxy}" \
--build-arg https_proxy="${https_proxy}" \
-t $obs_image "${script_dir}"
pushd "${script_dir}/kata-containers-image/" >> /dev/null
docker_run(){
local cmd="$@"
sudo docker run \
--rm \
-v "${HOME}/.ssh":/root/.ssh \
-v "${HOME}/.gitconfig":/root/.gitconfig \
-v /etc/profile:/etc/profile \
--env http_proxy="${http_proxy}" \
--env https_proxy="${https_proxy}" \
--env no_proxy="${no_proxy}" \
--env PUSH="${PUSH}" \
-v "${HOME}/.bashrc":/root/.bashrc \
-v "$cache_dir":/var/tmp/osbuild-packagecache/ \
-v "$packaging_repo_dir":${packaging_repo_dir} \
-v "$host_datadir":/var/packaging \
-v "$HOME/.oscrc":/root/.oscrc \
-ti "$obs_image" bash -c "${cmd}"
}
usage(){
msg="${1:-}"
exit_code=$"${2:-0}"
cat << EOT
${msg}
Usage:
${script_name} <kata-branch>
EOT
exit "${exit_code}"
}
main(){
local branch="${1:-}"
[ -n "${branch}" ] || usage "missing branch" "1"
pushd "${script_dir}/kata-containers-image/" >> /dev/null
echo "Building image"
./build_image.sh
popd >> /dev/null
popd >> /dev/null
sudo docker build \
--build-arg http_proxy="${http_proxy}" \
--build-arg https_proxy="${https_proxy}" \
-t $obs_image "${script_dir}"
sudo docker run \
--rm \
-v "${HOME}/.ssh":/root/.ssh \
-v "${HOME}/.gitconfig":/root/.gitconfig \
-v /etc/profile:/etc/profile \
--env http_proxy="${http_proxy}" \
--env https_proxy="${https_proxy}" \
--env no_proxy="${no_proxy}" \
--env PUSH="${PUSH}" \
-v "${HOME}/.bashrc":/root/.bashrc \
-v "$cache_dir":/var/tmp/osbuild-packagecache/ \
-v "$packaging_repo_dir":${packaging_repo_dir} \
-v "$host_datadir":/var/packaging \
-v "$HOME/.oscrc":/root/.oscrc \
-ti "$obs_image" bash -c "${packaging_repo_dir}/obs-packaging/build_all.sh"
#Create/update OBS repository for branch
docker_run "${packaging_repo_dir}/obs-packaging/create-pkg-branch.sh ${branch}"
#Build all kata packages
docker_run "${packaging_repo_dir}/obs-packaging/build_all.sh ${branch}"
}
main $@