70 lines
1.6 KiB
Bash
70 lines
1.6 KiB
Bash
|
#!/bin/bash
|
||
|
#
|
||
|
#
|
||
|
|
||
|
# enabled debug
|
||
|
# set -x
|
||
|
|
||
|
#####################
|
||
|
# Controller
|
||
|
####################
|
||
|
builder_controller() {
|
||
|
local result
|
||
|
|
||
|
# read config
|
||
|
call_entry_point result config; (( $result == "0" )) || builder_config
|
||
|
|
||
|
# prepare
|
||
|
call_entry_point result prepare ; (( $result == "0" )) || builder_prepare
|
||
|
|
||
|
# download and process dist files
|
||
|
call_entry_point result retrieve; (( $result == "0" )) || builder_retrieve
|
||
|
|
||
|
# Create some special files
|
||
|
call_entry_point result create; (( $result == "0" )) || builder_create
|
||
|
|
||
|
# Start packaging
|
||
|
call_entry_point result package; (( $result == "0" )) || builder_package
|
||
|
|
||
|
# Upload to repos
|
||
|
call_entry_point result publish; (( $result == "0" )) || builder_publish
|
||
|
|
||
|
# git commit
|
||
|
call_entry_point result commit; (( $result == "0" )) || builder_commit
|
||
|
|
||
|
# cleanup
|
||
|
call_entry_point result cleanup; (( $result == "0" )) || builder_cleanup
|
||
|
}
|
||
|
|
||
|
####################
|
||
|
# Main
|
||
|
####################
|
||
|
# get the 'real' directory this program stored in (resolve symbolic links)
|
||
|
PRG=$(readlink -f $0)
|
||
|
BASEDIR=`dirname "$PRG"`
|
||
|
BASEDIR=`cd "$BASEDIR" && pwd`/..
|
||
|
|
||
|
# Parameters
|
||
|
PRODUCT_DIR=$1
|
||
|
TARGET=$2
|
||
|
|
||
|
# read libraries
|
||
|
. $BASEDIR/lib/builder-targets.sh
|
||
|
|
||
|
# check product directory
|
||
|
if [ -z ${PRODUCT_DIR} ]; then PRODUCT_DIR="`pwd`" ; fi
|
||
|
test -d $PRODUCT_DIR
|
||
|
builder_check_error "no opsi product directory specified: $PRODUCT_DIR"
|
||
|
|
||
|
# source additional, product dependent callback (cb) targets
|
||
|
if [ -f "$PRODUCT_DIR/builder-targets-cb.sh" ] ; then
|
||
|
. "$PRODUCT_DIR/builder-targets-cb.sh"
|
||
|
fi
|
||
|
|
||
|
# call main
|
||
|
builder_controller
|
||
|
|
||
|
# exit
|
||
|
exit 0
|
||
|
|