#!/bin/bash SCRIPT=$(readlink -f $0) SCRIPT_DIR="$(dirname ${SCRIPT})" SRC_ROOT=$(readlink -f ${SCRIPT_DIR}/..) source ${SRC_ROOT}/config/common_scripts_lib source ${SRC_ROOT}/config/bootstrap_config DOCKER_DIR=${SRC_ROOT}/docker DOCKER_TEMPLATE=${DOCKER_DIR}/Dockerfile.runner.in JENKINS_DOCKER_TEMPLATE=${DOCKER_DIR}/jenkins-docker/Dockerfile-jenkins.runner.in DOCKER_TIMEZONE="Europe/Warsaw" DOCKER_IMAGE_NAME="wearemudita/mudita_os_builder" DOCKER_IMAGE_TAG="latest" INSTALL_PACKAGES=$( echo "${INSTALL_PACKAGES}" | tr "\n" " "| tr -s " ") function prepareDockerFile() { sed -e "s#@ARM_GCC_PKG@#${ARM_GCC_PKG}#g" \ -e "s#@CMAKE_PKG@#${CMAKE_PKG}#g" \ -e "s#@CMAKE_NAME@#${CMAKE_NAME}#g" \ -e "s#@ARM_GCC@#${ARM_GCC}#g;" \ -e "s#@CODEQL_PKG@#${CODEQL_PKG}#g" \ -e "s#@DOCKER_TIMEZONE@#${DOCKER_TIMEZONE}#g;" \ -e "s#@INSTALL_PACKAGES@#${INSTALL_PACKAGES}#g;" \ -e "s#@ENTRYPOINT@#${ENTRYPOINT}#g;" \ -s ${DOCKER_TEMPLATE} > ${DOCKER_DEST} sed -e "s#@ARM_GCC_PKG@#${ARM_GCC_PKG}#g" \ -e "s#@CMAKE_PKG@#${CMAKE_PKG}#g" \ -e "s#@CMAKE_NAME@#${CMAKE_NAME}#g" \ -e "s#@ARM_GCC@#${ARM_GCC}#g;" \ -e "s#@CODEQL_PKG@#${CODEQL_PKG}#g" \ -s ${JENKINS_DOCKER_TEMPLATE} > ${JENKINS_DOCKER_DEST} } function help() { echo "generates docker file for MuditaOS build environment" echo "usage:" echo " $0 [runner|--help]" echo " runner - generate docker for github runner" echo " help - this help message" exit 0 } case ${1} in "runner") ENTRYPOINT="cmd.sh" DOCKER_DEST=${DOCKER_DIR}/Dockerfile.runner ;; "-h"|"--help") help ;; *) ENTRYPOINT="entrypoint.sh" DOCKER_DEST=${DOCKER_DIR}/Dockerfile JENKINS_DOCKER_DEST=${DOCKER_DIR}/jenkins-docker/Dockerfile ;; esac pushd ${DOCKER_DIR}/assets ${SRC_ROOT}/config/download_assets popd echo $ENTRYPOINT #echo "--${INSTALL_PACKAGES}--" prepareDockerFile echo -e "now run \e[31m: \ndocker build ${DOCKER_DIR} -f ${DOCKER_DEST} -t \"${DOCKER_IMAGE_NAME}:${DOCKER_IMAGE_TAG}\" \n\e[0m"