All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] Build Appliance tweaks
@ 2017-03-15 22:13 Juro Bystricky
  2017-03-15 22:13 ` [PATCH 1/3] build-appliance-image: use pip3-native Juro Bystricky
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Juro Bystricky @ 2017-03-15 22:13 UTC (permalink / raw)
  To: openembedded-core; +Cc: jurobystricky

The Build Appliance recipe needs several tweaks in order for the BA to build and
to function.

1. Use native pip3: Do not rely on pip3 being installed on host.
   This, of course, assumes there is already python-pip3-native support available.
   (a previous patch)

2. Remove symlinks before creating them to avid build errors, otherwise we may run
   into "File already exists" build errors. 

3. Ensure pod2man is present in the BA image, toaster will not run without it.
   

Even with all these changes, it may not be possible to use BA to build any image, unless
the sanity.bbclass accepts /bin/bash.bash as a viable shell. This has already been addressed
in another patch. The BA then needs to be rebuilt with SRCREV containing the sanity.bbclass patch.




Juro Bystricky (3):
  build-appliance-image: use pip3-native
  build-appliance-image: fix build errors
  build-appliance-image: ensure pod2man present in BA

 meta/recipes-core/images/build-appliance-image_15.0.0.bb | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

-- 
2.7.4



^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH 1/3] build-appliance-image: use pip3-native
  2017-03-15 22:13 [PATCH 0/3] Build Appliance tweaks Juro Bystricky
@ 2017-03-15 22:13 ` Juro Bystricky
  2017-03-15 22:16   ` Richard Purdie
  2017-03-15 22:13 ` [PATCH 2/3] build-appliance-image: fix build errors Juro Bystricky
  2017-03-15 22:13 ` [PATCH 3/3] build-appliance-image: ensure pod2man present in BA Juro Bystricky
  2 siblings, 1 reply; 6+ messages in thread
From: Juro Bystricky @ 2017-03-15 22:13 UTC (permalink / raw)
  To: openembedded-core; +Cc: jurobystricky

Do not rely on pip3 being installed on the host.
Use pip3-native instead.

[YOCTO#10909]
[YOCTO#11022]

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
---
 meta/recipes-core/images/build-appliance-image_15.0.0.bb | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-core/images/build-appliance-image_15.0.0.bb b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
index 0db1fb0..730989e 100644
--- a/meta/recipes-core/images/build-appliance-image_15.0.0.bb
+++ b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
@@ -18,10 +18,10 @@ IMAGE_ROOTFS_EXTRA_SPACE = "41943040"
 # Do a quiet boot with limited console messages
 APPEND += "rootfstype=ext4 quiet"
 
-DEPENDS = "zip-native"
+DEPENDS = "zip-native python3-pip-native"
 IMAGE_FSTYPES = "vmdk"
 
-inherit core-image module-base
+inherit core-image module-base setuptools3
 
 SRCREV ?= "8343ed93c4278715aa1582d3cadedf8f197b4089"
 SRC_URI = "git://git.yoctoproject.org/poky;branch=master \
@@ -95,6 +95,8 @@ fakeroot do_populate_poky_src () {
 	echo 'gtk-theme-name = "Clearlooks"' > ${IMAGE_ROOTFS}/etc/gtk-2.0/gtkrc
 
 	# Install modules needed for toaster
+	export STAGING_LIBDIR=${STAGING_LIBDIR_NATIVE}
+	export STAGING_INCDIR=${STAGING_INCDIR_NATIVE}
 	export HOME=${IMAGE_ROOTFS}/home/builder
 	mkdir -p ${IMAGE_ROOTFS}/home/builder/.cache/pip
 	pip3 install --user -I -U -v -r ${IMAGE_ROOTFS}/home/builder/poky/bitbake/toaster-requirements.txt
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 2/3] build-appliance-image: fix build errors
  2017-03-15 22:13 [PATCH 0/3] Build Appliance tweaks Juro Bystricky
  2017-03-15 22:13 ` [PATCH 1/3] build-appliance-image: use pip3-native Juro Bystricky
@ 2017-03-15 22:13 ` Juro Bystricky
  2017-03-15 22:13 ` [PATCH 3/3] build-appliance-image: ensure pod2man present in BA Juro Bystricky
  2 siblings, 0 replies; 6+ messages in thread
From: Juro Bystricky @ 2017-03-15 22:13 UTC (permalink / raw)
  To: openembedded-core; +Cc: jurobystricky

Remove any symlinks before creating new ones to avoid potential build
errors such as:

FileExistsError: [Errno 17] File exists: '../../usr/src/kernel' -> ... '

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
---
 meta/recipes-core/images/build-appliance-image_15.0.0.bb | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/meta/recipes-core/images/build-appliance-image_15.0.0.bb b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
index 730989e..b1d2250 100644
--- a/meta/recipes-core/images/build-appliance-image_15.0.0.bb
+++ b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
@@ -60,6 +60,7 @@ fakeroot do_populate_poky_src () {
 	cp ${WORKDIR}/README_VirtualBox_Toaster.txt ${IMAGE_ROOTFS}/home/builder/
 
 	# Create a symlink, needed for out-of-tree kernel modules build
+	rm -f  ${IMAGE_ROOTFS}/lib/modules/${KERNEL_VERSION}/build
 	lnr ${IMAGE_ROOTFS}${KERNEL_SRC_PATH} ${IMAGE_ROOTFS}/lib/modules/${KERNEL_VERSION}/build
 
 	echo "INHERIT += \"rm_work\"" >> ${IMAGE_ROOTFS}/home/builder/poky/build/conf/auto.conf
@@ -87,6 +88,7 @@ fakeroot do_populate_poky_src () {
 	echo "builder ALL=(ALL) NOPASSWD: ALL" >> ${IMAGE_ROOTFS}/etc/sudoers
 
 	# Load tap/tun at startup
+	rm -f ${IMAGE_ROOTFS}/sbin/iptables
 	lnr ${IMAGE_ROOTFS}/usr/sbin/iptables ${IMAGE_ROOTFS}/sbin/iptables
 	echo "tun" >> ${IMAGE_ROOTFS}/etc/modules
 
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 3/3] build-appliance-image: ensure pod2man present in BA
  2017-03-15 22:13 [PATCH 0/3] Build Appliance tweaks Juro Bystricky
  2017-03-15 22:13 ` [PATCH 1/3] build-appliance-image: use pip3-native Juro Bystricky
  2017-03-15 22:13 ` [PATCH 2/3] build-appliance-image: fix build errors Juro Bystricky
@ 2017-03-15 22:13 ` Juro Bystricky
  2 siblings, 0 replies; 6+ messages in thread
From: Juro Bystricky @ 2017-03-15 22:13 UTC (permalink / raw)
  To: openembedded-core; +Cc: jurobystricky

"pod2man" went missing from BA, but it is required.
This patch fixes the Toaster error:

<...>
ERROR: These tools appear to be unavailable in PATH, please install
   them in order to proceed:
       pod2man
<...>

[YOCTO#11144]

Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
---
 meta/recipes-core/images/build-appliance-image_15.0.0.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/recipes-core/images/build-appliance-image_15.0.0.bb b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
index b1d2250..5107246 100644
--- a/meta/recipes-core/images/build-appliance-image_15.0.0.bb
+++ b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
@@ -8,7 +8,7 @@ LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=4d92cd373abda3937c2bc47fbc49d
 
 IMAGE_INSTALL = "packagegroup-core-boot packagegroup-core-ssh-openssh packagegroup-self-hosted \
                  kernel-dev kernel-devsrc connman connman-plugin-ethernet dhcp-client \
-                 tzdata python3-pip"
+                 tzdata python3-pip perl-misc"
 
 IMAGE_FEATURES += "x11-base package-management splash"
 
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/3] build-appliance-image: use pip3-native
  2017-03-15 22:13 ` [PATCH 1/3] build-appliance-image: use pip3-native Juro Bystricky
@ 2017-03-15 22:16   ` Richard Purdie
  2017-03-15 22:57     ` Bystricky, Juro
  0 siblings, 1 reply; 6+ messages in thread
From: Richard Purdie @ 2017-03-15 22:16 UTC (permalink / raw)
  To: Juro Bystricky, openembedded-core; +Cc: jurobystricky

On Wed, 2017-03-15 at 15:13 -0700, Juro Bystricky wrote:
> Do not rely on pip3 being installed on the host.
> Use pip3-native instead.
> 
> [YOCTO#10909]
> [YOCTO#11022]
> 
> Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
> ---
>  meta/recipes-core/images/build-appliance-image_15.0.0.bb | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/meta/recipes-core/images/build-appliance-image_15.0.0.bb 
> b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
> index 0db1fb0..730989e 100644
> --- a/meta/recipes-core/images/build-appliance-image_15.0.0.bb
> +++ b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
> @@ -18,10 +18,10 @@ IMAGE_ROOTFS_EXTRA_SPACE = "41943040"
>  # Do a quiet boot with limited console messages
>  APPEND += "rootfstype=ext4 quiet"
>  
> -DEPENDS = "zip-native"
> +DEPENDS = "zip-native python3-pip-native"
>  IMAGE_FSTYPES = "vmdk"
>  
> -inherit core-image module-base
> +inherit core-image module-base setuptools3
>  
>  SRCREV ?= "8343ed93c4278715aa1582d3cadedf8f197b4089"
>  SRC_URI = "git://git.yoctoproject.org/poky;branch=master \
> @@ -95,6 +95,8 @@ fakeroot do_populate_poky_src () {
>  	echo 'gtk-theme-name = "Clearlooks"' >
> ${IMAGE_ROOTFS}/etc/gtk-2.0/gtkrc
>  
>  	# Install modules needed for toaster
> +	export STAGING_LIBDIR=${STAGING_LIBDIR_NATIVE}
> +	export STAGING_INCDIR=${STAGING_INCDIR_NATIVE}
>  	export HOME=${IMAGE_ROOTFS}/home/builder
>  	mkdir -p ${IMAGE_ROOTFS}/home/builder/.cache/pip
>  	pip3 install --user -I -U -v -r
> ${IMAGE_ROOTFS}/home/builder/poky/bitbake/toaster-requirements.txt


Looks good, thanks. Can you also drop "pip" from bitbake.conf's
HOSTTOOLS_NONFATAL please?

Cheers,

Richard


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/3] build-appliance-image: use pip3-native
  2017-03-15 22:16   ` Richard Purdie
@ 2017-03-15 22:57     ` Bystricky, Juro
  0 siblings, 0 replies; 6+ messages in thread
From: Bystricky, Juro @ 2017-03-15 22:57 UTC (permalink / raw)
  To: Richard Purdie, openembedded-core@lists.openembedded.org
  Cc: jurobystricky@hotmail.com

sure, no problem

________________________________________
From: Richard Purdie [richard.purdie@linuxfoundation.org]
Sent: Wednesday, March 15, 2017 3:16 PM
To: Bystricky, Juro; openembedded-core@lists.openembedded.org
Cc: jurobystricky@hotmail.com
Subject: Re: [PATCH 1/3] build-appliance-image: use pip3-native

On Wed, 2017-03-15 at 15:13 -0700, Juro Bystricky wrote:
> Do not rely on pip3 being installed on the host.
> Use pip3-native instead.
>
> [YOCTO#10909]
> [YOCTO#11022]
>
> Signed-off-by: Juro Bystricky <juro.bystricky@intel.com>
> ---
>  meta/recipes-core/images/build-appliance-image_15.0.0.bb | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/meta/recipes-core/images/build-appliance-image_15.0.0.bb
> b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
> index 0db1fb0..730989e 100644
> --- a/meta/recipes-core/images/build-appliance-image_15.0.0.bb
> +++ b/meta/recipes-core/images/build-appliance-image_15.0.0.bb
> @@ -18,10 +18,10 @@ IMAGE_ROOTFS_EXTRA_SPACE = "41943040"
>  # Do a quiet boot with limited console messages
>  APPEND += "rootfstype=ext4 quiet"
>
> -DEPENDS = "zip-native"
> +DEPENDS = "zip-native python3-pip-native"
>  IMAGE_FSTYPES = "vmdk"
>
> -inherit core-image module-base
> +inherit core-image module-base setuptools3
>
>  SRCREV ?= "8343ed93c4278715aa1582d3cadedf8f197b4089"
>  SRC_URI = "git://git.yoctoproject.org/poky;branch=master \
> @@ -95,6 +95,8 @@ fakeroot do_populate_poky_src () {
>       echo 'gtk-theme-name = "Clearlooks"' >
> ${IMAGE_ROOTFS}/etc/gtk-2.0/gtkrc
>
>       # Install modules needed for toaster
> +     export STAGING_LIBDIR=${STAGING_LIBDIR_NATIVE}
> +     export STAGING_INCDIR=${STAGING_INCDIR_NATIVE}
>       export HOME=${IMAGE_ROOTFS}/home/builder
>       mkdir -p ${IMAGE_ROOTFS}/home/builder/.cache/pip
>       pip3 install --user -I -U -v -r
> ${IMAGE_ROOTFS}/home/builder/poky/bitbake/toaster-requirements.txt


Looks good, thanks. Can you also drop "pip" from bitbake.conf's
HOSTTOOLS_NONFATAL please?

Cheers,

Richard


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2017-03-15 22:57 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-03-15 22:13 [PATCH 0/3] Build Appliance tweaks Juro Bystricky
2017-03-15 22:13 ` [PATCH 1/3] build-appliance-image: use pip3-native Juro Bystricky
2017-03-15 22:16   ` Richard Purdie
2017-03-15 22:57     ` Bystricky, Juro
2017-03-15 22:13 ` [PATCH 2/3] build-appliance-image: fix build errors Juro Bystricky
2017-03-15 22:13 ` [PATCH 3/3] build-appliance-image: ensure pod2man present in BA Juro Bystricky

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.