Skip to content
This repository has been archived by the owner on Oct 22, 2024. It is now read-only.

Dockerfile: include copyleft source code of extra packages #765

Merged
merged 4 commits into from
Oct 5, 2020

Conversation

pohly
Copy link
Contributor

@pohly pohly commented Oct 2, 2020

Our "apt-get upgrade" + "apt-get install" layer is something where we
pull binaries from Debian and publish on Docker Hub, i.e. we
re-distribute binaries under their respective licenses. To fulfill the
obligation of making the source code available we download the source
code from Debian and include it in the image.

This is easier than maintaining a separate download location for the
source code and the extra size is small enough (10MB for the
production image, 100MB for the test image).

@pohly pohly requested a review from avalluri October 2, 2020 13:00
Dockerfile Outdated
grep ^Get: /usr/local/share/package-install.log | cut -d ' ' -f 5,7 | \
while read pkg version; do \
if ! [ -f /tmp/runtime-doc/$pkg/copyright ]; then \
echo "ERROR: missing copyfight file for $pkg"; exit 1; \
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

s/copyfight/copyright/

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, nice typo! Will fix.

Copy link
Contributor

@avalluri avalluri left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Though I haven't tried building the image but looks good to me.

pohly added 3 commits October 2, 2020 16:17
Our "apt-get upgrade" + "apt-get install" layer is something where we
pull binaries from Debian and publish on Docker Hub, i.e. we
re-distribute binaries under their respective licenses. To fulfill the
obligation of making the source code available we download the source
code from Debian and include it in the image.

This is easier than maintaining a separate download location for the
source code and the extra size is small enough (10MB for the
production image, 100MB for the test image).
We are required to track all packages that get installed. This cannot
be done easily with "apt-get upgrade". Instead of installing all
available updated packages, we'll only do so for those that we know to
be needed.
The long list of dependencies is causing additional work during
releases (maintaining the bill of material...). It was added as
a convenience for users, but that doesn't justify the extra work and
image size, in particular now that we started to include source code
for those extra packages in the image itself.
@pohly
Copy link
Contributor Author

pohly commented Oct 2, 2020

@avalluri please take another look - I added two more commits.

This is useful to compile a bill of materials.
@avalluri avalluri merged commit 1fa675d into intel:devel Oct 5, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants