; opsiscript syntax highlighting test
;
; SPDX-FileCopyrightText: 2024 Stefan Staeglich
;
; SPDX-License-Identifier: LGPL
requiredWinstVersion >= "4.12.8"
ScriptErrorMessages=off
setLogLevel = 7
DefVar $OS$ = GetOS
DefVar $ProductId$ = "test"
DefVar $filename$ = GetProductProperty("filename", "/tmp/testfile.txt")
comment "Show product picture"
ShowBitmap "%ScriptPath%\" + $ProductId$ + ".png" $ProductId$
Switch $OS$
case "Linux"
Message "Try to install " + $ProductId$ " on " + $OS$
sub_main_linux
EndCase
case "Windows_NT"
Message "Try to install " + $ProductId$ " on " + $OS$
sub_main_windows
EndCase
DefaultCase
Message $OS$ + " is not supported"
EndCase
EndSwitch
DefVar $distrotype$ = getLinuxDistroType
DefStringList $linuxInfo$ = getLinuxVersionMap
DefVar $distCodeName$ = getValue("Codename", $linuxInfo$)
DefVar $distRelease$ = getValue("Release", $linuxInfo$)
DefVar $distroName$ = getValue("Distributor ID", $linuxInfo$)
if not ($distrotype$ = 'debian')
LogError "Product: " + $ProductId$ + "is desinged for Debian/Ubuntu"
isFatalError "Wrong Distrotype"
endif
Message "Try to get Package Lock..."
if waitForPackageLock("60","false")
comment "we got the package lock."
else
LogError "could not get Package Lock"
isFatalError "package lock failed"
endif
ShellInAnIcon_install_linux
if not("0" = getLastExitCode)
LogError "failed ShellInAnIcon_install_linux"
isFatalError "ShellInAnIcon_install_linux"
endif
Patches_config_systemd "/etc/systemd/system/test.service.d/override.conf"
if not("0" = getLastExitCode)
Message "failed Patches_config_systemd"
LogError "failed Patches_config_systemd"
isFatalError "config_systemd"
endif
Message "Patch config file ..."
XML2_config "/etc/test.conf"
if not("0" = getLastExitCode)
Message "failed XML2_config"
LogError "failed XML2_config"
isFatalError "XML2_config"
endif
PatchTextFile_config "/etc/test.conf"
if not("0" = getLastExitCode)
Message "failed PatchTextFile_config"
LogError "failed PatchTextFile_config"
isFatalError "XML2_config"
endif
[ShellInAnIcon_install_linux]
set -x
export PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin
export DEBIAN_FRONTEND=noninteractive
EXITCODE=0
apt-get --yes install test
if [ $? -ne 0 ]; then EXITCODE=1; fi
exit $EXITCODE
openNode 'file'
SetAttribute "name" "$filename$"
FindLine_Containing "$filename$"
DeleteTheLine
SaveToFile "/etc/test2.conf"
delsec [Service]
set [Service] Restart=on-failure