123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115 |
- #!/usr/bin/env bash
- #
- # SPDX-License-Identifier: GPL-2.0-only
- #
- help ()
- {
- base=`basename $0`
- echo -e "Usage: $base command"
- echo "Avaliable commands:"
- echo -e "\texport <file.conf>: export and lock down the AUTOPR values from the PR service into a file for release."
- echo -e "\timport <file.conf>: import the AUTOPR values from the exported file into the PR service."
- }
- clean_cache()
- {
- s=`bitbake -e | grep ^CACHE= | cut -f2 -d\"`
- if [ "x${s}" != "x" ]; then
- rm -rf ${s}
- fi
- }
- do_export ()
- {
- file=$1
- [ "x${file}" == "x" ] && help && exit 1
- rm -f ${file}
- clean_cache
- bitbake -R conf/prexport.conf -p
- s=`bitbake -R conf/prexport.conf -e | grep ^PRSERV_DUMPFILE= | cut -f2 -d\"`
- if [ "x${s}" != "x" ];
- then
- [ -e $s ] && mv -f $s $file && echo "Exporting to file $file succeeded!"
- return 0
- fi
- echo "Exporting to file $file failed!"
- return 1
- }
- do_import ()
- {
- file=$1
- [ "x${file}" == "x" ] && help && exit 1
- clean_cache
- bitbake -R conf/primport.conf -R $file -p
- ret=$?
- [ $ret -eq 0 ] && echo "Importing from file $file succeeded!" || echo "Importing from file $file failed!"
- return $ret
- }
- do_migrate_localcount ()
- {
- df=`bitbake -R conf/migrate_localcount.conf -e | \
- grep ^LOCALCOUNT_DUMPFILE= | cut -f2 -d\"`
- if [ "x${df}" == "x" ];
- then
- echo "LOCALCOUNT_DUMPFILE is not defined!"
- return 1
- fi
- rm -rf $df
- clean_cache
- echo "Exporting LOCALCOUNT to AUTOINCs..."
- bitbake -R conf/migrate_localcount.conf -p
- [ ! $? -eq 0 ] && echo "Exporting to file $df failed!" && exit 1
- if [ -e $df ];
- then
- echo "Exporting to file $df succeeded!"
- else
- echo "Exporting to file $df failed!"
- exit 1
- fi
-
- echo "Importing generated AUTOINC entries..."
- [ -e $df ] && do_import $df
- if [ ! $? -eq 0 ]
- then
- echo "Migration from LOCALCOUNT to AUTOINCs failed!"
- return 1
- fi
- echo "Migration from LOCALCOUNT to AUTOINCs succeeded!"
- return 0
- }
- [ $# -eq 0 ] && help && exit 1
- case $2 in
- *.conf|*.inc)
- ;;
- *)
- echo ERROR: $2 must end with .conf or .inc!
- exit 1
- ;;
- esac
- case $1 in
- export)
- do_export $2
- ;;
- import)
- do_import $2
- ;;
- migrate_localcount)
- do_migrate_localcount
- ;;
- *)
- help
- exit 1
- ;;
- esac
|