#!/bin/sh # Copyright 2015 Red Hat, Inc. # Part of clufter project # Licensed under GPLv2+ (a copy included | http://gnu.org/licenses/gpl-2.0.txt) # Depending on the usage, quick sanity check or just the prologue for run-tests s="${0}" [ $# -gt 0 ] && { case "${1}" in -*) ;; *) s="${1}"; shift ;; esac } PATH="${PATH:+${PATH}:}$( dirname "$(pwd)/$( ls -l "$(echo "${s}" | sed 's|\./||')" | cut -d'>' -f2 | awk '{print $NF}' )" )" unset s PYTHONEXEC="python2 -Es" echo "Current path: ${PATH}" which ccs_flatten 2>/dev/null || ( cd __root__ 2>/dev/null || : ${PYTHONEXEC} setup.py pkg_prepare --build-develop # can drop the latter when reasonably recent coreutils spread around (8.22?) ln -frs -- ccs-flatten/*.metadata build 2>/dev/null \ || ( cd build; ln -fs -- ../ccs-flatten/*.metadata . ) ln -fs -- build/ccs_flatten . make -C ccs-flatten symlink ) || { ret=$?; echo "ccs_flatten missing, cannot be built"; exit ${ret}; } run_check() { # self-check for sanity usage testcib="$(mktemp)" testcoro="$(mktemp)" { { ${PYTHONEXEC} run-dev --dist redhat,7.1,Maipo \ ccs2pcs "${@}" -- - - "${testcib}" \ | grep -Ev 'key: _NOT_SECRET--' > "${testcoro}"; } \ && echo "TEST: execution OK" \ || { echo "TEST: execution FAIL"; ret=20; }; }< EOF { diff -u -- - "${testcib}" \ && echo "TEST: cib diff OK" \ || { echo "TEST: cib diff FAIL"; ret=21; }; }< EOF { diff -u -- - "${testcoro}" \ && echo "TEST: coro diff OK" \ || { echo "TEST: coro diff FAIL"; ret=22; }; }< EOF { diff -u -- - "${testcmd}" \ && echo "TEST: cmd diff OK" \ || { echo "TEST: cmd diff FAIL"; ret=21; }; }<