Hi Ross, Tudor Florea

I have added a normal user "quilttest" to run the quilt ptest.
When the ptest finish, delete the "quilttest" user.

//dengke

On 2016年03月25日 16:28, Dengke Du wrote:
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 <[email protected]>
---
  meta/recipes-devtools/quilt/quilt.inc       | 4 +++-
  meta/recipes-devtools/quilt/quilt/run-ptest | 5 ++++-
  meta/recipes-devtools/quilt/quilt/test.sh   | 1 +
  3 files changed, 8 insertions(+), 2 deletions(-)
  create mode 100755 meta/recipes-devtools/quilt/quilt/test.sh

diff --git a/meta/recipes-devtools/quilt/quilt.inc 
b/meta/recipes-devtools/quilt/quilt.inc
index 837b36b..4e393c4 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 958a9df..4b808ae 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 0000000..6563e4a
--- /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

--
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to