diff options
Diffstat (limited to 'scripts/xds-utils')
-rwxr-xr-x | scripts/xds-utils/getXdsServerPackage | 61 | ||||
-rwxr-xr-x | scripts/xds-utils/restartXdsServer | 32 | ||||
-rwxr-xr-x | scripts/xds-utils/updateXdsServerPackage | 64 |
3 files changed, 157 insertions, 0 deletions
diff --git a/scripts/xds-utils/getXdsServerPackage b/scripts/xds-utils/getXdsServerPackage new file mode 100755 index 0000000..8b00ac4 --- /dev/null +++ b/scripts/xds-utils/getXdsServerPackage @@ -0,0 +1,61 @@ +#!/bin/bash + ########################################################################### +# Copyright 2018 IoT.bzh +# +# author: Clément Bénier <sebastien@iot.bzh> +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +########################################################################### + +XDSSERVER="xds-server" +PACKAGE_NAME="agl-${XDSSERVER}" + +#test if sudoers without PASSWD +sudo -n true +if [ ! $? -eq 0 ]; then + exit 1 +fi + +function getUpdateDebian() { + sudo apt update -o DIR::Etc::sourcelist="AGL.list" &> /dev/null + sudo apt-cache policy ${PACKAGE_NAME} |grep -e 'Installed' -e 'Candidate' +} + +function getUpdateFedora() { + sudo dnf check-update ${PACKAGE_NAME} --refresh + sudo dnf info --installed ${PACKAGE_NAME} | grep Version | sed "s/Version */Installed/g" + sudo dnf info --updates ${PACKAGE_NAME} | grep Version | sed "s/Version */Candidate/g" +} + +function getUpdateOpenSuse() { + REPOAGL=$(zypper info agl-xds-server | grep Repository | awk -F ":" '{print $2}')) + REPOAGL=$(zypper repos | grep "${REPOAGL}" | awk '{print $3}') + sudo zypper refresh -r ${REPOAGL} + sudo zypper list-updates -r ${REPOAGL} | awk '{if ($3 == "${PACKAGE_NAME}") print "Installed: "$5 "\nCandidate: "$7}' +} + +if [ -f /etc/os-release ]; then + source /etc/os-release +fi + +case $ID in + "debian") + getUpdateDebian;; + "fedora") + getUpdateFedora;; + "opensuse") + getUpdateOpenSuse;; + *) + exit 2;; +esac + diff --git a/scripts/xds-utils/restartXdsServer b/scripts/xds-utils/restartXdsServer new file mode 100755 index 0000000..71981a6 --- /dev/null +++ b/scripts/xds-utils/restartXdsServer @@ -0,0 +1,32 @@ +#!/bin/bash + ########################################################################### +# Copyright 2018 IoT.bzh +# +# author: Clément Bénier <sebastien@iot.bzh> +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +########################################################################### + +XDSSERVER="xds-server" + +function systemdRestartXdsServer() { + systemctl --user daemon-reload + systemctl --user restart ${XDSSERVER} + if [ ! $? -eq 0 ]; then + echo "Cannot restart $XDSSERVER" + exit 1 + fi +} + +systemdRestartXdsServer +exit 0
\ No newline at end of file diff --git a/scripts/xds-utils/updateXdsServerPackage b/scripts/xds-utils/updateXdsServerPackage new file mode 100755 index 0000000..012ca6c --- /dev/null +++ b/scripts/xds-utils/updateXdsServerPackage @@ -0,0 +1,64 @@ +#!/bin/bash + ########################################################################### +# Copyright 2018 IoT.bzh +# +# author: Clément Bénier <sebastien@iot.bzh> +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +########################################################################### + +XDSSERVER="xds-server" +PACKAGE_NAME="agl-${XDSSERVER}" + +#test if sudoers without PASSWD +sudo -n true +if [ ! $? -eq 0 ]; then + exit 1 +fi + + +function checkUpdateDebian() { + sudo apt update -o DIR::Etc::sourcelist="AGL.list" &> /dev/null + apt list --upgradable | grep ${PACKAGE_NAME} + if [ $? -eq 0 ]; then + sudo apt-get install ${PACKAGE_NAME} + fi +} + +function checkUpdateFedora() { + sudo dnf check-update ${PACKAGE_NAME} --refresh + sudo dnf update -y ${PACKAGE_NAME} +} + +function checkUpdateOpenSuse() { + REPOAGL=$(zypper info agl-xds-server | grep Repository | awk -F ":" '{print $2}')) + REPOAGL=$(zypper repos | grep "${REPOAGL}" | awk '{print $3}') + sudo zypper refresh -r ${REPOAGL} + sudo zypper update -y ${PACKAGE_NAME} +} + +if [ -f /etc/os-release ]; then + source /etc/os-release +fi + +case $ID in + "debian") + res=$(checkUpdateDebian);; + "fedora") + res=$(checkUpdateFedora);; + "opensuse") + res=$(checkUpdateOpenSuse);; + *) + exit 2;; +esac + |