diff options
Diffstat (limited to 'poky/scripts/distro/distrocompare.sh')
-rwxr-xr-x | poky/scripts/distro/distrocompare.sh | 123 |
1 files changed, 0 insertions, 123 deletions
diff --git a/poky/scripts/distro/distrocompare.sh b/poky/scripts/distro/distrocompare.sh deleted file mode 100755 index 908760c23..000000000 --- a/poky/scripts/distro/distrocompare.sh +++ /dev/null @@ -1,123 +0,0 @@ -#!/usr/bin/env bash -# -# Copyright (c) 2017, Intel Corporation. -# All rights reserved. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# -# distrocompare.sh : provides capability to get a list of new packages -# based on two distinct branches. This script takes -# 2 parameters; either a commit-ish or a branch name -# -# To run : distrocompare.sh <older hash> <newer hash> -# E.g. distrocompare.sh morty 92aa0e7 -# E.g. distrocompare.sh morty pyro -# - -# get input as version -previous_version=$1 -current_version=$2 - -# set previous and current version -if [ -z "$2" ]; then - previous_version=$1 - current_version="current" -fi - -# get script location. That's where the source supposedly located as well. -scriptdir="$( realpath $(dirname "${BASH_SOURCE[0]}" ))" -sourcedir="$( realpath $scriptdir/../.. )" - -# create working directory -workdir=$(mktemp -d) - -# prepare to rollback to the branch if not similar -branch=`cd $sourcedir; git branch | grep \* | cut -d ' ' -f2` - -# set current workdir to store final result -currentworkdir=`pwd` - -# persists the file after local repo change -cp $scriptdir/build-recipe-list.py $workdir - -#================================================================== - -function bake_distrodata { - # get to source directory of the git - cd $sourcedir - - # change the branch / commit. Do not change if input is current - if [ "$1" != "current" ]; then - output=$(git checkout $1 2>&1) - - # exit if git fails - if [[ $output == *"error"* ]]; then - echo "git error : $output" - echo "exiting ... " - rm -rf $workdir - exit - fi - fi - - # make tmp as workdir - cd $workdir - - # source oe-init to generate a new build folder - source $sourcedir/oe-init-build-env $1 - - # if file already exists with distrodata, do not append - if ! grep -q "distrodata" "conf/local.conf"; then - # add inherit distrodata to local.conf to enable distrodata feature - echo 'INHERIT += "distrodata"' >> conf/local.conf - fi - - # use from tmp - $workdir/build-recipe-list.py generate_recipe_list -} - -bake_distrodata $previous_version -bake_distrodata $current_version - -#================================================================== - -cd $workdir - -# compare the 2 generated recipe-list.txt -$workdir/build-recipe-list.py compare_recipe $previous_version $current_version - -# copy final result to current working directory -cp $workdir/*_new_recipe_list.txt $currentworkdir - -if [ $? -ne 0 ]; then - rm -rf $workdir/$previous_version - rm -rf $workdir/$current_version - rm $workdir/build-recipe-list.py - # preserve the result in /tmp/distrodata if fail to copy the result over - exit -fi - -# cleanup -rm -rf $workdir - -# perform rollback branch -cd $sourcedir -currentbranch=`git branch | grep \* | cut -d ' ' -f2` -if [ "$currentbranch" != "$branch" ]; then - git checkout $branch -fi - -cd $currentworkdir - -#================================================================== |