Merge patch (Update uid/gid of build root if uid/gid is not match)
authorjiankang.fan <jiankang.fan@samsung.com>
Tue, 8 Mar 2016 11:51:59 +0000 (19:51 +0800)
committerjiankang.fan <jiankang.fan@samsung.com>
Tue, 8 Mar 2016 11:51:59 +0000 (19:51 +0800)
Change-Id: Iaa1f3628dd21cb4d45244f6a60ca2e632ad99087
Signed-off-by: jiankang.fan <jiankang.fan@samsung.com>
build

diff --git a/build b/build
index a7123743e1d450dab833dc364102f119b21684a3..06c77a31c82779957d9367740ddf15ded353a55f 100755 (executable)
--- a/build
+++ b/build
@@ -1165,13 +1165,11 @@ for RECIPEFILE in "${RECIPEFILES[@]}" ; do
            chown "$ABUILD_UID:$ABUILD_GID" $BUILD_ROOT/home/abuild
        else
            if ! egrep "^abuild:x?:${ABUILD_UID}:${ABUILD_GID}" >/dev/null <$BUILD_ROOT/etc/passwd ; then
-               echo "abuild user present in the buildroot ($BUILD_ROOT) but uid:gid does not match"
-               echo "buildroot currently using:"
-               egrep "^abuild:" <$BUILD_ROOT/etc/passwd
-               echo "build script attempting to use:"
-               echo "abuild::${ABUILD_UID}:${ABUILD_GID}:..."
-               echo "build aborting"
-               cleanup_and_exit 1
+                sed -i '/^abuild:/d' $BUILD_ROOT/etc/passwd
+                sed -i '/^abuild:/d' $BUILD_ROOT/etc/group
+                echo "abuild:x:${ABUILD_UID}:${ABUILD_GID}:Autobuild:/home/abuild:/bin/bash" >>$BUILD_ROOT/etc/passwd
+                echo "abuild:x:${ABUILD_GID}:" >>$BUILD_ROOT/etc/group
+                chown "$ABUILD_UID:$ABUILD_GID" $BUILD_ROOT/home/abuild -R
            fi
        fi
        if test -f $BUILD_ROOT/etc/shadow ; then