CHEF-2627 Clarify License Description on Rubygems (#6630)

* Add a pair of files describing the relationship between the Chef EULA and the Apache 2.0 license, intended to be referenced from rubygems.org

Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>

* Add message to rubygems.org description of all 4 gems describing relationship between the two licenses

Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>

* Insert the full text of the Apache 2.0 license into the gem description on the advice of Legal

Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>

* Update README with message clarifying relationship between the two licenses

Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>

* Removes the full text of the Apache 2 license, which after clarification is not
in fact required to be in the rubygems description.

This reverts commit 4d02573f59.

* LINTING - adjust text markers

Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>

* LINTING - training whitespace

Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>

* Remove the word 'below' when refering to the inclusion of the Apache 2.0 license

Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>

* Add Chef-EULA to list of included files to inspec-core

Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>

---------

Signed-off-by: Clinton Wolfe <clintoncwolfe@gmail.com>
This commit is contained in:
Clinton Wolfe 2023-10-11 12:54:24 -04:00 committed by GitHub
parent 4f1b83e461
commit 968f3b2639
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 62 additions and 11 deletions

9
Chef-EULA Normal file
View file

@ -0,0 +1,9 @@
Packaged distributions of Progress® Chef® products obtained from RubyGems
are made available pursuant to the Progress Chef EULA at
https://www.chef.io/end-user-license-agreement, unless there is an executed
agreement in effect between you and Progress that covers the Progress Chef
products ("Master Agreement"), in which case the Master Agreement shall govern.
Source code obtained from the Chef GitHub repository is made available
under Apache-2.0, a copy of which can be found in
http://www.apache.org/licenses/LICENSE-2.0

View file

@ -461,8 +461,9 @@ KITCHEN_YAML=kitchen.dokken.yml bundle exec kitchen test -c 3
| **License:** | Apache License, Version 2.0 | | **License:** | Apache License, Version 2.0 |
| **License:** | Chef End User License Agreement | | **License:** | Chef End User License Agreement |
Chef InSpec is distributed under the Apache License, Version 2.0. Packaged distributions of Progress® Chef® products obtained from any authorised Progress Chef distribution source are made available pursuant to the Progress Chef EULA at https://www.chef.io/end-user-license-agreement, unless there is an executed agreement in effect between you and Progress that covers the Progress Chef products ("Master Agreement"), in which case the Master Agreement shall govern.
Permission to use the software is governed by the [Chef EULA](https://docs.chef.io/chef_license_accept.html).
Source code obtained from the Chef GitHub repository is made available under Apache-2.0, a copy of which is included below.
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.

9
inspec-bin/Chef-EULA Normal file
View file

@ -0,0 +1,9 @@
Packaged distributions of Progress® Chef® products obtained from RubyGems
are made available pursuant to the Progress Chef EULA at
https://www.chef.io/end-user-license-agreement, unless there is an executed
agreement in effect between you and Progress that covers the Progress Chef
products ("Master Agreement"), in which case the Master Agreement shall govern.
Source code obtained from the Chef GitHub repository is made available
under Apache-2.0, a copy of which can be found in
http://www.apache.org/licenses/LICENSE-2.0

View file

@ -8,9 +8,17 @@ Gem::Specification.new do |spec|
spec.authors = ["Chef InSpec Core Engineering "] spec.authors = ["Chef InSpec Core Engineering "]
spec.email = ["inspec@chef.io"] spec.email = ["inspec@chef.io"]
spec.summary = "Infrastructure and compliance testing." spec.summary = "Infrastructure and compliance testing."
spec.description = "InSpec executable for inspec gem. Use of this executable may require accepting a license agreement." spec.description = <<-EOT
InSpec executable for inspec gem. Use of this executable may require accepting a license agreement."
Packaged distributions of Progress® Chef® products obtained from RubyGems are made available pursuant to the Progress Chef EULA at https://www.chef.io/end-user-license-agreement, unless there is an executed agreement in effect between you and Progress that covers the Progress Chef products ("Master Agreement"), in which case the Master Agreement shall govern.
Source code obtained from the Chef GitHub repository is made available under Apache-2.0, a copy of which is included.
EOT
spec.homepage = "https://github.com/inspec/inspec/tree/main/inspec-bin" spec.homepage = "https://github.com/inspec/inspec/tree/main/inspec-bin"
spec.license = "Apache-2.0" spec.license = "LicenseRef-Chef-EULA"
spec.require_paths = ["lib"] spec.require_paths = ["lib"]
spec.required_ruby_version = ">= 2.4" spec.required_ruby_version = ">= 2.4"

View file

@ -11,9 +11,17 @@ Gem::Specification.new do |spec|
spec.authors = ["Chef InSpec Core Engineering "] spec.authors = ["Chef InSpec Core Engineering "]
spec.email = ["inspec@chef.io"] spec.email = ["inspec@chef.io"]
spec.summary = "Infrastructure and compliance testing." spec.summary = "Infrastructure and compliance testing."
spec.description = "InSpec executable for inspec-core gem. Use of this executable may require accepting a license agreement." spec.description = <<-EOT
InSpec executable for inspec-core gem. Use of this executable may require accepting a license agreement.
Packaged distributions of Progress® Chef® products obtained from RubyGems are made available pursuant to the Progress Chef EULA at https://www.chef.io/end-user-license-agreement, unless there is an executed agreement in effect between you and Progress that covers the Progress Chef products ("Master Agreement"), in which case the Master Agreement shall govern.
Source code obtained from the Chef GitHub repository is made available under Apache-2.0, a copy of which is included.
EOT
spec.homepage = "https://github.com/inspec/inspec/tree/main/inspec-bin" spec.homepage = "https://github.com/inspec/inspec/tree/main/inspec-bin"
spec.license = "Apache-2.0" spec.license = "LicenseRef-Chef-EULA"
spec.require_paths = ["lib"] spec.require_paths = ["lib"]
spec.required_ruby_version = ">= 2.4" spec.required_ruby_version = ">= 2.4"

View file

@ -8,16 +8,24 @@ Gem::Specification.new do |spec|
spec.authors = ["Chef InSpec Team"] spec.authors = ["Chef InSpec Team"]
spec.email = ["inspec@chef.io"] spec.email = ["inspec@chef.io"]
spec.summary = "Infrastructure and compliance testing. Core library." spec.summary = "Infrastructure and compliance testing. Core library."
spec.description = "InSpec provides a framework for creating end-to-end infrastructure tests. You can use it for integration or even compliance testing. Create fully portable test profiles and use them in your workflow to ensure stability and security. Integrate InSpec in your change lifecycle for local testing, CI/CD, and deployment verification. This has local support only. See the `inspec` gem for full support." spec.description = <<-EOT
InSpec provides a framework for creating end-to-end infrastructure tests. You can use it for integration or even compliance testing. Create fully portable test profiles and use them in your workflow to ensure stability and security. Integrate InSpec in your change lifecycle for local testing, CI/CD, and deployment verification.
This has local support only. See the `inspec` gem for full support.
Packaged distributions of Progress® Chef® products obtained from RubyGems are made available pursuant to the Progress Chef EULA at https://www.chef.io/end-user-license-agreement, unless there is an executed agreement in effect between you and Progress that covers the Progress Chef products ("Master Agreement"), in which case the Master Agreement shall govern.
Source code obtained from the Chef GitHub repository is made available under Apache-2.0, a copy of which is included.
EOT
spec.homepage = "https://github.com/inspec/inspec" spec.homepage = "https://github.com/inspec/inspec"
spec.license = "Apache-2.0" spec.license = "LicenseRef-Chef-EULA"
spec.require_paths = ["lib"] spec.require_paths = ["lib"]
spec.required_ruby_version = ">= 2.7" spec.required_ruby_version = ">= 2.7"
# the gemfile and gemspec are necessary for appbundler so don't remove it # the gemfile and gemspec are necessary for appbundler so don't remove it
spec.files = spec.files =
Dir.glob("{{lib,etc}/**/*,LICENSE,Gemfile,inspec-core.gemspec}") Dir.glob("{{lib,etc}/**/*,LICENSE,Chef-EULA,Gemfile,inspec-core.gemspec}")
.grep_v(%r{(?<!inspec-init/templates/profiles/)(aws|azure|gcp|alicloud)}) .grep_v(%r{(?<!inspec-init/templates/profiles/)(aws|azure|gcp|alicloud)})
.grep_v(%r{lib/plugins/.*/test/}) .grep_v(%r{lib/plugins/.*/test/})
.reject { |f| File.directory?(f) } .reject { |f| File.directory?(f) }

View file

@ -8,9 +8,17 @@ Gem::Specification.new do |spec|
spec.authors = ["Chef InSpec Team"] spec.authors = ["Chef InSpec Team"]
spec.email = ["inspec@chef.io"] spec.email = ["inspec@chef.io"]
spec.summary = "Infrastructure and compliance testing." spec.summary = "Infrastructure and compliance testing."
spec.description = "InSpec provides a framework for creating end-to-end infrastructure tests. You can use it for integration or even compliance testing. Create fully portable test profiles and use them in your workflow to ensure stability and security. Integrate InSpec in your change lifecycle for local testing, CI/CD, and deployment verification." spec.description = <<-EOT
InSpec provides a framework for creating end-to-end infrastructure tests. You can use it for integration or even compliance testing. Create fully portable test profiles and use them in your workflow to ensure stability and security. Integrate InSpec in your change lifecycle for local testing, CI/CD, and deployment verification.
Packaged distributions of Progress® Chef® products obtained from RubyGems are made available pursuant to the Progress Chef EULA at https://www.chef.io/end-user-license-agreement, unless there is an executed agreement in effect between you and Progress that covers the Progress Chef products ("Master Agreement"), in which case the Master Agreement shall govern.
Source code obtained from the Chef GitHub repository is made available under Apache-2.0, a copy of which is included.
EOT
spec.homepage = "https://github.com/inspec/inspec" spec.homepage = "https://github.com/inspec/inspec"
spec.license = "Apache-2.0" spec.license = "LicenseRef-Chef-EULA"
spec.require_paths = ["lib"] spec.require_paths = ["lib"]
spec.required_ruby_version = ">= 2.7" spec.required_ruby_version = ">= 2.7"