Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compliance with third party dependency license distribution requirements is properly enforced #50058

Closed
2 tasks done
mark-vieira opened this issue Dec 10, 2019 · 2 comments · Fixed by #56642
Closed
2 tasks done
Labels
:Delivery/Build Build or test infrastructure Team:Delivery Meta label for Delivery team

Comments

@mark-vieira
Copy link
Contributor

mark-vieira commented Dec 10, 2019

Most Elasticsearch third-party dependencies are distributed under relatively permissive licenses such as Apache 2.0, MIT or other BSD-like licenses. There are some more restrictive licenses however which requirements that distributors of the software also provide a means of redistributing the original dependency source code. We do this already for the JDK which is bundled in Elasticsearch distributions but there may be other instances. Additionally, we want to ensure that for any dependencies added to Elasticsearch, that we are in proper compliance.

  • Surface to users of Elasticsearch any additional distribution requirements mandated by the license of any third-party dependencies. This might be additional notices, source distributions, etc.
  • Ensure that any dependencies added to the Elasticsearch distribution are either distributed under a known permissive license that incurs no addition distribution requirements, or, for more restrictively licensed dependencies, that we verify the distribution requirements have been met.
@mark-vieira mark-vieira added the :Delivery/Build Build or test infrastructure label Dec 10, 2019
@elasticmachine
Copy link
Collaborator

Pinging @elastic/es-core-infra (:Core/Infra/Build)

@rjernst
Copy link
Member

rjernst commented Dec 12, 2019

We should be able to use apache rat for this, as we do for license headers. See the LicenseHeadersTask. We could use this to inspect the LICENSE files for each dependency, and ensure all are in compliance with the allowed license types. For those that require redistribution, I think these are a special case, like it was for the jdk, where we should disallow those types and make them exceptions if we must do so.

@rjernst rjernst added the Team:Core/Infra Meta label for core/infra team label May 4, 2020
@mark-vieira mark-vieira added Team:Delivery Meta label for Delivery team and removed Team:Core/Infra Meta label for core/infra team labels Nov 11, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
:Delivery/Build Build or test infrastructure Team:Delivery Meta label for Delivery team
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants