Base gestion des paramètres par défaut

This commit is contained in:
2015-10-29 17:40:26 +01:00
parent 30332dc5cb
commit 1ba20bc279
5 changed files with 44 additions and 34 deletions

View File

@ -9,7 +9,6 @@ DIST_DIR="${BASE_DIR}/dist"
SRC_DIR="${BASE_DIR}/src"
PROJECT_NAME=${1}
BUILD_BRANCH=${2}
BUILD_DIR=${3}
BUILD_TAG=${4}
function build_project()
@ -17,12 +16,13 @@ function build_project()
info "Building project '${PROJECT_NAME}' for ${TARGET_ARCH} architecture..."
load_default_opts
set_opt project_name "${PROJECT_NAME}"
set_opt build_dir "${BUILD_DIR}"
set_opt build_branch "${BUILD_BRANCH}"
set_opt build_tag "${BUILD_TAG}"
local workspace=$(mktemp -p ${BUILD_DIR} -d)/${PROJECT_NAME}
local workspace=$(mktemp -d)/${PROJECT_NAME}
info "Build dir is ${workspace}"
mkdir -p "${workspace}"

View File

@ -1,8 +1,8 @@
#!/usr/bin/env bash
HOOKS_DIR="${BASE_DIR}/hooks"
DEFAULT_OPTS_FILE="${BASE_DIR}/default_opts"
OPT_FILE="${BASE_DIR}/tmp/.tamarin_opts"
DEFAULT_OPTS_FILE="${BASE_DIR}/tmp/default_opts"
OPT_FILE="${BASE_DIR}/tmp/tamarin/opts"
OPT_PREFIX="tamarin_opt_"
# Colors
@ -89,13 +89,21 @@ function success {
function log {
local args=( $@ )
local color=COLOR_${args[0]}
echo -e "${!color}[${HOSTNAME}] [${args[0]}] $(remove_ansi ${args[@]:1})\e[0m"
echo -e "${!color}[${args[0]}] $(remove_ansi ${args[@]:1})\e[0m"
}
function remove_ansi {
echo "$@" | sed 's,\x1B\[[0-9;]*[a-zA-Z],,g'
}
function load_default_opts {
if [[ -e "${DEFAULT_OPTS_FILE}" ]]; then
info "Loading default opts..."
else
info "No default opts found."
fi
}
function get_opt {
local opt_name=${OPT_PREFIX}${1}
local default_value=${2}
@ -107,6 +115,7 @@ function get_opt {
function set_opt {
local opt_name=${1}
local opt_value=${2}
mkdir -p "$(dirname ${OPT_FILE})"
touch "${OPT_FILE}"
sed -i "s/^${OPT_PREFIX}${opt_name}*$//" "${OPT_FILE}"
echo "${OPT_PREFIX}${opt_name}=\"${opt_value}\"" >> "${OPT_FILE}"
@ -121,7 +130,7 @@ function exec_hooks {
for hook_script in ${hook_scripts}; do
info "[${hook}] >> ${hook_script}"
info "[>> ${hook}] ${hook_script}"
( cd "${workspace}" && "${hook_script}" ) 2> >(stderr) 1> >(stdout)
@ -130,7 +139,7 @@ function exec_hooks {
fatal "The '${hook_script}' hook script did not finished properly !"
fi
info "[${hook}] << ${hook_script}"
info "[<< ${hook}] ${hook_script}"
done