buildhistory: don't output ownership for the sysroot

Message ID 20190708234643.15636-1-ross.burton@intel.com
State Accepted
Commit fadb7ae78876a7cf25c48481ff4ed3131e53415f
Headers show
Series
  • buildhistory: don't output ownership for the sysroot
Related show

Commit Message

Ross Burton July 8, 2019, 11:46 p.m.
As the sysroot isn't ran inside pseudo the ownership is whoever is running the
builds.  In a setup where multiple builders all contribute to a shared
buildhistory writing the ownership data isn't useful, so just replace it with "-
-".

Signed-off-by: Ross Burton <ross.burton@intel.com>

---
 meta/classes/buildhistory.bbclass | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

-- 
2.20.1

-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Comments

akuster808 July 9, 2019, 1:11 a.m. | #1
On 7/8/19 4:46 PM, Ross Burton wrote:
> As the sysroot isn't ran inside pseudo the ownership is whoever is running the

> builds.  In a setup where multiple builders all contribute to a shared

> buildhistory writing the ownership data isn't useful, so just replace it with "-

> -".


Should this be backported?

- armin
> Signed-off-by: Ross Burton <ross.burton@intel.com>

> ---

>  meta/classes/buildhistory.bbclass | 16 +++++++++++++++-

>  1 file changed, 15 insertions(+), 1 deletion(-)

>

> diff --git a/meta/classes/buildhistory.bbclass b/meta/classes/buildhistory.bbclass

> index baa7c8e2799..5bf27268107 100644

> --- a/meta/classes/buildhistory.bbclass

> +++ b/meta/classes/buildhistory.bbclass

> @@ -67,7 +67,7 @@ PATCH_GIT_USER_NAME ?= "OpenEmbedded"

>  

>  buildhistory_emit_sysroot() {

>  	mkdir --parents ${BUILDHISTORY_DIR_PACKAGE}

> -	buildhistory_list_files ${SYSROOT_DESTDIR} ${BUILDHISTORY_DIR_PACKAGE}/sysroot

> +	buildhistory_list_files_no_owners ${SYSROOT_DESTDIR} ${BUILDHISTORY_DIR_PACKAGE}/sysroot

>  }

>  

>  #

> @@ -537,6 +537,20 @@ buildhistory_list_files() {

>  	fi | sort -k5 | sed 's/ * -> $//' > $2 )

>  }

>  

> +buildhistory_list_files_no_owners() {

> +	# List the files in the specified directory, but exclude date/time etc.

> +	# Also don't output the ownership data, but instead output just - - so

> +	# that the same parsing code as for _list_files works.

> +	# This is somewhat messy, but handles where the size is not printed for device files under pseudo

> +	( cd $1

> +	find_cmd='find . ! -path . -printf "%M -          -          %10s %p -> %l\n"'

> +	if [ "$3" = "fakeroot" ] ; then

> +		eval ${FAKEROOTENV} ${FAKEROOTCMD} "$find_cmd"

> +	else

> +		eval "$find_cmd"

> +	fi | sort -k5 | sed 's/ * -> $//' > $2 )

> +}

> +

>  buildhistory_list_pkg_files() {

>  	# Create individual files-in-package for each recipe's package

>  	for pkgdir in $(find ${PKGDEST}/* -maxdepth 0 -type d); do


-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core
Ross Burton July 9, 2019, 9:20 a.m. | #2
On Tue, 9 Jul 2019 at 02:11, akuster808 <akuster808@gmail.com> wrote:
> On 7/8/19 4:46 PM, Ross Burton wrote:

> > As the sysroot isn't ran inside pseudo the ownership is whoever is running the

> > builds.  In a setup where multiple builders all contribute to a shared

> > buildhistory writing the ownership data isn't useful, so just replace it with "-

> > -".

>

> Should this be backported?


No, because the sysroot writing patches are not backported. :)

Ross
-- 
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Patch

diff --git a/meta/classes/buildhistory.bbclass b/meta/classes/buildhistory.bbclass
index baa7c8e2799..5bf27268107 100644
--- a/meta/classes/buildhistory.bbclass
+++ b/meta/classes/buildhistory.bbclass
@@ -67,7 +67,7 @@  PATCH_GIT_USER_NAME ?= "OpenEmbedded"
 
 buildhistory_emit_sysroot() {
 	mkdir --parents ${BUILDHISTORY_DIR_PACKAGE}
-	buildhistory_list_files ${SYSROOT_DESTDIR} ${BUILDHISTORY_DIR_PACKAGE}/sysroot
+	buildhistory_list_files_no_owners ${SYSROOT_DESTDIR} ${BUILDHISTORY_DIR_PACKAGE}/sysroot
 }
 
 #
@@ -537,6 +537,20 @@  buildhistory_list_files() {
 	fi | sort -k5 | sed 's/ * -> $//' > $2 )
 }
 
+buildhistory_list_files_no_owners() {
+	# List the files in the specified directory, but exclude date/time etc.
+	# Also don't output the ownership data, but instead output just - - so
+	# that the same parsing code as for _list_files works.
+	# This is somewhat messy, but handles where the size is not printed for device files under pseudo
+	( cd $1
+	find_cmd='find . ! -path . -printf "%M -          -          %10s %p -> %l\n"'
+	if [ "$3" = "fakeroot" ] ; then
+		eval ${FAKEROOTENV} ${FAKEROOTCMD} "$find_cmd"
+	else
+		eval "$find_cmd"
+	fi | sort -k5 | sed 's/ * -> $//' > $2 )
+}
+
 buildhistory_list_pkg_files() {
 	# Create individual files-in-package for each recipe's package
 	for pkgdir in $(find ${PKGDEST}/* -maxdepth 0 -type d); do