From c9050309b49dc80d3ad67fd846b9569508d9cb00 Mon Sep 17 00:00:00 2001 From: marcobelligoli Date: Fri, 8 May 2026 12:08:35 +0200 Subject: [PATCH] Add Contributor License Agreement (CLA) and update repository references --- .github/workflows/prs.yml | 42 ++++++++++++++ CLA.md | 58 +++++++++++++++++++ CONTRIBUTING.md | 2 +- README.md | 2 +- .../src/main/asciidoc/rest-store.adoc | 16 ++--- .../src/main/asciidoc/jpaversions.adoc | 12 ++-- 6 files changed, 116 insertions(+), 16 deletions(-) create mode 100644 CLA.md diff --git a/.github/workflows/prs.yml b/.github/workflows/prs.yml index 33e0c4e09..b1527a45e 100644 --- a/.github/workflows/prs.yml +++ b/.github/workflows/prs.yml @@ -3,11 +3,52 @@ name: PR Validation on: pull_request: branches: [ main ] + pull_request_target: + types: [opened, closed, synchronize] + issue_comment: + types: [created] + +# explicitly configure permissions, in case your GITHUB_TOKEN workflow permissions are set to read-only in repository settings +permissions: + actions: write + contents: write # this can be 'read' if the signatures are in remote repository + pull-requests: write + statuses: write jobs: + CLAAssistant: + runs-on: ubuntu-latest + steps: + - name: "CLA Assistant" + if: (github.event.comment.body == 'recheck' || github.event.comment.body == 'I have read the CLA Document and I hereby sign the CLA') || github.event_name == 'pull_request_target' + uses: contributor-assistant/github-action@v2.6.1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + # the below token should have repo scope and must be manually added by you in the repository's secret + # This token is required only if you have configured to store the signatures in a remote repository/organization + # PERSONAL_ACCESS_TOKEN: ${{ secrets.PERSONAL_ACCESS_TOKEN }} + with: + path-to-signatures: 'signatures/version1/cla.json' + path-to-document: 'https://github.com/${{ github.repository }}/blob/main/CLA.md' # e.g. a CLA or a DCO document + # branch should not be protected + branch: 'main' + allowlist: dependabot[bot],luca86r,marcobelligoli,RuudGianesini,springcontent-support-intesys + + # the followings are the optional inputs - If the optional inputs are not given, then default values will be taken + #remote-organization-name: enter the remote organization name where the signatures should be stored (Default is storing the signatures in the same repository) + #remote-repository-name: enter the remote repository name where the signatures should be stored (Default is storing the signatures in the same repository) + create-file-commit-message: 'Creating file for storing CLA Signatures' + signed-commit-message: '$contributorName has signed the CLA in $owner/$repo#$pullRequestNo' + #custom-notsigned-prcomment: 'pull request comment with Introductory message to ask new contributors to sign' + #custom-pr-sign-comment: 'The signature to be committed in order to sign the CLA' + #custom-allsigned-prcomment: 'pull request comment when all contributors has signed, defaults to **CLA Assistant Lite bot** All Contributors have signed the CLA.' + #lock-pullrequest-aftermerge: false - if you don't want this bot to automatically lock the pull request after merging (default - true) + #use-dco-flag: true - If you are using DCO instead of CLA + build: runs-on: ubuntu-latest + if: github.event_name == 'pull_request' outputs: spring_content_version: ${{ steps.build.outputs.spring_content_version }} steps: @@ -43,6 +84,7 @@ jobs: validate-with-gettingstarteds: runs-on: ubuntu-latest needs: build + if: github.event_name == 'pull_request' steps: - name: Set up JDK 17 uses: actions/setup-java@v1 diff --git a/CLA.md b/CLA.md new file mode 100644 index 000000000..7bde9c1da --- /dev/null +++ b/CLA.md @@ -0,0 +1,58 @@ +Individual Contributor License Agreement In order to clarify the intellectual property license granted with Contributions (as defined below) from any person or +entity, the authors of Spring Content (“Authors”) must have a Contributor License Agreement (“ICLA” or “Agreement”) on file that has been signed by each +Contributor (as defined below), indicating agreement to the license terms below. This license is for your protection as a Contributor as well as for the +protection of the Authors and its users; it does not change your rights to use your own Contributions for any other purpose. + +To agree to this ICLA, please read this document carefully, complete and submit. Be sure to keep a copy for your records. + +In consideration of the opportunity to participate in the community of contributors to the Authors projects, You accept and agree to the following terms and +conditions for Your present and future Contributions submitted to Spring Content. Except for the license granted herein to the Authors and recipients of +software distributed by the Authors, You reserve all right, title, and interest in and to Your Contributions. + +Definitions. “You” (or “Your”) shall mean the copyright owner or legal entity authorized by the copyright owner that is making this Agreement to the Authors. +For legal entities, the entity making a Contribution and all other entities that control, are controlled by, or are under common control with that entity are +considered to be a single Contributor. For the purposes of this definition, “control” means (i) the power, direct or indirect, to cause the direction or +management or such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial +ownership of such entity. + +“Contribution” shall mean any original work of authorship, including any modifications, or additions to an existing work, that is intentionally submitted by You +to the Authors for inclusion in, or documentation of, any of the projects owned or managed by the Authors (the “Project”). For the purposes of this definition, +“submitted” means any form of electronic, verbal, or written communication sent to the Authors or representatives, including but not limited to communication on +electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Authors for the purpose of +discussing and improving the Project, but excluding communication that is conspicuously marked or otherwise designated in writing by You as “Not a +Contribution.” + +Grant of Copyright License. Subject to the terms and conditions of this Agreement, You hereby grant to the Authors and to recipients of software distributed by +the Authors a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly +display, publicly perform, sublicense, and distribute Your Contributions and such derivative works. + +Grant of Patent License. Subject to the terms and conditions of this Agreement, You hereby grant to the Authors and to recipients of software distributed by the +Authors a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section), patent license to make, have made, use, +offer to sell, sell, import, and otherwise transfer the Project, where such license applies only to those patent claims licensable by You that are necessarily +infringed by Your Contribution(s) alone or by combination of Your Contribution(s) with the Project to which such Contribution(s) was submitted. If any entity +institutes patent litigation against You or any other entity (including a cross-claim or counterclaim in a lawsuit) alleging that your Contribution, or the +Project to which you have contributed, constitutes direct or contributory patent infringement, then any patent licenses granted to that entity under this +Agreement for that Contribution or Project shall terminate as of the date such litigation is filed. + +You represent that you are legally entitled to grant the above license. If your employer(s) has rights to intellectual property that you create that includes +your Contributions, you represent that you have received permission to make Contributions on behalf of that employer, that your employer has waived such rights +for your Contributions to the Authors, or that your employer has executed a separate Corporate CLA with the Authors. + +You represent that each of Your Contributions is Your original creation (see section 7 for submissions on behalf of others). You represent that Your +Contribution submissions include complete details of any third-party license or other restriction (including, but not limited to, related patents and +trademarks) of which you are personally aware and which are associated with any part of Your Contributions. + +You are not expected to provide support for Your Contributions, except to the extent You desire to provide support. You may provide support for free, for a fee, +or not at all. Unless required by applicable law or agreed to in writing, You provide Your Contributions on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS +OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR +A PARTICULAR PURPOSE. + +Should You wish to submit work that is not Your original creation, You may submit it to the Authors separately from any Contribution, identifying the complete +details of its source and of any license or other restriction (including, but not limited to, related patents, trademarks, and license agreements) of which you +are personally aware, and conspicuously marking the work as “Submitted on behalf of a third-party: [named here]”. + +You agree to notify the Authors of any facts or circumstances of which you become aware that would make these representations inaccurate in any respect. + +This Agreement is governed by the laws of the State of California, without regard to its choice of law provisions, and by the laws of the United States. This +Agreement sets forth the entire understanding and agreement between the parties, and supersedes any previous communications, representations or agreements, +whether oral or written, regarding the subject matter herein. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index fbc315fc3..a0ca17038 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -22,7 +22,7 @@ vulnerabilities using GitHub issues, instead report it directly to the Authors v ## Sign the Contributor License Agreement Before we accept a non-trivial patch or pull request we will need you to -[sign the Contributor License Agreement](https://cla-assistant.io/paulcwarren/spring-content). +[sign the Contributor License Agreement](CLA.md). Signing the contributor's agreement does not grant anyone commit rights to the main repository, but it does mean that we can accept your contributions, and you will get an author credit if we do. Active contributors might be asked to join the core team, and diff --git a/README.md b/README.md index 3d8237888..7970c2a89 100644 --- a/README.md +++ b/README.md @@ -56,7 +56,7 @@ If you want to build with the regular `mvn` command, you will need [Maven v3.2.1 or above](https://maven.apache.org/run-maven/index.html). _Also see [CONTRIBUTING.md](CONTRIBUTING.md) if you wish to submit pull requests, -and in particular please fill out the [Contributor's License Agreement](https://cla-assistant.io/paulcwarren/spring-content) before your first change, however trivial._ +and in particular please fill out the [Contributor's License Agreement](CLA.md) before your first change, however trivial._ #### Building reference documentation diff --git a/spring-content-rest/src/main/asciidoc/rest-store.adoc b/spring-content-rest/src/main/asciidoc/rest-store.adoc index ae50d1bf6..a0d58843b 100644 --- a/spring-content-rest/src/main/asciidoc/rest-store.adoc +++ b/spring-content-rest/src/main/asciidoc/rest-store.adoc @@ -6,12 +6,12 @@ Spring Content REST builds on top of Spring Content stores and automatically exp Spring Content REST officially supports: -- https://github.com/paulcwarren/spring-content/spring-content-fs[Spring Content Filesystem] -- https://github.com/paulcwarren/spring-content/spring-content-s3[Spring Content S3] -- https://github.com/paulcwarren/spring-content/spring-content-mongo[Spring Content Mongo] -- https://github.com/paulcwarren/spring-content/spring-content-jpa[Spring Content JPA] -- https://github.com/paulcwarren/spring-content/spring-content-gcs[Spring Content GCS] -- https://github.com/paulcwarren/spring-content/spring-content-azure-storage[Spring Content Azure Storage] +- https://github.com/intesys/spring-content/spring-content-fs[Spring Content Filesystem] +- https://github.com/intesys/spring-content/spring-content-s3[Spring Content S3] +- https://github.com/intesys/spring-content/spring-content-mongo[Spring Content Mongo] +- https://github.com/intesys/spring-content/spring-content-jpa[Spring Content JPA] +- https://github.com/intesys/spring-content/spring-content-gcs[Spring Content GCS] +- https://github.com/intesys/spring-content/spring-content-azure-storage[Spring Content Azure Storage] = Getting Started @@ -49,7 +49,7 @@ The simplest way to get to started is if you are building a Spring Boot applicat ---- dependencies { ... - compile("com.github.paulcwarren:spring-content-rest-boot-starter:${version}") + compile("it.intesys:spring-content-rest-boot-starter:${version}") ... } ---- @@ -82,7 +82,7 @@ To add Spring Content REST to a Gradle-based project, add the spring-content-res ---- dependencies { ... - compile("com.github.paulcwarren:spring-content-rest:${version}") + compile("it.intesys:spring-content-rest:${version}") ... } ---- diff --git a/spring-versions-jpa/src/main/asciidoc/jpaversions.adoc b/spring-versions-jpa/src/main/asciidoc/jpaversions.adoc index 000c36377..21b3b1d18 100644 --- a/spring-versions-jpa/src/main/asciidoc/jpaversions.adoc +++ b/spring-versions-jpa/src/main/asciidoc/jpaversions.adoc @@ -5,8 +5,8 @@ module provides these capabilities. Spring Versions JPA can be used with the following storage modules: -- https://github.com/paulcwarren/spring-content/spring-content-fs[Spring Content Filesystem] -- https://github.com/paulcwarren/spring-content/spring-content-s3[Spring Content S3] +- https://github.com/intesys/spring-content/spring-content-fs[Spring Content Filesystem] +- https://github.com/intesys/spring-content/spring-content-s3[Spring Content S3] = Getting Started @@ -15,7 +15,7 @@ Spring Versions JPA can be used with the following storage modules: Spring Versions are enhancements to Spring Data that extend the existing optimistic locking semantics of Entities to any associated Spring Content Resources and also adds user-facing pessimistic locking and versioning semantics to Entities and their Content through a new `LockingAndVersioningRepository` interface defined in the base module -https://github.com/paulcwarren/spring-content/spring-versions-jpa[Spring Version Commons]. +https://github.com/intesys/spring-content/spring-versions-jpa[Spring Version Commons]. Spring Versions JPA is the JPA-based implementation of these enhancements. @@ -30,7 +30,7 @@ with a Spring Boot application. Add the `spring-versions-jpa-boot-starter` to t ---- dependencies { ... - compile("com.github.paulcwarren:spring-versions-jpa-boot-starter:${version}") + compile("it.intesys:spring-versions-jpa-boot-starter:${version}") ... } ---- @@ -63,7 +63,7 @@ Spring Versions JPA to a non-Spring Boot project, add the `spring-versions-jpa` ---- dependencies { ... - compile("com.github.paulcwarren:spring-versions-jpa:${version}") + compile("it.intesys:spring-versions-jpa:${version}") ... } ---- @@ -131,7 +131,7 @@ public class LockingAndVersioningConfig { ==== IMPORTANT: This step is unnecessary if you are using Spring Boot as it will automatically enable Spring Versions JPA -when you place `com.github.paulcwarren:spring-versions-jpa-boot-starter` on your application's classpath and your application +when you place `it.intesys:spring-versions-jpa-boot-starter` on your application's classpath and your application is annotated as a `@SpringBootApplication`. Configure the Spring Content Storage module by adding the package `org.springframework.versions` to your