mirror of
git://git.yoctoproject.org/poky.git
synced 2025-07-19 21:09:03 +02:00

Add the following from the patchtest repo: - patchtest: core patch testing tool - patchtest-get-branch: determine the target branch of a patch - patchtest-get-series: pull patch series from Patchwork - patchtest-send-results: send test results to selected mailing list - patchtest-setup-sharedir: create sharedir for use with patchtest guest mode - patchtest.README: instructions for using patchtest based on the README in the original repository Note that the patchtest script was modified slightly from the repo version to retain compatibility with the oe-core changes. patchtest-send-results and patchtest-setup-sharedir are also primarily intended for automated testing in guest mode, but are added for consistency. (From OE-Core rev: cf318c3c05fc050b8c838c04f28797325c569c5c) Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
96 lines
2.5 KiB
Bash
Executable File
96 lines
2.5 KiB
Bash
Executable File
#!/bin/bash -e
|
|
#
|
|
# patchtest-setup-sharedir: Setup a directory for storing mboxes and
|
|
# repositories to be shared with the guest machine, including updates to
|
|
# the repos if the directory already exists
|
|
#
|
|
# Copyright (C) 2023 BayLibre Inc.
|
|
#
|
|
# This program is free software; you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License version 2 as
|
|
# published by the Free Software Foundation.
|
|
#
|
|
# 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.,
|
|
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
|
#
|
|
# Author: Trevor Gamblin <tgamblin@baylibre.com>
|
|
|
|
# poky repository
|
|
POKY_REPO="https://git.yoctoproject.org/poky"
|
|
|
|
# patchtest repository
|
|
PATCHTEST_REPO="https://git.yoctoproject.org/patchtest"
|
|
|
|
# the name of the directory
|
|
SHAREDIR="patchtest_share"
|
|
|
|
help()
|
|
{
|
|
echo "Usage: patchtest-setup-sharedir [ -d | --directory SHAREDIR ]
|
|
[ -p | --patchtest PATCHTEST_REPO ]
|
|
[ -y | --poky POKY_REPO ]"
|
|
exit 2
|
|
}
|
|
|
|
while [ "$1" != "" ]; do
|
|
case $1 in
|
|
-d|--directory)
|
|
SHAREDIR=$2
|
|
shift 2
|
|
;;
|
|
-p|--patchtest)
|
|
PATCHTEST_REPO=$2
|
|
shift 2
|
|
;;
|
|
-y|--poky)
|
|
POKY_REPO=$2
|
|
shift 2
|
|
;;
|
|
-h|--help)
|
|
help
|
|
;;
|
|
*)
|
|
echo "Unknown option $1"
|
|
help
|
|
;;
|
|
esac
|
|
done
|
|
|
|
# define MBOX_DIR where the patch series will be stored by
|
|
# get-latest-series
|
|
MBOX_DIR="${SHAREDIR}/mboxes"
|
|
|
|
# Create SHAREDIR if it doesn't exist
|
|
if [ ! -d "$SHAREDIR" ]; then
|
|
mkdir -p "${SHAREDIR}"
|
|
echo "Created ${SHAREDIR}"
|
|
fi
|
|
|
|
# Create the mboxes directory if it doesn't exist
|
|
if [ ! -d "$MBOX_DIR" ]; then
|
|
mkdir -p "${MBOX_DIR}"
|
|
echo "Created ${MBOX_DIR}"
|
|
fi
|
|
|
|
# clone poky if it's not already present; otherwise, update it
|
|
if [ ! -d "$POKY_REPO" ]; then
|
|
BASENAME=$(basename ${POKY_REPO})
|
|
git clone "${POKY_REPO}" "${SHAREDIR}/${BASENAME}"
|
|
else
|
|
(cd "${SHAREDIR}/$BASENAME" && git pull)
|
|
fi
|
|
|
|
# clone patchtest if it's not already present; otherwise, update it
|
|
if [ ! -d "$PATCHTEST_REPO" ]; then
|
|
BASENAME=$(basename ${PATCHTEST_REPO})
|
|
git clone "${PATCHTEST_REPO}" "${SHAREDIR}/${BASENAME}"
|
|
else
|
|
(cd "${SHAREDIR}/$BASENAME" && git pull)
|
|
fi
|