Added update_psa-ismas messages
This commit is contained in:
parent
d351f4485c
commit
6bc2854e78
363
news_to_ismas
363
news_to_ismas
@ -3,121 +3,350 @@
|
|||||||
source ./log_helpers
|
source ./log_helpers
|
||||||
|
|
||||||
if [ ${news_to_ismas_sourced:-1} = "1" ]; then # include only once
|
if [ ${news_to_ismas_sourced:-1} = "1" ]; then # include only once
|
||||||
|
|
||||||
readonly APISM_DB_PORT=7777
|
readonly APISM_DB_PORT=7777
|
||||||
|
readonly UPDATE_ISMAS_PROGRESS="U0010"
|
||||||
|
readonly UPDATE_SUCCEEDED="U0001" # update finished: 100%
|
||||||
|
readonly UPDATE_ACTIVATED="U0002" # reset TRG
|
||||||
|
readonly UPDATE_ISMAS_ERROR="U0003" # update error
|
||||||
|
|
||||||
|
# error codes
|
||||||
|
readonly RC_SUCCESS=0
|
||||||
|
readonly RC_NO_UPDATE_NECESSARY=1
|
||||||
|
readonly RC_GIT_CLONE_ERROR=2
|
||||||
|
readonly RC_GIT_PULL_ERROR=3
|
||||||
|
readonly RC_BACKUP_ERROR=4
|
||||||
|
readonly RC_HASH_VALUE_ERROR=5
|
||||||
|
readonly RC_HW_COMPATIBILITY_ERROR=6
|
||||||
|
readonly RC_COPY_ERROR=7
|
||||||
|
readonly RC_OPKG_COMMANDS_ERROR=8
|
||||||
|
readonly RC_CLEANUP_ERROR=9
|
||||||
|
|
||||||
|
PERCENT=1
|
||||||
|
|
||||||
news_to_ismas () {
|
news_to_ismas () {
|
||||||
|
# $1: EVENT: U0001 update finished: 100%
|
||||||
|
# U0002 reset TRG
|
||||||
|
# U0003 error
|
||||||
|
# U0010 for update process
|
||||||
|
# $2: PERCENT : "only for ISMAS: 0-100%",
|
||||||
|
# $3: RESULTCODE : "only for ISMAS",
|
||||||
|
# 0: Success
|
||||||
|
# 1: no Update nessesary
|
||||||
|
# 2: Backup failed
|
||||||
|
# 3: Package error/ Wrong package
|
||||||
|
# 4: Install Error
|
||||||
|
# $4: STEP : "running step (only for us): update_psa...",
|
||||||
|
# $5: STEP_RESULT : "error and result text",
|
||||||
|
# $6: VERSION : "opkg and conf info; what will be updated"
|
||||||
|
#
|
||||||
|
local func="${FUNCNAME[0]}"
|
||||||
|
local p=("$@")
|
||||||
local data="#M=APISM#C=CMD_EVENT#J=
|
local data="#M=APISM#C=CMD_EVENT#J=
|
||||||
{
|
{
|
||||||
\"REASON\":\"SW_UP\",
|
\"REASON\":\"SW_UP\",
|
||||||
\"Timestamp\":\"$(date +%Y-%m-%dT%T.000%z)\",
|
\"TIMESTAMP\":\"$(date +%Y-%m-%dT%T.000%z)\",
|
||||||
\"EVENT\":\"$1\",
|
\"EVENT_ID\":\"0\",
|
||||||
|
\"EVENT\":\"${p[0]}\",
|
||||||
\"EVENTSTATE\":1,
|
\"EVENTSTATE\":1,
|
||||||
\"PARAMETER\":\"Testdaten\"
|
\"PARAMETER\": {
|
||||||
|
\"PERCENT\" : ${p[1]},
|
||||||
|
\"RESULTCODE\" : ${p[2]},
|
||||||
|
\"STEP\" : \"update_psa_${p[3]}\",
|
||||||
|
\"STEP_RESULT\" : \"${p[4]}\",
|
||||||
|
\"VERSION\" : \"${p[5]}\"
|
||||||
|
}
|
||||||
}"
|
}"
|
||||||
|
log_debug "$func:${LINENO}: data=$data"
|
||||||
echo $((echo "$data"; sleep 1) | nc localhost $APISM_DB_PORT)
|
echo $((echo "$data"; sleep 1) | nc localhost $APISM_DB_PORT)
|
||||||
}
|
}
|
||||||
|
|
||||||
# WAIT
|
###########################################################################
|
||||||
|
###########################################################################
|
||||||
|
|
||||||
update_psa_activated () {
|
update_psa_activated () {
|
||||||
news_to_ismas "U0010"
|
PERCENT=$((PERCENT+1))
|
||||||
|
local params=("U0010" # event
|
||||||
|
$PERCENT
|
||||||
|
$RC_SUCCESS # resultcode
|
||||||
|
"activated" # step
|
||||||
|
"detected WAIT state" # step_result
|
||||||
|
"") # version
|
||||||
|
news_to_ismas ${params[*]}
|
||||||
return $?
|
return $?
|
||||||
}
|
}
|
||||||
|
|
||||||
# git pull
|
update_psa_false_alarm () {
|
||||||
update_psa_pull_customer_repository () {
|
PERCENT=$((PERCENT+1))
|
||||||
# text im PARAMETER?
|
local params=("U0003"
|
||||||
news_to_ismas "U0011" "git pull customer repository"
|
$PERCENT
|
||||||
|
$RC_NO_UPDATE_NECESSARY
|
||||||
|
"false_alarm"
|
||||||
|
"$1"
|
||||||
|
"")
|
||||||
|
news_to_ismas ${params[*]}
|
||||||
|
|
||||||
|
EXITCODE=$((EXITCODE+1))
|
||||||
|
test $EXITCODE -gt 125 && EXITCODE=125
|
||||||
|
return $EXITCODE
|
||||||
|
}
|
||||||
|
|
||||||
|
update_psa_activated_new_software () {
|
||||||
|
PERCENT=100
|
||||||
|
local params=("U0010"
|
||||||
|
$PERCENT
|
||||||
|
$RC_SUCCESS
|
||||||
|
"activated_new_software"
|
||||||
|
"<hier nochmal eine liste was alles installiert wurde>"
|
||||||
|
"<zugehoerige versionen>")
|
||||||
|
news_to_ismas ${params[*]}
|
||||||
return $?
|
return $?
|
||||||
}
|
}
|
||||||
|
|
||||||
|
###########################################################################
|
||||||
|
###########################################################################
|
||||||
|
|
||||||
|
update_psa_pull_customer_repository () {
|
||||||
|
PERCENT=10
|
||||||
|
local params=("U0010" # event
|
||||||
|
$PERCENT # percent
|
||||||
|
0 # resultcode
|
||||||
|
"pull_customer_repository" # step
|
||||||
|
"git pulled $CUSTOMER_REPOSITORY_PATH" # step_result
|
||||||
|
"") # version
|
||||||
|
news_to_ismas ${params[*]}
|
||||||
|
return $?
|
||||||
|
}
|
||||||
|
|
||||||
|
update_psa_pull_error () {
|
||||||
|
PERCENT=10
|
||||||
|
local params=("U0003"
|
||||||
|
$PERCENT
|
||||||
|
$RC_GIT_PULL_ERROR
|
||||||
|
"pull_error"
|
||||||
|
"git failed to pull $CUSTOMER_REPOSITORY_PATH"
|
||||||
|
"")
|
||||||
|
news_to_ismas ${params[*]}
|
||||||
|
|
||||||
|
EXITCODE=$((EXITCODE+1))
|
||||||
|
test $EXITCODE -gt 125 && EXITCODE=125
|
||||||
|
return $EXITCODE
|
||||||
|
}
|
||||||
|
|
||||||
|
update_psa_clone_error () {
|
||||||
|
PERCENT=10
|
||||||
|
local params=("U0003"
|
||||||
|
$PERCENT
|
||||||
|
$RC_GIT_CLONE_ERROR
|
||||||
|
"clone_error"
|
||||||
|
"git failed to clone $CUSTOMER_REPOSITORY_PATH"
|
||||||
|
"")
|
||||||
|
news_to_ismas ${params[*]}
|
||||||
|
|
||||||
|
EXITCODE=$((EXITCODE+1))
|
||||||
|
test $EXITCODE -gt 125 && EXITCODE=125
|
||||||
|
return $EXITCODE
|
||||||
|
}
|
||||||
|
|
||||||
|
###########################################################################
|
||||||
|
###########################################################################
|
||||||
|
|
||||||
update_psa_backup () {
|
update_psa_backup () {
|
||||||
news_to_ismas "U0011" "backup before update steps"
|
PERCENT=20
|
||||||
|
local params=("U0010"
|
||||||
|
$PERCENT
|
||||||
|
$RC_SUCCESS
|
||||||
|
"backup"
|
||||||
|
"backup of (hier noch alle dateien angeben)"
|
||||||
|
"")
|
||||||
|
news_to_ismas ${params[*]}
|
||||||
return $?
|
return $?
|
||||||
}
|
}
|
||||||
|
|
||||||
update_psa_check_hash_values () {
|
update_psa_backup_error () {
|
||||||
news_to_ismas "U0011" "checking file integrity"
|
PERCENT=20
|
||||||
|
local params=("U0010"
|
||||||
|
$PERCENT
|
||||||
|
$RC_BACKUP_ERROR
|
||||||
|
"backup_error"
|
||||||
|
"backup of (hier noch alle dateien angeben) failed"
|
||||||
|
"")
|
||||||
|
news_to_ismas ${params[*]}
|
||||||
|
|
||||||
|
EXITCODE=$((EXITCODE+1))
|
||||||
|
test $EXITCODE -gt 125 && EXITCODE=125
|
||||||
|
return $EXITCODE
|
||||||
|
}
|
||||||
|
|
||||||
|
###########################################################################
|
||||||
|
###########################################################################
|
||||||
|
|
||||||
|
update_psa_report_changed_file_names () {
|
||||||
|
PERCENT=30
|
||||||
|
local params=("U0010"
|
||||||
|
$PERCENT
|
||||||
|
$RC_SUCCESS
|
||||||
|
"report_changed_file_names"
|
||||||
|
"changed filenames: [$@]"
|
||||||
|
"")
|
||||||
|
news_to_ismas ${params[*]}
|
||||||
return $?
|
return $?
|
||||||
}
|
}
|
||||||
|
|
||||||
|
###########################################################################
|
||||||
|
###########################################################################
|
||||||
|
|
||||||
|
update_psa_check_hash () {
|
||||||
|
PERCENT=40
|
||||||
|
local params=($1 # event
|
||||||
|
$PERCENT
|
||||||
|
$2 # resultcode
|
||||||
|
"check_hash" # step
|
||||||
|
"$3" # step_result
|
||||||
|
"")
|
||||||
|
news_to_ismas ${params[*]}
|
||||||
|
test $2 -eq $RC_SUCCESS && return $?
|
||||||
|
|
||||||
|
EXITCODE=$((EXITCODE+1))
|
||||||
|
test $EXITCODE -gt 125 && EXITCODE=125
|
||||||
|
return $EXITCODE
|
||||||
|
}
|
||||||
|
|
||||||
|
###########################################################################
|
||||||
|
###########################################################################
|
||||||
|
|
||||||
update_psa_check_hardware_compatibility () {
|
update_psa_check_hardware_compatibility () {
|
||||||
news_to_ismas "U0011" "check hardware compatiblity"
|
PERCENT=50
|
||||||
return $?
|
local params=($1 # event
|
||||||
|
$PERCENT
|
||||||
|
$2 # resultcode
|
||||||
|
"check_hardware_compatibility" # step
|
||||||
|
"$3" # step_result
|
||||||
|
"")
|
||||||
|
news_to_ismas ${params[*]}
|
||||||
|
test $2 -eq $RC_SUCCESS && return $?
|
||||||
|
|
||||||
|
EXITCODE=$((EXITCODE+1))
|
||||||
|
test $EXITCODE -gt 125 && EXITCODE=125
|
||||||
|
return $EXITCODE
|
||||||
}
|
}
|
||||||
|
|
||||||
|
###########################################################################
|
||||||
|
###########################################################################
|
||||||
|
|
||||||
# conf/ini files
|
# conf/ini files
|
||||||
update_psa_copy_files () {
|
update_psa_copy_conf_and_ini_files () {
|
||||||
news_to_ismas "U0011" "copy conf/ini-files"
|
PERCENT=60
|
||||||
return $?
|
local params=($1 # event
|
||||||
|
$PERCENT
|
||||||
|
$2 # resultcode
|
||||||
|
"copy_conf_and_ini_files" # step
|
||||||
|
"$3" # step_result
|
||||||
|
"")
|
||||||
|
news_to_ismas ${params[*]}
|
||||||
|
test $2 -eq $RC_SUCCESS && return $?
|
||||||
|
|
||||||
|
EXITCODE=$((EXITCODE+1))
|
||||||
|
test $EXITCODE -gt 125 && EXITCODE=125
|
||||||
|
return $EXITCODE
|
||||||
}
|
}
|
||||||
|
|
||||||
|
###########################################################################
|
||||||
|
###########################################################################
|
||||||
|
|
||||||
# exec opkg-commands (dry-run)
|
# exec opkg-commands (dry-run)
|
||||||
update_psa_install_packages_dry_run () {
|
update_psa_install_opkg_packages_dry_run () {
|
||||||
news_to_ismas "U0011" "install opkg-packages (dry-run)"
|
PERCENT=70
|
||||||
return $?
|
# TODO
|
||||||
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
###########################################################################
|
||||||
|
###########################################################################
|
||||||
|
|
||||||
# exec opkg-commands
|
# exec opkg-commands
|
||||||
update_psa_install_packages () {
|
update_psa_install_opkg_packages () {
|
||||||
news_to_ismas "U0011" "install opkg-packages"
|
PERCENT=80
|
||||||
return $?
|
local params=($1 # event
|
||||||
|
$PERCENT
|
||||||
|
$2 # resultcode
|
||||||
|
"install_opkg_packages" # step
|
||||||
|
"$3" # step_result
|
||||||
|
"")
|
||||||
|
news_to_ismas ${params[*]}
|
||||||
|
test $2 -eq $RC_SUCCESS && return $?
|
||||||
|
|
||||||
|
EXITCODE=$((EXITCODE+1))
|
||||||
|
test $EXITCODE -gt 125 && EXITCODE=125
|
||||||
|
return $EXITCODE
|
||||||
}
|
}
|
||||||
|
|
||||||
|
###########################################################################
|
||||||
|
###########################################################################
|
||||||
# remove backup in case of success
|
# remove backup in case of success
|
||||||
update_psa_cleanup () {
|
update_psa_cleanup () {
|
||||||
news_to_ismas "U0011" "cleanup"
|
PERCENT=90
|
||||||
return $?
|
local params=($1 # event
|
||||||
|
$PERCENT
|
||||||
|
$2 # resultcode
|
||||||
|
"cleanup" # step
|
||||||
|
"$3" # step_result
|
||||||
|
"")
|
||||||
|
news_to_ismas ${params[*]}
|
||||||
|
test $2 -eq $RC_SUCCESS && return $?
|
||||||
|
|
||||||
|
EXITCODE=$((EXITCODE+1))
|
||||||
|
test $EXITCODE -gt 125 && EXITCODE=125
|
||||||
|
return $EXITCODE
|
||||||
}
|
}
|
||||||
|
|
||||||
update_psa_finished () {
|
###########################################################################
|
||||||
news_to_ismas "U0012"
|
###########################################################################
|
||||||
return $?
|
|
||||||
|
update_psa_update_succeeded () {
|
||||||
|
PERCENT=100
|
||||||
|
local params=($1 # event
|
||||||
|
$PERCENT
|
||||||
|
$2 # resultcode
|
||||||
|
"update_succeeded" # step
|
||||||
|
"$3" # step_result
|
||||||
|
"")
|
||||||
|
news_to_ismas ${params[*]}
|
||||||
|
test $2 -eq $RC_SUCCESS && return $?
|
||||||
|
|
||||||
|
EXITCODE=$((EXITCODE+1))
|
||||||
|
test $EXITCODE -gt 125 && EXITCODE=125
|
||||||
|
return $EXITCODE
|
||||||
}
|
}
|
||||||
|
|
||||||
# results
|
###########################################################################
|
||||||
update_psa_succeeded () {
|
###########################################################################
|
||||||
news_to_ismas "U0001" "updates installed"
|
|
||||||
return $?
|
|
||||||
}
|
|
||||||
|
|
||||||
reset_update_trigger () {
|
update_psa_activate_update () {
|
||||||
news_to_ismas "U0002" "updates activated"
|
PERCENT=100
|
||||||
return $?
|
local params=($1 # event
|
||||||
}
|
$PERCENT
|
||||||
|
$2 # resultcode
|
||||||
|
"activate_update" # step
|
||||||
|
"$3" # step_result
|
||||||
|
"")
|
||||||
|
news_to_ismas ${params[*]}
|
||||||
|
test $2 -eq $RC_SUCCESS && return $?
|
||||||
|
|
||||||
update_psa_canceled_no_updates_available () {
|
EXITCODE=$((EXITCODE+1))
|
||||||
# text im PARAMETER?
|
test $EXITCODE -gt 125 && EXITCODE=125
|
||||||
news_to_ismas "U0003" # "No updates available, but 'WAIT' active. Missing check-in?"
|
return $EXITCODE
|
||||||
return $?
|
|
||||||
}
|
|
||||||
|
|
||||||
update_psa_backup_failed () {
|
|
||||||
news_to_ismas "U0003" # "Backup failed"
|
|
||||||
return $?
|
|
||||||
}
|
|
||||||
|
|
||||||
update_psa_wrong_hash_values () {
|
|
||||||
news_to_ismas "U0003" # "Wrong hash value for file <xxx>. Missing check-in?"
|
|
||||||
return $?
|
|
||||||
}
|
|
||||||
|
|
||||||
update_psa_hardware_not_compatible () {
|
|
||||||
news_to_ismas "U0003" "conf/ini-file <xxx> and psa hardware <yyy> not compatible"
|
|
||||||
return $?
|
|
||||||
}
|
|
||||||
|
|
||||||
update_psa_opkg_command_failure () {
|
|
||||||
news_to_ismas "U0003" "opkg-command <xxx> failed"
|
|
||||||
return $?
|
|
||||||
}
|
|
||||||
|
|
||||||
update_psa_failed () {
|
|
||||||
news_to_ismas "U0003" "Unknown error"
|
|
||||||
return $?
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# only for testing
|
# only for testing
|
||||||
set_updates_available () {
|
set_updates_available () {
|
||||||
news_to_ismas "U0099"
|
local params=("U0099" # event
|
||||||
|
$PERCENT # percent
|
||||||
|
0 # resultcode
|
||||||
|
"set_updates_available" # step
|
||||||
|
"" # step_result
|
||||||
|
"") # version
|
||||||
|
news_to_ismas ${params[*]}
|
||||||
return $?
|
return $?
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user