summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDengke Du <dengke.du@windriver.com>2016-03-25 03:46:03 -0400
committerDengke Du <dengke.du@windriver.com>2016-03-25 03:46:03 -0400
commitfd0548b7b60220ca68bce43e6c27bfbf26a12c38 (patch)
treefd5d9e73b126013c8819a6950ad24ad36b52e7e8
parentb58e5b1fb3bcacbcfce17a748bca5f60c3528b4f (diff)
downloadopenembedded-core-contrib-dengke/quilt-ptest-fail-fixed.tar.gz
openembedded-core-contrib-dengke/quilt-ptest-fail-fixed.tar.bz2
openembedded-core-contrib-dengke/quilt-ptest-fail-fixed.zip
quilt: run ptest as normal userdengke/quilt-ptest-fail-fixed
When the user is root, run quilt ptest, the faildiff.test failed. Because in the faildiff.test, we drop the read permission of the file test.txt, we can't "quilt refresh" as normal user, so we got the following: >~ .*diff:test\.txt: Permission denied > Diff failed on file 'test.txt', aborting But when the user is root, we can access the file, so we got the following: > Nothing in patch patchs/test.diff So the faildiff.test was failed. We should create a normal user to run the ptest in the run-ptest scripts to slove the problem. Signed-off-by: Dengke Du <dengke.du@windriver.com>
-rw-r--r--meta/recipes-devtools/quilt/quilt.inc4
-rwxr-xr-xmeta/recipes-devtools/quilt/quilt/run-ptest5
-rwxr-xr-xmeta/recipes-devtools/quilt/quilt/test.sh1
3 files changed, 8 insertions, 2 deletions
diff --git a/meta/recipes-devtools/quilt/quilt.inc b/meta/recipes-devtools/quilt/quilt.inc
index 837b36ba8c..4e393c4d8f 100644
--- a/meta/recipes-devtools/quilt/quilt.inc
+++ b/meta/recipes-devtools/quilt/quilt.inc
@@ -8,6 +8,7 @@ SRC_URI = "${SAVANNAH_GNU_MIRROR}/quilt/quilt-${PV}.tar.gz \
file://install.patch \
file://run-ptest \
file://Makefile \
+ file://test.sh \
"
SRC_URI[md5sum] = "fc0310db5868a0873d602d4332a76d43"
@@ -50,8 +51,9 @@ do_install_ptest() {
tar -cf - bin/ --exclude \*.in | ( cd ${D}${PTEST_PATH} && tar -xf - )
tar -cf - compat/ --exclude \*.in | ( cd ${D}${PTEST_PATH} && tar -xf - )
tar -cf - quilt/ --exclude \*.in | ( cd ${D}${PTEST_PATH} && tar -xf - )
- tar -cf - test/ --exclude mail.test --exclude delete.test | ( cd ${D}${PTEST_PATH} && tar -xf - )
+ tar -cf - test/ --exclude mail.test --exclude delete.test | ( cd ${D}${PTEST_PATH} && tar -xf - && chmod 777 test)
cp ${WORKDIR}/Makefile ${D}${PTEST_PATH}
+ cp ${WORKDIR}/test.sh ${D}${PTEST_PATH}
}
RDEPENDS_${PN}-ptest = "make file sed gawk diffutils findutils ed perl \
diff --git a/meta/recipes-devtools/quilt/quilt/run-ptest b/meta/recipes-devtools/quilt/quilt/run-ptest
index 958a9df5b6..4b808aee4f 100755
--- a/meta/recipes-devtools/quilt/quilt/run-ptest
+++ b/meta/recipes-devtools/quilt/quilt/run-ptest
@@ -1,5 +1,8 @@
#!/bin/sh
+THIS_SH=/bin/sh
ln -sf /bin/ed /usr/bin/ed
-for i in `ls test/*.test |awk -F. '{print $1}' |awk -F/ '{print $2}'`; do make check-$i; if [ $? -eq 0 ]; then echo PASS: $i.test; else echo FAIL: $i.test; fi; done
+/usr/sbin/adduser --disabled-password quilttest
+su -c "${THIS_SH} ./test.sh" quilttest
+/usr/sbin/deluser quilttest
rm -f /usr/bin/ed
diff --git a/meta/recipes-devtools/quilt/quilt/test.sh b/meta/recipes-devtools/quilt/quilt/test.sh
new file mode 100755
index 0000000000..6563e4a2fb
--- /dev/null
+++ b/meta/recipes-devtools/quilt/quilt/test.sh
@@ -0,0 +1 @@
+for i in `ls test/*.test |awk -F. '{print $1}' |awk -F/ '{print $2}'`; do make check-$i; if [ $? -eq 0 ]; then echo PASS: $i.test; else echo FAIL: $i.test; fi; done