diff options
author | Clément Bénier <clement.benier@iot.bzh> | 2018-10-01 11:51:47 +0200 |
---|---|---|
committer | Clément Bénier <clement.benier@iot.bzh> | 2018-10-16 14:57:58 +0200 |
commit | 5e979f0ba451e64fc44ffaa8b79d714d9ad75a57 (patch) | |
tree | 6fb6ba51e034ba361fd833b482fb061d4f918da7 /scripts/xds-utils/updateXdsServerPackage | |
parent | 4982769bd48b5c67c5eff4d9c6f297fa2a7531a4 (diff) |
update xds-server package in docker
scripts/package-update: bash scripts to update xds-server package in docker
monitor updates: default time is 24h, a update is tried at startup
api/v1: 2 new requests:
- get(updates): return various information about xds-server packages
- post(updates): update xds-server packages
Change-Id: I1673f7860e57cfe1d4abe5a24609ee46a90b67d8
Signed-off-by: Clément Bénier <clement.benier@iot.bzh>
Diffstat (limited to 'scripts/xds-utils/updateXdsServerPackage')
-rwxr-xr-x | scripts/xds-utils/updateXdsServerPackage | 64 |
1 files changed, 64 insertions, 0 deletions
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 + |