crops / yocto-dockerfiles

This repository is for -base and -builder containers for building derivative containers (such as poky-container) for containerized Yocto Project builds.
GNU General Public License v2.0
146 stars 57 forks source link

No need to install SDL into the containers #14

Closed incandescant closed 7 years ago

incandescant commented 7 years ago

Since Krogoth (2.1), or perhaps earlier, sdl-native is built by the build system rather than relying on the host to have SDL headers installed. Therefore save some time and space in the containers by removing SDL from the list of installed dependencies.

Signed-off-by: Joshua Lock joshua.g.lock@intel.com

rewitt1 commented 7 years ago

Joshua,

I tested this locally and got the same failure as on travis. build_container.sh also runs the tests, so if you wanted to try it locally you can run.

REPO=deleteme DISTRO_TO_BUILD=ubuntu-14.04 ./build_container.sh

However, even if it worked, don't we still support 2.0, 2.1, 2.2? And it is a good question whether we actively want to prevent the containers from working on older releases.

I always wanted to aggressively prune the images, but it would be nice to do it without removing things older releases explicitly require.

incandescant commented 7 years ago

The core project team are only supporting 2.1 & 2.2. Older releases are now supported by the community. jethro/2.0 and newer branches support building sdl-native (we backported the patches) and don't default to adding sdl-native to ASSUME_PROVIDED.

I'd argue the overhead of sdl (including an X stack) aren't worth it to support unmaintained branches that were originally release almost 2 years ago.

If the CROPS team agree I can work on resolving the failure.

incandescant commented 7 years ago

It turns out the failure was due to the ubuntu-14.04 container image not having python2 explicitly installed, it was getting python as one of libsdl1.2-dev's dependencies. I've added a that as a separate commit because it seems to me that this patch would be desirable even if we don't want to remove SDL from the containers.

incandescant commented 7 years ago

This series has been updated to:

  1. remove SDL from the container images
  2. add the recently released opensuse 42.3
  3. remove all of the EOL'd distro versions

Please consider if for merge.

rewitt1 commented 7 years ago

Re: Removing the EOL'd distros.

Although not required until the removal of the images from dockerhub, we also need a corresponding change to crops/poky.

RFC @moto-timo @bavery22 Tim and I were just talking about this a couple of days ago. The question I have is, if we no longer build them, should we still leave the last successfully generated images on dockerhub?

Because in some cases the images may no longer be able to be generated. For instance, this happened with opensuse 13.2, due to the removal updates repo.

I think I lean toward not even preserving the old images on dockerhub, since we're not really an archival service, and instead if a user needs that, it is up to them to preserve whatever images they might need.

However, I wanted to let other people chime is as well. RFC

bavery22 commented 7 years ago

I heartily endorse the idea of retiring/removing the non buildable versions esp since those won't get updates...