Fixed sdk uuid setting during install [SPEC-1377]
[src/xds/xds-server.git] / scripts / sdks / agl / db-update
1 #!/bin/bash
2  ###########################################################################
3 # Copyright 2017-2018 IoT.bzh
4 #
5 # author: Sebastien Douheret <sebastien@iot.bzh>
6 #
7 # Licensed under the Apache License, Version 2.0 (the "License");
8 # you may not use this file except in compliance with the License.
9 # You may obtain a copy of the License at
10 #
11 #     http://www.apache.org/licenses/LICENSE-2.0
12 #
13 # Unless required by applicable law or agreed to in writing, software
14 # distributed under the License is distributed on an "AS IS" BASIS,
15 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 # See the License for the specific language governing permissions and
17 # limitations under the License.
18 ###########################################################################
19
20 . $(dirname "$0")/_env-init.sh
21
22 sdksDBFile=${1}
23
24 [ "${sdksDBFile}" = "" ] && sdksDBFile=${SDK_ROOT_DIR}/sdks_latest.json
25
26 # Restore previous file on error
27 exitCode=0
28 trap "OnExit" 0 1 2 15
29 OnExit ()
30 {
31     if [ "${exitCode}" != "0" ] &&  [ -f "${sdksDBFile}.old" ]; then
32         echo "Error detected, restore previous database version"
33         mv "${sdksDBFile}.old" "${sdksDBFile}"
34     fi
35 }
36
37 # Create destination directory when needed
38 instDir=$(dirname "${sdksDBFile}")
39 [ ! -d "${instDir}" ] && mkdir -p "${instDir}"
40
41 # Get database
42 echo "Updating AGL SDK database..."
43 wget --no-verbose --connect-timeout=30 "${SDK_DATABASE}" -O "${sdksDBFile}.new" || exit $?
44
45 # Backup previous file
46 [ -f "${sdksDBFile}" ] && cp -f "${sdksDBFile}" "${sdksDBFile}.old"
47
48 mv --update "${sdksDBFile}.new" "${sdksDBFile}"
49 [ -f "${sdksDBFile}.new" ] && rm -f "${sdksDBFile}.new"
50
51 echo "Done: AGL SDK database is up-to-date"