You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by Olivier Lamy <ol...@gmail.com> on 2021/10/14 23:45:22 UTC

Re: [maven-gh-actions-shared] branch main updated: first workflow

We had a discussion on slack about having a first build such as only
ubuntu/jdk1,8 before running all the matrix and holding a lot of nodes from
the Apache org..
This PR definitely does not do this! So I don't understand why this has
been merged!
Remember (as far I understand) nodes are shared between all projects from
Apache org.
There is no need to hold a lot of nodes if we are sure it fail (especially
as Apache have a lot projects using gh-actions)

On Fri, 15 Oct 2021 at 07:52, <sl...@apache.org> wrote:

> This is an automated email from the ASF dual-hosted git repository.
>
> slachiewicz pushed a commit to branch main
> in repository
> https://gitbox.apache.org/repos/asf/maven-gh-actions-shared.git
>
>
> The following commit(s) were added to refs/heads/main by this push:
>      new eee837a  first workflow
> eee837a is described below
>
> commit eee837abbc62df4e1097841b7cec8c5db6b30e2a
> Author: Slawomir Jaranowski <s....@gmail.com>
> AuthorDate: Thu Oct 14 22:41:33 2021 +0200
>
>     first workflow
> ---
>  .github/workflows/maven-verify-with-its.yml |  67 +++++++++
>  .gitignore                                  |   1 +
>  LICENSE                                     | 202
> ++++++++++++++++++++++++++++
>  README.md                                   |  43 +++++-
>  4 files changed, 312 insertions(+), 1 deletion(-)
>
> diff --git a/.github/workflows/maven-verify-with-its.yml
> b/.github/workflows/maven-verify-with-its.yml
> new file mode 100644
> index 0000000..a24464d
> --- /dev/null
> +++ b/.github/workflows/maven-verify-with-its.yml
> @@ -0,0 +1,67 @@
> +# Licensed to the Apache Software Foundation (ASF) under one
> +# or more contributor license agreements.  See the NOTICE file
> +# distributed with this work for additional information
> +# regarding copyright ownership.  The ASF licenses this file
> +# to you under the Apache License, Version 2.0 (the
> +# "License"); you may not use this file except in compliance
> +# with the License.  You may obtain a copy of the License at
> +#
> +#       http://www.apache.org/licenses/LICENSE-2.0
> +#
> +# Unless required by applicable law or agreed to in writing,
> +# software distributed under the License is distributed on an
> +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
> +# KIND, either express or implied.  See the License for the
> +# specific language governing permissions and limitations
> +# under the License.
> +
> +name: Verify
> +
> +on:
> +  workflow_call:
> +    inputs:
> +      os-matrix:
> +        description: 'os matrix as json array'
> +        default: '[ "ubuntu-latest", "windows-latest", "macOS-latest" ]'
> +        type: string
> +
> +      jdk-matrix:
> +        description: 'jdk matrix as json array'
> +        default: '[ "8", "11", "17" ]'
> +        type: string
> +
> +      matrix-exclude:
> +        description: 'exclude for matrix as json'
> +        default: '[]'
> +        type: string
> +
> +jobs:
> +
> +  verify:
> +    name: ${{ matrix.os }} jdk-${{ matrix.jdk }}
> +
> +    runs-on: ${{ matrix.os }}
> +
> +    strategy:
> +      fail-fast: true
> +      matrix:
> +        os:       ${{ fromJSON( inputs.os-matrix ) }}
> +        jdk:      ${{ fromJSON( inputs.jdk-matrix ) }}
> +        exclude:  ${{ fromJSON( inputs.matrix-exclude ) }}
> +
> +    steps:
> +      - name: Checkout
> +        uses: actions/checkout@v2.3.4
> +
> +      - name: Set up JDK
> +        uses: actions/setup-java@v2.3.1
> +        with:
> +          java-version: ${{ matrix.jdk }}
> +          distribution: 'temurin'
> +          cache: 'maven'
> +
> +      - name: Build with Maven
> +        run: mvn --errors --batch-mode --show-version -P run-its
> -D"invoker.streamLogsOnFailures" verify
> +
> +      - name: Build Maven Site
> +        run: mvn --errors --batch-mode --show-version site
> diff --git a/.gitignore b/.gitignore
> new file mode 100644
> index 0000000..485dee6
> --- /dev/null
> +++ b/.gitignore
> @@ -0,0 +1 @@
> +.idea
> diff --git a/LICENSE b/LICENSE
> new file mode 100644
> index 0000000..d645695
> --- /dev/null
> +++ b/LICENSE
> @@ -0,0 +1,202 @@
> +
> +                                 Apache License
> +                           Version 2.0, January 2004
> +                        http://www.apache.org/licenses/
> +
> +   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
> +
> +   1. Definitions.
> +
> +      "License" shall mean the terms and conditions for use, reproduction,
> +      and distribution as defined by Sections 1 through 9 of this
> document.
> +
> +      "Licensor" shall mean the copyright owner or entity authorized by
> +      the copyright owner that is granting the License.
> +
> +      "Legal Entity" shall mean the union of the acting entity and all
> +      other entities that control, are controlled by, or are under common
> +      control with that entity. For the purposes of this definition,
> +      "control" means (i) the power, direct or indirect, to cause the
> +      direction or management of 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.
> +
> +      "You" (or "Your") shall mean an individual or Legal Entity
> +      exercising permissions granted by this License.
> +
> +      "Source" form shall mean the preferred form for making
> modifications,
> +      including but not limited to software source code, documentation
> +      source, and configuration files.
> +
> +      "Object" form shall mean any form resulting from mechanical
> +      transformation or translation of a Source form, including but
> +      not limited to compiled object code, generated documentation,
> +      and conversions to other media types.
> +
> +      "Work" shall mean the work of authorship, whether in Source or
> +      Object form, made available under the License, as indicated by a
> +      copyright notice that is included in or attached to the work
> +      (an example is provided in the Appendix below).
> +
> +      "Derivative Works" shall mean any work, whether in Source or Object
> +      form, that is based on (or derived from) the Work and for which the
> +      editorial revisions, annotations, elaborations, or other
> modifications
> +      represent, as a whole, an original work of authorship. For the
> purposes
> +      of this License, Derivative Works shall not include works that
> remain
> +      separable from, or merely link (or bind by name) to the interfaces
> of,
> +      the Work and Derivative Works thereof.
> +
> +      "Contribution" shall mean any work of authorship, including
> +      the original version of the Work and any modifications or additions
> +      to that Work or Derivative Works thereof, that is intentionally
> +      submitted to Licensor for inclusion in the Work by the copyright
> owner
> +      or by an individual or Legal Entity authorized to submit on behalf
> of
> +      the copyright owner. For the purposes of this definition,
> "submitted"
> +      means any form of electronic, verbal, or written communication sent
> +      to the Licensor or its 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
> +      Licensor for the purpose of discussing and improving the Work, but
> +      excluding communication that is conspicuously marked or otherwise
> +      designated in writing by the copyright owner as "Not a
> Contribution."
> +
> +      "Contributor" shall mean Licensor and any individual or Legal Entity
> +      on behalf of whom a Contribution has been received by Licensor and
> +      subsequently incorporated within the Work.
> +
> +   2. Grant of Copyright License. Subject to the terms and conditions of
> +      this License, each Contributor hereby grants to You 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 the
> +      Work and such Derivative Works in Source or Object form.
> +
> +   3. Grant of Patent License. Subject to the terms and conditions of
> +      this License, each Contributor hereby grants to You 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 Work,
> +      where such license applies only to those patent claims licensable
> +      by such Contributor that are necessarily infringed by their
> +      Contribution(s) alone or by combination of their Contribution(s)
> +      with the Work to which such Contribution(s) was submitted. If You
> +      institute patent litigation against any entity (including a
> +      cross-claim or counterclaim in a lawsuit) alleging that the Work
> +      or a Contribution incorporated within the Work constitutes direct
> +      or contributory patent infringement, then any patent licenses
> +      granted to You under this License for that Work shall terminate
> +      as of the date such litigation is filed.
> +
> +   4. Redistribution. You may reproduce and distribute copies of the
> +      Work or Derivative Works thereof in any medium, with or without
> +      modifications, and in Source or Object form, provided that You
> +      meet the following conditions:
> +
> +      (a) You must give any other recipients of the Work or
> +          Derivative Works a copy of this License; and
> +
> +      (b) You must cause any modified files to carry prominent notices
> +          stating that You changed the files; and
> +
> +      (c) You must retain, in the Source form of any Derivative Works
> +          that You distribute, all copyright, patent, trademark, and
> +          attribution notices from the Source form of the Work,
> +          excluding those notices that do not pertain to any part of
> +          the Derivative Works; and
> +
> +      (d) If the Work includes a "NOTICE" text file as part of its
> +          distribution, then any Derivative Works that You distribute must
> +          include a readable copy of the attribution notices contained
> +          within such NOTICE file, excluding those notices that do not
> +          pertain to any part of the Derivative Works, in at least one
> +          of the following places: within a NOTICE text file distributed
> +          as part of the Derivative Works; within the Source form or
> +          documentation, if provided along with the Derivative Works; or,
> +          within a display generated by the Derivative Works, if and
> +          wherever such third-party notices normally appear. The contents
> +          of the NOTICE file are for informational purposes only and
> +          do not modify the License. You may add Your own attribution
> +          notices within Derivative Works that You distribute, alongside
> +          or as an addendum to the NOTICE text from the Work, provided
> +          that such additional attribution notices cannot be construed
> +          as modifying the License.
> +
> +      You may add Your own copyright statement to Your modifications and
> +      may provide additional or different license terms and conditions
> +      for use, reproduction, or distribution of Your modifications, or
> +      for any such Derivative Works as a whole, provided Your use,
> +      reproduction, and distribution of the Work otherwise complies with
> +      the conditions stated in this License.
> +
> +   5. Submission of Contributions. Unless You explicitly state otherwise,
> +      any Contribution intentionally submitted for inclusion in the Work
> +      by You to the Licensor shall be under the terms and conditions of
> +      this License, without any additional terms or conditions.
> +      Notwithstanding the above, nothing herein shall supersede or modify
> +      the terms of any separate license agreement you may have executed
> +      with Licensor regarding such Contributions.
> +
> +   6. Trademarks. This License does not grant permission to use the trade
> +      names, trademarks, service marks, or product names of the Licensor,
> +      except as required for reasonable and customary use in describing
> the
> +      origin of the Work and reproducing the content of the NOTICE file.
> +
> +   7. Disclaimer of Warranty. Unless required by applicable law or
> +      agreed to in writing, Licensor provides the Work (and each
> +      Contributor provides its 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. You are solely responsible for determining the
> +      appropriateness of using or redistributing the Work and assume any
> +      risks associated with Your exercise of permissions under this
> License.
> +
> +   8. Limitation of Liability. In no event and under no legal theory,
> +      whether in tort (including negligence), contract, or otherwise,
> +      unless required by applicable law (such as deliberate and grossly
> +      negligent acts) or agreed to in writing, shall any Contributor be
> +      liable to You for damages, including any direct, indirect, special,
> +      incidental, or consequential damages of any character arising as a
> +      result of this License or out of the use or inability to use the
> +      Work (including but not limited to damages for loss of goodwill,
> +      work stoppage, computer failure or malfunction, or any and all
> +      other commercial damages or losses), even if such Contributor
> +      has been advised of the possibility of such damages.
> +
> +   9. Accepting Warranty or Additional Liability. While redistributing
> +      the Work or Derivative Works thereof, You may choose to offer,
> +      and charge a fee for, acceptance of support, warranty, indemnity,
> +      or other liability obligations and/or rights consistent with this
> +      License. However, in accepting such obligations, You may act only
> +      on Your own behalf and on Your sole responsibility, not on behalf
> +      of any other Contributor, and only if You agree to indemnify,
> +      defend, and hold each Contributor harmless for any liability
> +      incurred by, or claims asserted against, such Contributor by reason
> +      of your accepting any such warranty or additional liability.
> +
> +   END OF TERMS AND CONDITIONS
> +
> +   APPENDIX: How to apply the Apache License to your work.
> +
> +      To apply the Apache License to your work, attach the following
> +      boilerplate notice, with the fields enclosed by brackets "[]"
> +      replaced with your own identifying information. (Don't include
> +      the brackets!)  The text should be enclosed in the appropriate
> +      comment syntax for the file format. We also recommend that a
> +      file or class name and description of purpose be included on the
> +      same "printed page" as the copyright notice for easier
> +      identification within third-party archives.
> +
> +   Copyright [yyyy] [name of copyright owner]
> +
> +   Licensed under the Apache License, Version 2.0 (the "License");
> +   you may not use this file except in compliance with the License.
> +   You may obtain a copy of the License at
> +
> +       http://www.apache.org/licenses/LICENSE-2.0
> +
> +   Unless required by applicable law or agreed to in writing, software
> +   distributed under the License is distributed on an "AS IS" BASIS,
> +   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
> implied.
> +   See the License for the specific language governing permissions and
> +   limitations under the License.
> diff --git a/README.md b/README.md
> index 39fc18c..dd50b5e 100644
> --- a/README.md
> +++ b/README.md
> @@ -1 +1,42 @@
> -# maven-gh-actions-shared
> +# Apache Maven shared GitHub Actions
> +
> +
> +# Usage
> +
> +Create GitHub workflow in project with content:
> +
> +```yaml
> +name: Verify
> +
> +on:
> +  push:
> +    branches-ignore:
> +      - dependabot/**
> +
> +  pull_request:
> +
> +jobs:
> +  build:
> +    name: Verify
> +    uses:
> apache/maven-gh-actions-shared/.github/workflows/maven-verify-with-its.yml@main
> +
> +```
> +
> +Excludes from build matrix:
> +
> +```yaml
> +...
> +    uses:
> apache/maven-gh-actions-shared/.github/workflows/maven-verify-with-its.yml@main
> +    with:
> +      matrix-exclude: >
> +        [
> +          {"jdk": "8"},   # exclude jdk 8 from all builds
> +          {"os": "windows-latest"}, # exclude windows from all builds
> +          {"jdk": "8", "os": "windows-latest"} # exclude jkd 8 on windows
> +        ]
> +```
> +
> +# Resources
> +
> +- [Workflow syntax](
> https://docs.github.com/en/actions/learn-github-actions/workflow-syntax-for-github-actions
> )
> +- [Reusing workflows](
> https://docs.github.com/en/actions/learn-github-actions/reusing-workflows)
>


-- 
Olivier Lamy
http://twitter.com/olamy | http://linkedin.com/in/olamy

Re: [maven-gh-actions-shared] branch main updated: first workflow

Posted by Benjamin Marwell <bm...@apache.org>.
+1, we also do this in Apache Shiro [1]
and the aspectj-maven-plugin (mojohaus) [2].

We don't reuse workflows yet, but what you have is just great!

Thanks!
- Ben

[1]: https://github.com/apache/shiro/blob/df2f5481260bd778226473a658d237c047b7e840/.github/workflows/maven.yml
[2]: https://github.com/mojohaus/aspectj-maven-plugin/blob/e19704cc40017ac69408e007c423f4ddbe865bca/.github/workflows/maven.yml


Am Fr., 15. Okt. 2021 um 01:45 Uhr schrieb Olivier Lamy <ol...@gmail.com>:
>
> We had a discussion on slack about having a first build such as only
> ubuntu/jdk1,8 before running all the matrix and holding a lot of nodes from
> the Apache org..
> This PR definitely does not do this! So I don't understand why this has
> been merged!
> Remember (as far I understand) nodes are shared between all projects from
> Apache org.
> There is no need to hold a lot of nodes if we are sure it fail (especially
> as Apache have a lot projects using gh-actions)
>
> On Fri, 15 Oct 2021 at 07:52, <sl...@apache.org> wrote:
>
> > This is an automated email from the ASF dual-hosted git repository.
> >
> > slachiewicz pushed a commit to branch main
> > in repository
> > https://gitbox.apache.org/repos/asf/maven-gh-actions-shared.git
> >
> >
> > The following commit(s) were added to refs/heads/main by this push:
> >      new eee837a  first workflow
> > eee837a is described below
> >
> > commit eee837abbc62df4e1097841b7cec8c5db6b30e2a
> > Author: Slawomir Jaranowski <s....@gmail.com>
> > AuthorDate: Thu Oct 14 22:41:33 2021 +0200
> >
> >     first workflow
> > ---
> >  .github/workflows/maven-verify-with-its.yml |  67 +++++++++
> >  .gitignore                                  |   1 +
> >  LICENSE                                     | 202
> > ++++++++++++++++++++++++++++
> >  README.md                                   |  43 +++++-
> >  4 files changed, 312 insertions(+), 1 deletion(-)
> >
> > diff --git a/.github/workflows/maven-verify-with-its.yml
> > b/.github/workflows/maven-verify-with-its.yml
> > new file mode 100644
> > index 0000000..a24464d
> > --- /dev/null
> > +++ b/.github/workflows/maven-verify-with-its.yml
> > @@ -0,0 +1,67 @@
> > +# Licensed to the Apache Software Foundation (ASF) under one
> > +# or more contributor license agreements.  See the NOTICE file
> > +# distributed with this work for additional information
> > +# regarding copyright ownership.  The ASF licenses this file
> > +# to you under the Apache License, Version 2.0 (the
> > +# "License"); you may not use this file except in compliance
> > +# with the License.  You may obtain a copy of the License at
> > +#
> > +#       http://www.apache.org/licenses/LICENSE-2.0
> > +#
> > +# Unless required by applicable law or agreed to in writing,
> > +# software distributed under the License is distributed on an
> > +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
> > +# KIND, either express or implied.  See the License for the
> > +# specific language governing permissions and limitations
> > +# under the License.
> > +
> > +name: Verify
> > +
> > +on:
> > +  workflow_call:
> > +    inputs:
> > +      os-matrix:
> > +        description: 'os matrix as json array'
> > +        default: '[ "ubuntu-latest", "windows-latest", "macOS-latest" ]'
> > +        type: string
> > +
> > +      jdk-matrix:
> > +        description: 'jdk matrix as json array'
> > +        default: '[ "8", "11", "17" ]'
> > +        type: string
> > +
> > +      matrix-exclude:
> > +        description: 'exclude for matrix as json'
> > +        default: '[]'
> > +        type: string
> > +
> > +jobs:
> > +
> > +  verify:
> > +    name: ${{ matrix.os }} jdk-${{ matrix.jdk }}
> > +
> > +    runs-on: ${{ matrix.os }}
> > +
> > +    strategy:
> > +      fail-fast: true
> > +      matrix:
> > +        os:       ${{ fromJSON( inputs.os-matrix ) }}
> > +        jdk:      ${{ fromJSON( inputs.jdk-matrix ) }}
> > +        exclude:  ${{ fromJSON( inputs.matrix-exclude ) }}
> > +
> > +    steps:
> > +      - name: Checkout
> > +        uses: actions/checkout@v2.3.4
> > +
> > +      - name: Set up JDK
> > +        uses: actions/setup-java@v2.3.1
> > +        with:
> > +          java-version: ${{ matrix.jdk }}
> > +          distribution: 'temurin'
> > +          cache: 'maven'
> > +
> > +      - name: Build with Maven
> > +        run: mvn --errors --batch-mode --show-version -P run-its
> > -D"invoker.streamLogsOnFailures" verify
> > +
> > +      - name: Build Maven Site
> > +        run: mvn --errors --batch-mode --show-version site
> > diff --git a/.gitignore b/.gitignore
> > new file mode 100644
> > index 0000000..485dee6
> > --- /dev/null
> > +++ b/.gitignore
> > @@ -0,0 +1 @@
> > +.idea
> > diff --git a/LICENSE b/LICENSE
> > new file mode 100644
> > index 0000000..d645695
> > --- /dev/null
> > +++ b/LICENSE
> > @@ -0,0 +1,202 @@
> > +
> > +                                 Apache License
> > +                           Version 2.0, January 2004
> > +                        http://www.apache.org/licenses/
> > +
> > +   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
> > +
> > +   1. Definitions.
> > +
> > +      "License" shall mean the terms and conditions for use, reproduction,
> > +      and distribution as defined by Sections 1 through 9 of this
> > document.
> > +
> > +      "Licensor" shall mean the copyright owner or entity authorized by
> > +      the copyright owner that is granting the License.
> > +
> > +      "Legal Entity" shall mean the union of the acting entity and all
> > +      other entities that control, are controlled by, or are under common
> > +      control with that entity. For the purposes of this definition,
> > +      "control" means (i) the power, direct or indirect, to cause the
> > +      direction or management of 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.
> > +
> > +      "You" (or "Your") shall mean an individual or Legal Entity
> > +      exercising permissions granted by this License.
> > +
> > +      "Source" form shall mean the preferred form for making
> > modifications,
> > +      including but not limited to software source code, documentation
> > +      source, and configuration files.
> > +
> > +      "Object" form shall mean any form resulting from mechanical
> > +      transformation or translation of a Source form, including but
> > +      not limited to compiled object code, generated documentation,
> > +      and conversions to other media types.
> > +
> > +      "Work" shall mean the work of authorship, whether in Source or
> > +      Object form, made available under the License, as indicated by a
> > +      copyright notice that is included in or attached to the work
> > +      (an example is provided in the Appendix below).
> > +
> > +      "Derivative Works" shall mean any work, whether in Source or Object
> > +      form, that is based on (or derived from) the Work and for which the
> > +      editorial revisions, annotations, elaborations, or other
> > modifications
> > +      represent, as a whole, an original work of authorship. For the
> > purposes
> > +      of this License, Derivative Works shall not include works that
> > remain
> > +      separable from, or merely link (or bind by name) to the interfaces
> > of,
> > +      the Work and Derivative Works thereof.
> > +
> > +      "Contribution" shall mean any work of authorship, including
> > +      the original version of the Work and any modifications or additions
> > +      to that Work or Derivative Works thereof, that is intentionally
> > +      submitted to Licensor for inclusion in the Work by the copyright
> > owner
> > +      or by an individual or Legal Entity authorized to submit on behalf
> > of
> > +      the copyright owner. For the purposes of this definition,
> > "submitted"
> > +      means any form of electronic, verbal, or written communication sent
> > +      to the Licensor or its 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
> > +      Licensor for the purpose of discussing and improving the Work, but
> > +      excluding communication that is conspicuously marked or otherwise
> > +      designated in writing by the copyright owner as "Not a
> > Contribution."
> > +
> > +      "Contributor" shall mean Licensor and any individual or Legal Entity
> > +      on behalf of whom a Contribution has been received by Licensor and
> > +      subsequently incorporated within the Work.
> > +
> > +   2. Grant of Copyright License. Subject to the terms and conditions of
> > +      this License, each Contributor hereby grants to You 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 the
> > +      Work and such Derivative Works in Source or Object form.
> > +
> > +   3. Grant of Patent License. Subject to the terms and conditions of
> > +      this License, each Contributor hereby grants to You 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 Work,
> > +      where such license applies only to those patent claims licensable
> > +      by such Contributor that are necessarily infringed by their
> > +      Contribution(s) alone or by combination of their Contribution(s)
> > +      with the Work to which such Contribution(s) was submitted. If You
> > +      institute patent litigation against any entity (including a
> > +      cross-claim or counterclaim in a lawsuit) alleging that the Work
> > +      or a Contribution incorporated within the Work constitutes direct
> > +      or contributory patent infringement, then any patent licenses
> > +      granted to You under this License for that Work shall terminate
> > +      as of the date such litigation is filed.
> > +
> > +   4. Redistribution. You may reproduce and distribute copies of the
> > +      Work or Derivative Works thereof in any medium, with or without
> > +      modifications, and in Source or Object form, provided that You
> > +      meet the following conditions:
> > +
> > +      (a) You must give any other recipients of the Work or
> > +          Derivative Works a copy of this License; and
> > +
> > +      (b) You must cause any modified files to carry prominent notices
> > +          stating that You changed the files; and
> > +
> > +      (c) You must retain, in the Source form of any Derivative Works
> > +          that You distribute, all copyright, patent, trademark, and
> > +          attribution notices from the Source form of the Work,
> > +          excluding those notices that do not pertain to any part of
> > +          the Derivative Works; and
> > +
> > +      (d) If the Work includes a "NOTICE" text file as part of its
> > +          distribution, then any Derivative Works that You distribute must
> > +          include a readable copy of the attribution notices contained
> > +          within such NOTICE file, excluding those notices that do not
> > +          pertain to any part of the Derivative Works, in at least one
> > +          of the following places: within a NOTICE text file distributed
> > +          as part of the Derivative Works; within the Source form or
> > +          documentation, if provided along with the Derivative Works; or,
> > +          within a display generated by the Derivative Works, if and
> > +          wherever such third-party notices normally appear. The contents
> > +          of the NOTICE file are for informational purposes only and
> > +          do not modify the License. You may add Your own attribution
> > +          notices within Derivative Works that You distribute, alongside
> > +          or as an addendum to the NOTICE text from the Work, provided
> > +          that such additional attribution notices cannot be construed
> > +          as modifying the License.
> > +
> > +      You may add Your own copyright statement to Your modifications and
> > +      may provide additional or different license terms and conditions
> > +      for use, reproduction, or distribution of Your modifications, or
> > +      for any such Derivative Works as a whole, provided Your use,
> > +      reproduction, and distribution of the Work otherwise complies with
> > +      the conditions stated in this License.
> > +
> > +   5. Submission of Contributions. Unless You explicitly state otherwise,
> > +      any Contribution intentionally submitted for inclusion in the Work
> > +      by You to the Licensor shall be under the terms and conditions of
> > +      this License, without any additional terms or conditions.
> > +      Notwithstanding the above, nothing herein shall supersede or modify
> > +      the terms of any separate license agreement you may have executed
> > +      with Licensor regarding such Contributions.
> > +
> > +   6. Trademarks. This License does not grant permission to use the trade
> > +      names, trademarks, service marks, or product names of the Licensor,
> > +      except as required for reasonable and customary use in describing
> > the
> > +      origin of the Work and reproducing the content of the NOTICE file.
> > +
> > +   7. Disclaimer of Warranty. Unless required by applicable law or
> > +      agreed to in writing, Licensor provides the Work (and each
> > +      Contributor provides its 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. You are solely responsible for determining the
> > +      appropriateness of using or redistributing the Work and assume any
> > +      risks associated with Your exercise of permissions under this
> > License.
> > +
> > +   8. Limitation of Liability. In no event and under no legal theory,
> > +      whether in tort (including negligence), contract, or otherwise,
> > +      unless required by applicable law (such as deliberate and grossly
> > +      negligent acts) or agreed to in writing, shall any Contributor be
> > +      liable to You for damages, including any direct, indirect, special,
> > +      incidental, or consequential damages of any character arising as a
> > +      result of this License or out of the use or inability to use the
> > +      Work (including but not limited to damages for loss of goodwill,
> > +      work stoppage, computer failure or malfunction, or any and all
> > +      other commercial damages or losses), even if such Contributor
> > +      has been advised of the possibility of such damages.
> > +
> > +   9. Accepting Warranty or Additional Liability. While redistributing
> > +      the Work or Derivative Works thereof, You may choose to offer,
> > +      and charge a fee for, acceptance of support, warranty, indemnity,
> > +      or other liability obligations and/or rights consistent with this
> > +      License. However, in accepting such obligations, You may act only
> > +      on Your own behalf and on Your sole responsibility, not on behalf
> > +      of any other Contributor, and only if You agree to indemnify,
> > +      defend, and hold each Contributor harmless for any liability
> > +      incurred by, or claims asserted against, such Contributor by reason
> > +      of your accepting any such warranty or additional liability.
> > +
> > +   END OF TERMS AND CONDITIONS
> > +
> > +   APPENDIX: How to apply the Apache License to your work.
> > +
> > +      To apply the Apache License to your work, attach the following
> > +      boilerplate notice, with the fields enclosed by brackets "[]"
> > +      replaced with your own identifying information. (Don't include
> > +      the brackets!)  The text should be enclosed in the appropriate
> > +      comment syntax for the file format. We also recommend that a
> > +      file or class name and description of purpose be included on the
> > +      same "printed page" as the copyright notice for easier
> > +      identification within third-party archives.
> > +
> > +   Copyright [yyyy] [name of copyright owner]
> > +
> > +   Licensed under the Apache License, Version 2.0 (the "License");
> > +   you may not use this file except in compliance with the License.
> > +   You may obtain a copy of the License at
> > +
> > +       http://www.apache.org/licenses/LICENSE-2.0
> > +
> > +   Unless required by applicable law or agreed to in writing, software
> > +   distributed under the License is distributed on an "AS IS" BASIS,
> > +   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
> > implied.
> > +   See the License for the specific language governing permissions and
> > +   limitations under the License.
> > diff --git a/README.md b/README.md
> > index 39fc18c..dd50b5e 100644
> > --- a/README.md
> > +++ b/README.md
> > @@ -1 +1,42 @@
> > -# maven-gh-actions-shared
> > +# Apache Maven shared GitHub Actions
> > +
> > +
> > +# Usage
> > +
> > +Create GitHub workflow in project with content:
> > +
> > +```yaml
> > +name: Verify
> > +
> > +on:
> > +  push:
> > +    branches-ignore:
> > +      - dependabot/**
> > +
> > +  pull_request:
> > +
> > +jobs:
> > +  build:
> > +    name: Verify
> > +    uses:
> > apache/maven-gh-actions-shared/.github/workflows/maven-verify-with-its.yml@main
> > +
> > +```
> > +
> > +Excludes from build matrix:
> > +
> > +```yaml
> > +...
> > +    uses:
> > apache/maven-gh-actions-shared/.github/workflows/maven-verify-with-its.yml@main
> > +    with:
> > +      matrix-exclude: >
> > +        [
> > +          {"jdk": "8"},   # exclude jdk 8 from all builds
> > +          {"os": "windows-latest"}, # exclude windows from all builds
> > +          {"jdk": "8", "os": "windows-latest"} # exclude jkd 8 on windows
> > +        ]
> > +```
> > +
> > +# Resources
> > +
> > +- [Workflow syntax](
> > https://docs.github.com/en/actions/learn-github-actions/workflow-syntax-for-github-actions
> > )
> > +- [Reusing workflows](
> > https://docs.github.com/en/actions/learn-github-actions/reusing-workflows)
> >
>
>
> --
> Olivier Lamy
> http://twitter.com/olamy | http://linkedin.com/in/olamy

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org