1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181
|
#!/bin/bash
# Set required variables
CURDIR=$(dirname $(realpath "$0"))
export CURDIR
EASY_KERNEL_WORKFLOW=${EASY_KERNEL_WORKFLOW:-"kw"}
src_script_path=${src_script_path:-"$CURDIR/src"}
etc_files_path=${etc_files_path:-"$CURDIR/etc"}
config_files_path=${config_files_path:-"$HOME/.config/$EASY_KERNEL_WORKFLOW"}
# Export external variables required by kworkflow
export EASY_KERNEL_WORKFLOW
function kw()
{
action=$1
shift
case "$action" in
mount|mo)
(
. "$src_script_path"/vm.sh --source-only
vm_mount
local ret=$?
alert_completion "kw build" "$1"
return $ret
)
;;
umount|um)
(
. "$src_script_path"/vm.sh --source-only
vm_umount
local ret=$?
alert_completion "kw build" "$1"
return $ret
)
;;
boot|bo)
(
. "$src_script_path"/vm.sh --source-only
vm_boot
)
;;
up|u)
(
. "$src_script_path"/vm.sh --source-only
vm_up
)
;;
prepare|p)
(
. "$src_script_path"/vm.sh --source-only
vm_prepare
local ret=$?
alert_completion "kw prepare" "$1"
return $ret
)
;;
build|b)
(
. "$src_script_path"/mk.sh --source-only
mk_build
local ret=$?
alert_completion "kw build" "$1"
return $ret
)
;;
install|i)
(
. "$src_script_path"/mk.sh --source-only
mk_install
local ret=$?
alert_completion "kw install" "$1"
return $ret
)
;;
new|n)
(
. "$src_script_path"/mk.sh --source-only
vm_new_release_deploy
local ret=$?
alert_completion "kw new" "$1"
return $ret
)
;;
bi)
(
. "$src_script_path"/mk.sh --source-only
mk_build && mk_install
local ret=$?
alert_completion "kw bi" "$1"
return $ret
)
;;
ssh|s)
(
. "$src_script_path"/vm.sh --source-only
vm_ssh $@
)
;;
vars|v)
(
. "$src_script_path"/commons.sh --source-only
show_variables
)
;;
codestyle|c)
(
. "$src_script_path"/checkpatch_wrapper.sh --source-only
execute_checkpatch $@
)
;;
maintainers|m)
(
. "$src_script_path"/get_maintainer_wrapper.sh --source-only
execute_get_maintainer $@
)
;;
configm|g)
(
. "$src_script_path"/config_manager.sh --source-only
execute_config_manager $@
)
;;
help|h)
(
. "$src_script_path"/help.sh --source-only
kworkflow-help
)
;;
explore|e)
(
. "$src_script_path"/explore.sh --source-only
explore "$@"
)
;;
man)
(
. $src_script_path/help.sh --source-only
kworkflow-man
)
;;
*)
(
. "$src_script_path"/help.sh --source-only
complain "Invalid option"
kworkflow-help
return 1
)
;;
esac
}
# If user home doesn't contain config files
if [ ! -d "$HOME/.config/kw" ]; then
install -d "$HOME/.config/kw"
cp -a "${CURDIR}/etc/." "${config_files_path}"
sed -i "s/USERKW/$USER/g" "${config_files_path}/kworkflow.config"
fi
kw $@
|