Skip to content
This repository has been archived by the owner on Apr 21, 2022. It is now read-only.

Add org.label-schema.license, org.label-schema.license-image and org.label-schema.license-source to specification #21

Open
wants to merge 2 commits into
base: gh-pages
Choose a base branch
from

Conversation

lpalgarvio
Copy link

@lpalgarvio lpalgarvio commented Mar 5, 2017

3 additions being proposed:

  • org.label-schema.license = "GPL-3.0" - License(s) of the project. Must conform to the SPDX license specification.
  • org.label-schema.license-image = "MIT" - License(s) of the image, if different from the project. Must conform to the SPDX license specification.
  • org.label-schema.license-source = "GPL-3.0" - License(s) of the source code, if different from the project. Must conform to the SPDX license specification.

Accordingly to SPDX license specification
@twaugh
Copy link

twaugh commented Mar 6, 2017

How should situations like "X or Y" be handled in this field? e.g. https://www.freetype.org/license.html

How should the aggregation of packages within the image be handled when each package has a different license?

@lpalgarvio
Copy link
Author

lpalgarvio commented Mar 6, 2017

For that, a multiple key license would have to be implemented, such as proposed for authors in #23 :
org.label-schema.licenses.extra=GPL-3.0
org.label-schema.licenses.default=FTL

To describe better to where each license applies, it may need to have to get extra fields, such as target or context:
org.label-schema.licenses.default.license=GPL-3.0
org.label-schema.licenses.default.context=base.Dockerfile,app.Dockerfile,docker-compose.yml
org.label-schema.licenses.extra.license=FTL
org.label-schema.licenses.extra.context=libraryxyz

Let me know what you think and I'll submit a new patch

@lpalgarvio lpalgarvio changed the title Added org.label-schema.license Added license to specification Mar 6, 2017
@lpalgarvio lpalgarvio changed the title Added license to specification Add license to specification Mar 6, 2017
@twaugh
Copy link

twaugh commented Mar 16, 2017

Does that handle the "or" case?

@lpalgarvio
Copy link
Author

No. For complex scenarios, authors can ignore these labels and just write their own LICENSE.md file describing all the exceptions, ors, ands, and all license attributions.

@leipert
Copy link

leipert commented Apr 10, 2017

Actually SPDX supports OR cases: (LGPL-2.1 OR MIT)

Reference: https://spdx.org/spdx-specification-21-web-version#h.jxpfx0ykyb60

@lizrice
Copy link
Contributor

lizrice commented Apr 10, 2017

I like the proposed change, but as I recall we omitted license from the first draft because there were concerns about what it really means - does it mean source code license even if the source is not included in the image? @garethr what are your views on this?

@lpalgarvio
Copy link
Author

Reimplemented differently.

  • org.label-schema.license = "GPL-3.0" - License(s) of the project. Must conform to the SPDX license specification.
  • org.label-schema.license-image = "MIT" - License(s) of the image, if different from the project. Must conform to the SPDX license specification.
  • org.label-schema.license-source = "GPL-3.0" - License(s) of the source code, if different from the project. Must conform to the SPDX license specification.

@lpalgarvio lpalgarvio mentioned this pull request Nov 15, 2017
@lpalgarvio lpalgarvio changed the title Add license to specification Add org.label-schema.license, org.label-schema.license-image and org.label-schema.license-source to specification Nov 15, 2017
@chamilad
Copy link

@lizrice Isn't that (which labels to use whenever the source is included or not) to be handled by the user including the label?

IMO license-* labels with standard values should be provided to address stories that have straightforward parameters. For other stories, a custom licensing can be used.

@@ -68,6 +68,9 @@ All labels are OPTIONAL, however if present MUST be prefixed with the namespace
| `build-date` | `org.label-schema.build-date="2016-04-12T23:20:50.52Z"` | This label contains the Date/Time the image was built. The value SHOULD be formatted according to [RFC 3339](https://tools.ietf.org/html/rfc3339). |
| `name` | `org.label-schema.name = "myname"` | A human friendly name for the image. For example, this could be the name of a microservice in a microservice architecture. |
| `description` | `org.label-schema.description = "This service does awesome things with other things"` | Text description of the image. May contain up to 300 characters. |
| `license` | `org.label-schema.license = "GPL-3.0"` | License(s) of the project. Must conform to the [SPDX license specification](https://spdx.org/licenses). |
| `license-image` | `org.label-schema.license-image = "MIT"` | License(s) of the image, if different from the project. Must conform to the [SPDX license specification](https://spdx.org/licenses). |
| `license-source` | `org.label-schema.license-source = "GPL-3.0"` | License(s) of the source code, if different from the project. Must conform to the [SPDX license specification](https://spdx.org/licenses). |
| `usage` | `org.label-schema.usage= "/usr/doc/app-usage.txt"` | Link to a file in the container or alternatively a URL that provides usage instructions. If a URL is given it SHOULD be specific to this version of the image e.g. `http://docs.example.com/v1.2/usage` rather than `http://docs.example.com/usage` |

Choose a reason for hiding this comment

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

Would we need to provide examples on which scenarios these labels address specifically?

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.

5 participants