diff --git a/MAINTAINERS.md b/MAINTAINERS.md new file mode 100644 index 00000000..425821f5 --- /dev/null +++ b/MAINTAINERS.md @@ -0,0 +1,56 @@ +# Guide for maintainers of Jakarta Validation Specification + +This guide is intended for maintainers of Jakarta Validation, +i.e. anybody with direct push access to the git repository. + +## Releasing + +Release of a new Jakarta Validation version should be coordinated across the following repositories: + +- https://github.com/jakartaee/validation +- https://github.com/jakartaee/validation-spec +- https://github.com/jakartaee/validation-tck + +### Jakarta Validation API release + +This one **must** go first. The release job for this repository builds and publishes the Jakarta Validation API artifacts +to Maven Central. This job also updates and tags the repository. + +* Go to [Jakarta Validation API Release job](https://ci.eclipse.org/validation/view/Jakarta%20Validation%20API/job/jakarta-validation-api-publish-release/) +* Pick the branch from which you are planing to perform a release. + - Run the `Build with Parameters` and fill out the form + - Publishing to Maven Central is automatic, so no extra steps are required at the moment. + +### Jakarta Validation Spec + +Specification **must** be "released" next. Release job for this repository does not actually publish the spec to the site +it only generated the build artifacts that have to be pulled locally and used to create corresponding pull requests. +This job also updates and tags the repository. + +* Update the changelog and what's new specification section first. +* Go to [Jakarta Validation Specification Release job](https://ci.eclipse.org/validation/view/Jakarta%20Validation%20Specification/job/jakarta-validation-spec-publish-release/) +* Pick the branch from which you are planing to perform a release. + - Run the `Build with Parameters` and fill out the form + - Once the build is complete, download the generated artifacts + +### Jakarta Validation TCK + +Jakarta Validation TCK is next on the list. The release job for this repository builds and publishes the Jakarta Validation TCK artifacts +to Maven Central, uploads the distribution packages to Eclipse downloads server. +This job also updates and tags the repository. + +* Update Jakarta Validation API version in the POM dependencies +* Update the audit.xml generated by the specification release. +* Go to [Jakarta Validation TCK Release job](https://ci.eclipse.org/validation/view/Jakarta%20Validation%20TCK/job/jakarta-validation-tck-publish-release/) +* Pick the branch from which you are planing to perform a release. + - Run the `Build with Parameters` and fill out the form + - Publishing to Maven Central is automatic, so no extra steps are required at the moment. + +### Jakarta Specifications update + +The final step is to update the [specification repository](https://github.com/jakartaee/specifications). + +* Create a pull request with the content generated by the specification release (e.g. https://github.com/jakartaee/specifications/pull/874) +* Make sure to update the index file to point to the new versions of downloadable TCK bundles +* Optionally, if the XSDs were updated or if it is the first release in the series, create a pull request to update the XSD +following the instructions provided at https://jakartaee.github.io/platform/publish-xml-schemas