This is an automated email from the ASF dual-hosted git repository.

hboutemy pushed a commit to branch gh
in repository https://gitbox.apache.org/repos/asf/maven-sources.git

commit d77eda3c4520b7faffb7b27f20d38a5d4fa92209
Author: HervĂ© Boutemy <[email protected]>
AuthorDate: Tue Nov 11 17:27:44 2025 +0100

    add script to generate gh.md
---
 gh.md          | 165 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 update_gh.java |  73 +++++++++++++++++++++++++
 2 files changed, 238 insertions(+)

diff --git a/gh.md b/gh.md
new file mode 100644
index 0000000..c6ddd18
--- /dev/null
+++ b/gh.md
@@ -0,0 +1,165 @@
+- site [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-site/master)](https://github.com/apache/maven-site/tree/master)
+- sources [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-sources/master)](https://github.com/apache/maven-sources/tree/master)
+
+# core
+- build-cache [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-build-cache-extension/master)](https://github.com/apache/maven-build-cache-extension/tree/master)
+- maven [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven/master)](https://github.com/apache/maven/tree/master)
+- mvnd [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-mvnd/master)](https://github.com/apache/maven-mvnd/tree/master)
+- resolver [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-resolver/master)](https://github.com/apache/maven-resolver/tree/master)
+- resolver-ant-tasks [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-resolver-ant-tasks/master)](https://github.com/apache/maven-resolver-ant-tasks/tree/master)
+- wrapper [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-wrapper/master)](https://github.com/apache/maven-wrapper/tree/master)
+
+# core/3.x
+- maven-3maven-3.9.x [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven/maven-3.9.x)](https://github.com/apache/maven/tree/maven-3.9.x)
+- mvnd-1mvnd-1.x [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-mvnd/mvnd-1.x)](https://github.com/apache/maven-mvnd/tree/mvnd-1.x)
+- resolver-1maven-resolver-1.9.x [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-resolver/maven-resolver-1.9.x)](https://github.com/apache/maven-resolver/tree/maven-resolver-1.9.x)
+- its-3maven-3.9.x [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-integration-testing/maven-3.9.x)](https://github.com/apache/maven-integration-testing/tree/maven-3.9.x)
+
+# plugins/core
+- maven-clean-pluginmaven-clean-plugin-3.x [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-clean-plugin/maven-clean-plugin-3.x)](https://github.com/apache/maven-clean-plugin/tree/maven-clean-plugin-3.x)
+- maven-compiler-pluginmaven-compiler-plugin-3.x [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-compiler-plugin/maven-compiler-plugin-3.x)](https://github.com/apache/maven-compiler-plugin/tree/maven-compiler-plugin-3.x)
+- maven-deploy-pluginmaven-deploy-plugin-3.x [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-deploy-plugin/maven-deploy-plugin-3.x)](https://github.com/apache/maven-deploy-plugin/tree/maven-deploy-plugin-3.x)
+- maven-install-pluginmaven-install-plugin-3.x [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-install-plugin/maven-install-plugin-3.x)](https://github.com/apache/maven-install-plugin/tree/maven-install-plugin-3.x)
+- maven-resources-pluginmaven-resources-plugin-3.x [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-resources-plugin/maven-resources-plugin-3.x)](https://github.com/apache/maven-resources-plugin/tree/maven-resources-plugin-3.x)
+- maven-site-pluginmaven-site-plugin-3.x [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-site-plugin/maven-site-plugin-3.x)](https://github.com/apache/maven-site-plugin/tree/maven-site-plugin-3.x)
+- surefire [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-surefire/master)](https://github.com/apache/maven-surefire/tree/master)
+- maven-verifier-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-verifier-plugin/master)](https://github.com/apache/maven-verifier-plugin/tree/master)
+
+# plugins/core-4
+- maven-clean-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-clean-plugin/master)](https://github.com/apache/maven-clean-plugin/tree/master)
+- maven-compiler-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-compiler-plugin/master)](https://github.com/apache/maven-compiler-plugin/tree/master)
+- maven-deploy-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-deploy-plugin/master)](https://github.com/apache/maven-deploy-plugin/tree/master)
+- maven-install-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-install-plugin/master)](https://github.com/apache/maven-install-plugin/tree/master)
+- maven-resources-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-resources-plugin/master)](https://github.com/apache/maven-resources-plugin/tree/master)
+- maven-site-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-site-plugin/master)](https://github.com/apache/maven-site-plugin/tree/master)
+
+# plugins/packaging
+- maven-ear-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-ear-plugin/master)](https://github.com/apache/maven-ear-plugin/tree/master)
+- maven-ejb-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-ejb-plugin/master)](https://github.com/apache/maven-ejb-plugin/tree/master)
+- maven-jar-pluginmaven-jar-plugin-3.x [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-jar-plugin/maven-jar-plugin-3.x)](https://github.com/apache/maven-jar-plugin/tree/maven-jar-plugin-3.x)
+- maven-rar-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-rar-plugin/master)](https://github.com/apache/maven-rar-plugin/tree/master)
+- maven-war-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-war-plugin/master)](https://github.com/apache/maven-war-plugin/tree/master)
+- maven-acr-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-acr-plugin/master)](https://github.com/apache/maven-acr-plugin/tree/master)
+- maven-shade-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-shade-plugin/master)](https://github.com/apache/maven-shade-plugin/tree/master)
+- maven-source-pluginmaven-source-plugin-3.x [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-source-plugin/maven-source-plugin-3.x)](https://github.com/apache/maven-source-plugin/tree/maven-source-plugin-3.x)
+- maven-jlink-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-jlink-plugin/master)](https://github.com/apache/maven-jlink-plugin/tree/master)
+- maven-jmod-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-jmod-plugin/master)](https://github.com/apache/maven-jmod-plugin/tree/master)
+
+# plugins/packaging-4
+- maven-jar-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-jar-plugin/master)](https://github.com/apache/maven-jar-plugin/tree/master)
+- maven-source-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-source-plugin/master)](https://github.com/apache/maven-source-plugin/tree/master)
+
+# plugins/reporting
+- maven-changelog-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-changelog-plugin/master)](https://github.com/apache/maven-changelog-plugin/tree/master)
+- maven-changes-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-changes-plugin/master)](https://github.com/apache/maven-changes-plugin/tree/master)
+- maven-checkstyle-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-checkstyle-plugin/master)](https://github.com/apache/maven-checkstyle-plugin/tree/master)
+- maven-doap-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-doap-plugin/master)](https://github.com/apache/maven-doap-plugin/tree/master)
+- maven-javadoc-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-javadoc-plugin/master)](https://github.com/apache/maven-javadoc-plugin/tree/master)
+- maven-jdeps-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-jdeps-plugin/master)](https://github.com/apache/maven-jdeps-plugin/tree/master)
+- jxr [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-jxr/master)](https://github.com/apache/maven-jxr/tree/master)
+- maven-pmd-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-pmd-plugin/master)](https://github.com/apache/maven-pmd-plugin/tree/master)
+- maven-project-info-reports-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-project-info-reports-plugin/master)](https://github.com/apache/maven-project-info-reports-plugin/tree/master)
+
+# plugins/tools
+- maven-antrun-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-antrun-plugin/master)](https://github.com/apache/maven-antrun-plugin/tree/master)
+- archetype [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-archetype/master)](https://github.com/apache/maven-archetype/tree/master)
+- maven-artifact-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-artifact-plugin/master)](https://github.com/apache/maven-artifact-plugin/tree/master)
+- maven-assembly-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-assembly-plugin/master)](https://github.com/apache/maven-assembly-plugin/tree/master)
+- maven-dependency-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-dependency-plugin/master)](https://github.com/apache/maven-dependency-plugin/tree/master)
+- enforcer [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-enforcer/master)](https://github.com/apache/maven-enforcer/tree/master)
+- maven-gpg-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-gpg-plugin/master)](https://github.com/apache/maven-gpg-plugin/tree/master)
+- maven-help-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-help-plugin/master)](https://github.com/apache/maven-help-plugin/tree/master)
+- maven-invoker-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-invoker-plugin/master)](https://github.com/apache/maven-invoker-plugin/tree/master)
+- maven-jarsigner-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-jarsigner-plugin/master)](https://github.com/apache/maven-jarsigner-plugin/tree/master)
+- maven-jdeprscan-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-jdeprscan-plugin/master)](https://github.com/apache/maven-jdeprscan-plugin/tree/master)
+- plugin-tools [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-plugin-tools/master)](https://github.com/apache/maven-plugin-tools/tree/master)
+- release [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-release/master)](https://github.com/apache/maven-release/tree/master)
+- maven-remote-resources-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-remote-resources-plugin/master)](https://github.com/apache/maven-remote-resources-plugin/tree/master)
+- scm [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-scm/master)](https://github.com/apache/maven-scm/tree/master)
+- maven-scm-publish-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-scm-publish-plugin/master)](https://github.com/apache/maven-scm-publish-plugin/tree/master)
+- maven-scripting-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-scripting-plugin/master)](https://github.com/apache/maven-scripting-plugin/tree/master)
+- maven-stage-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-stage-plugin/master)](https://github.com/apache/maven-stage-plugin/tree/master)
+- maven-toolchains-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-toolchains-plugin/master)](https://github.com/apache/maven-toolchains-plugin/tree/master)
+
+# shared
+- archivermaven-archiver-3.x [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-archiver/maven-archiver-3.x)](https://github.com/apache/maven-archiver/tree/maven-archiver-3.x)
+- common-artifact-filters [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-common-artifact-filters/master)](https://github.com/apache/maven-common-artifact-filters/tree/master)
+- dependency-analyzer [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-dependency-analyzer/master)](https://github.com/apache/maven-dependency-analyzer/tree/master)
+- dependency-tree [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-dependency-tree/master)](https://github.com/apache/maven-dependency-tree/tree/master)
+- file-management [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-file-management/master)](https://github.com/apache/maven-file-management/tree/master)
+- filteringmaven-filtering-3.x [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-filtering/maven-filtering-3.x)](https://github.com/apache/maven-filtering/tree/maven-filtering-3.x)
+- invoker [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-invoker/master)](https://github.com/apache/maven-invoker/tree/master)
+- jarsigner [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-jarsigner/master)](https://github.com/apache/maven-jarsigner/tree/master)
+- mapping [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-mapping/master)](https://github.com/apache/maven-mapping/tree/master)
+- reporting-api [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-reporting-api/master)](https://github.com/apache/maven-reporting-api/tree/master)
+- reporting-exec [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-reporting-exec/master)](https://github.com/apache/maven-reporting-exec/tree/master)
+- reporting-impl [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-reporting-impl/master)](https://github.com/apache/maven-reporting-impl/tree/master)
+- script-interpreter [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-script-interpreter/master)](https://github.com/apache/maven-script-interpreter/tree/master)
+- shared-incremental [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-shared-incremental/master)](https://github.com/apache/maven-shared-incremental/tree/master)
+- shared-io [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-shared-io/master)](https://github.com/apache/maven-shared-io/tree/master)
+- shared-jar [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-shared-jar/master)](https://github.com/apache/maven-shared-jar/tree/master)
+- shared-resources [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-shared-resources/master)](https://github.com/apache/maven-shared-resources/tree/master)
+- shared-utils [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-shared-utils/master)](https://github.com/apache/maven-shared-utils/tree/master)
+- verifier [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-verifier/master)](https://github.com/apache/maven-verifier/tree/master)
+
+# shared-4
+- archiver [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-archiver/master)](https://github.com/apache/maven-archiver/tree/master)
+- filtering [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-filtering/master)](https://github.com/apache/maven-filtering/tree/master)
+
+# doxia
+- doxia [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-doxia/master)](https://github.com/apache/maven-doxia/tree/master)
+- site [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-doxia-site/master)](https://github.com/apache/maven-doxia-site/tree/master)
+- sitetools [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-doxia-sitetools/master)](https://github.com/apache/maven-doxia-sitetools/tree/master)
+- tools/doxia-book-maven-plugin [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-doxia-book-maven-plugin/master)](https://github.com/apache/maven-doxia-book-maven-plugin/tree/master)
+- tools/converter [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-doxia-converter/master)](https://github.com/apache/maven-doxia-converter/tree/master)
+
+# misc
+- archetypes [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-archetypes/master)](https://github.com/apache/maven-archetypes/tree/master)
+- pom/maven [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-parent/master)](https://github.com/apache/maven-parent/tree/master)
+- pom/apache [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-apache-parent/master)](https://github.com/apache/maven-apache-parent/tree/master)
+- pom/apache-resources [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-apache-resources/master)](https://github.com/apache/maven-apache-resources/tree/master)
+- skins/default [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-default-skin/master)](https://github.com/apache/maven-default-skin/tree/master)
+- skins/fluido [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-fluido-skin/master)](https://github.com/apache/maven-fluido-skin/tree/master)
+- dist-tool [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-dist-tool/master)](https://github.com/apache/maven-dist-tool/tree/master)
+- gh-actions-sharedmain [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-gh-actions-shared/main)](https://github.com/apache/maven-gh-actions-shared/tree/main)
+- jenkins/env [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-jenkins-env/master)](https://github.com/apache/maven-jenkins-env/tree/master)
+- jenkins/lib [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-jenkins-lib/master)](https://github.com/apache/maven-jenkins-lib/tree/master)
+- indexer [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-indexer/master)](https://github.com/apache/maven-indexer/tree/master)
+- plugin-testing [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-plugin-testing/master)](https://github.com/apache/maven-plugin-testing/tree/master)
+- wagon [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-wagon/master)](https://github.com/apache/maven-wagon/tree/master)
+
+# studies
+- master [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-studies/master)](https://github.com/apache/maven-studies/tree/master)
+- consumer-pomconsumer-pom [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-studies/consumer-pom)](https://github.com/apache/maven-studies/tree/consumer-pom)
+- maven-basedir-filesystemmaven-basedir-filesystem [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-studies/maven-basedir-filesystem)](https://github.com/apache/maven-studies/tree/maven-basedir-filesystem)
+- maven-ci-extensionmaven-ci-extension [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-studies/maven-ci-extension)](https://github.com/apache/maven-studies/tree/maven-ci-extension)
+- maven-default-pluginsmaven-default-plugins [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-studies/maven-default-plugins)](https://github.com/apache/maven-studies/tree/maven-default-plugins)
+- maven-eventsound-extensionmaven-eventsound-extension [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-studies/maven-eventsound-extension)](https://github.com/apache/maven-studies/tree/maven-eventsound-extension)
+- maven-extension-demomaven-extension-demo [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-studies/maven-extension-demo)](https://github.com/apache/maven-studies/tree/maven-extension-demo)
+
+# svn
+- repository-toolstrunk [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-repository-tools/trunk)](https://github.com/apache/maven-repository-tools/tree/trunk)
+- sandboxtrunk [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-sandbox/trunk)](https://github.com/apache/maven-sandbox/tree/trunk)
+- doxia-idetrunk [![GitHub branch 
status](https://img.shields.io/github/checks-status/apache/maven-doxia-ide/trunk)](https://github.com/apache/maven-doxia-ide/tree/trunk)
+
+# plexus
+- codehaus-plexus.github.iosource [![GitHub branch 
status](https://img.shields.io/github/checks-status/codehaus-plexus/codehaus-plexus.github.io/source)](https://github.com/codehaus-plexus/codehaus-plexus.github.io/tree/source)
+- modello [![GitHub branch 
status](https://img.shields.io/github/checks-status/codehaus-plexus/modello/master)](https://github.com/codehaus-plexus/modello/tree/master)
+- classworlds [![GitHub branch 
status](https://img.shields.io/github/checks-status/codehaus-plexus/plexus-classworlds/master)](https://github.com/codehaus-plexus/plexus-classworlds/tree/master)
+- components/archiver [![GitHub branch 
status](https://img.shields.io/github/checks-status/codehaus-plexus/plexus-archiver/master)](https://github.com/codehaus-plexus/plexus-archiver/tree/master)
+- components/compiler [![GitHub branch 
status](https://img.shields.io/github/checks-status/codehaus-plexus/plexus-compiler/master)](https://github.com/codehaus-plexus/plexus-compiler/tree/master)
+- components/i18n [![GitHub branch 
status](https://img.shields.io/github/checks-status/codehaus-plexus/plexus-i18n/master)](https://github.com/codehaus-plexus/plexus-i18n/tree/master)
+- components/interactivity [![GitHub branch 
status](https://img.shields.io/github/checks-status/codehaus-plexus/plexus-interactivity/master)](https://github.com/codehaus-plexus/plexus-interactivity/tree/master)
+- components/interpolation [![GitHub branch 
status](https://img.shields.io/github/checks-status/codehaus-plexus/plexus-interpolation/master)](https://github.com/codehaus-plexus/plexus-interpolation/tree/master)
+- components/io [![GitHub branch 
status](https://img.shields.io/github/checks-status/codehaus-plexus/plexus-io/master)](https://github.com/codehaus-plexus/plexus-io/tree/master)
+- components/languages [![GitHub branch 
status](https://img.shields.io/github/checks-status/codehaus-plexus/plexus-languages/master)](https://github.com/codehaus-plexus/plexus-languages/tree/master)
+- components/resources [![GitHub branch 
status](https://img.shields.io/github/checks-status/codehaus-plexus/plexus-resources/master)](https://github.com/codehaus-plexus/plexus-resources/tree/master)
+- components/sec-dispatcher [![GitHub branch 
status](https://img.shields.io/github/checks-status/codehaus-plexus/plexus-sec-dispatcher/master)](https://github.com/codehaus-plexus/plexus-sec-dispatcher/tree/master)
+- components/velocity [![GitHub branch 
status](https://img.shields.io/github/checks-status/codehaus-plexus/plexus-velocity/master)](https://github.com/codehaus-plexus/plexus-velocity/tree/master)
+- pom/plexus [![GitHub branch 
status](https://img.shields.io/github/checks-status/codehaus-plexus/plexus-pom/master)](https://github.com/codehaus-plexus/plexus-pom/tree/master)
+- testing [![GitHub branch 
status](https://img.shields.io/github/checks-status/codehaus-plexus/plexus-testing/master)](https://github.com/codehaus-plexus/plexus-testing/tree/master)
+- utils [![GitHub branch 
status](https://img.shields.io/github/checks-status/codehaus-plexus/plexus-utils/master)](https://github.com/codehaus-plexus/plexus-utils/tree/master)
+- xml [![GitHub branch 
status](https://img.shields.io/github/checks-status/codehaus-plexus/plexus-xml/master)](https://github.com/codehaus-plexus/plexus-xml/tree/master)
+
+# sisu
+- sisu-project [![GitHub branch 
status](https://img.shields.io/github/checks-status/sisu/sisu-project/master)](https://github.com/sisu/sisu-project/tree/master)
diff --git a/update_gh.java b/update_gh.java
new file mode 100755
index 0000000..43a9094
--- /dev/null
+++ b/update_gh.java
@@ -0,0 +1,73 @@
+///usr/bin/env jbang "$0" "$@" ; exit $?
+
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.util.stream.Collectors;
+
+public class update_gh {
+    private static class Project {
+        final String org;
+        final String group;
+        final String name;
+        final String repo;
+        final String branch;
+        Project(String org, String group, String name, String repo, String 
branch) {
+            this.org = org;
+            this.group = group;
+            this.name = name;
+            this.repo = repo;
+            this.branch = branch;
+        }
+    }
+
+    public static void main(String... args) throws Exception {
+        String group = "";
+        for(Project p: Files.readAllLines(Path.of("default.xml")).stream()
+            .filter(s -> s.contains("project path='"))
+            .map(s -> toProject(s))
+            .collect(Collectors.toList())) {
+                if (!group.equals(p.group)) {
+                    System.out.println();
+                    System.out.println("# " + p.group);
+                    group = p.group;
+                }
+                System.out.println("- " + p.name + ("master".equals(p.branch) 
? "" : (" " + p.branch))
+                    + " [![GitHub branch 
status](https://img.shields.io/github/checks-status/"; + p.org + "/" + p.repo + 
"/" + p.branch + ")]"
+                    + "(https://github.com/"; + p.org + "/" + p.repo + "/tree/" 
+ p.branch + ")"); 
+            }
+    }
+
+    private static Project toProject(String line) {
+        String path = extract(line, "path");
+        String name = extract(line, "name");
+        String revision = extract(line, "revision");
+
+        int pos = (path.startsWith("core") || path.startsWith("plugins")) ? 
path.lastIndexOf('/') : path.indexOf('/');
+        String group = "";
+        if (pos > 0) {
+            group = path.substring(0, pos);
+            path = path.substring(pos + 1);
+        }
+
+        name = name.substring(0, name.length() - 4);
+
+        String org = "apache";
+        if (group.startsWith("plexus")) {
+            org = "codehaus-plexus";
+        } else if (group.equals("sisu")) {
+            org = "eclipse-sisu";
+        }
+
+        return new Project(org, group, path, name, (revision == null) ? 
"master" : revision);
+    }
+
+    private static String extract(String line, String key) {
+        int pos = line.indexOf(key);
+        if (pos < 0) {
+            return null;
+        }
+        char sep = line.charAt(pos + key.length() + 1);
+        line = line.substring(pos + key.length() + 2);
+        return line.substring(0, line.indexOf(sep));
+    }
+}
\ No newline at end of file

Reply via email to