From 9831733c9af61ce2fa84afb07a1f007083619067 Mon Sep 17 00:00:00 2001 From: Damian Momot Date: Thu, 25 Jun 2026 04:10:17 -0700 Subject: [PATCH] refactor: Extract shared GitHubTools into its own sample module Replace the build-helper source-root hack (which forced each sample to re-exclude every sibling in the compiler, source, and javadoc plugins) with a google-adk-sample-github-tools module that samples depend on under the standard src/main/java layout. PiperOrigin-RevId: 937894603 --- contrib/samples/github/adkprtriaging/pom.xml | 94 ++---------------- .../adkprtriaging}/AdkPrTriagingAgent.java | 0 .../adkprtriaging}/AdkPrTriagingAgentRun.java | 0 .../com/example/adkprtriaging}/Settings.java | 0 contrib/samples/github/adkreleasedocs/pom.xml | 84 ++-------------- .../adkdocs}/AdkDocsReleaseAnalyzerAgent.java | 0 .../adkdocs}/AdkDocsReleaseAnalyzerRun.java | 0 .../java/com/example/adkdocs}/Settings.java | 0 contrib/samples/github/adkspam/pom.xml | 94 ++---------------- .../java/com/example/adkspam}/Settings.java | 0 .../example/adkspam}/SpamDetectionAgent.java | 0 .../adkspam}/SpamDetectionAgentRun.java | 0 contrib/samples/github/adkstale/pom.xml | 97 ++----------------- .../com/example/adkstale}/AdkStaleAgent.java | 0 .../example/adkstale}/AdkStaleAgentRun.java | 0 .../example/adkstale}/GitHubStaleClient.java | 0 .../java/com/example/adkstale}/Settings.java | 0 contrib/samples/github/adktriaging/pom.xml | 94 ++---------------- .../adktriaging}/AdkTriagingAgent.java | 0 .../adktriaging}/AdkTriagingAgentRun.java | 0 .../com/example/adktriaging}/Settings.java | 0 contrib/samples/github/githubtools/pom.xml | 78 +++++++++++++++ .../java/com/example/github}/GitHubTools.java | 0 contrib/samples/pom.xml | 1 + pom.xml | 4 +- 25 files changed, 125 insertions(+), 421 deletions(-) rename contrib/samples/github/adkprtriaging/{ => src/main/java/com/example/adkprtriaging}/AdkPrTriagingAgent.java (100%) rename contrib/samples/github/adkprtriaging/{ => src/main/java/com/example/adkprtriaging}/AdkPrTriagingAgentRun.java (100%) rename contrib/samples/github/adkprtriaging/{ => src/main/java/com/example/adkprtriaging}/Settings.java (100%) rename contrib/samples/github/adkreleasedocs/{ => src/main/java/com/example/adkdocs}/AdkDocsReleaseAnalyzerAgent.java (100%) rename contrib/samples/github/adkreleasedocs/{ => src/main/java/com/example/adkdocs}/AdkDocsReleaseAnalyzerRun.java (100%) rename contrib/samples/github/adkreleasedocs/{ => src/main/java/com/example/adkdocs}/Settings.java (100%) rename contrib/samples/github/adkspam/{ => src/main/java/com/example/adkspam}/Settings.java (100%) rename contrib/samples/github/adkspam/{ => src/main/java/com/example/adkspam}/SpamDetectionAgent.java (100%) rename contrib/samples/github/adkspam/{ => src/main/java/com/example/adkspam}/SpamDetectionAgentRun.java (100%) rename contrib/samples/github/adkstale/{ => src/main/java/com/example/adkstale}/AdkStaleAgent.java (100%) rename contrib/samples/github/adkstale/{ => src/main/java/com/example/adkstale}/AdkStaleAgentRun.java (100%) rename contrib/samples/github/adkstale/{ => src/main/java/com/example/adkstale}/GitHubStaleClient.java (100%) rename contrib/samples/github/adkstale/{ => src/main/java/com/example/adkstale}/Settings.java (100%) rename contrib/samples/github/adktriaging/{ => src/main/java/com/example/adktriaging}/AdkTriagingAgent.java (100%) rename contrib/samples/github/adktriaging/{ => src/main/java/com/example/adktriaging}/AdkTriagingAgentRun.java (100%) rename contrib/samples/github/adktriaging/{ => src/main/java/com/example/adktriaging}/Settings.java (100%) create mode 100644 contrib/samples/github/githubtools/pom.xml rename contrib/samples/github/{ => githubtools/src/main/java/com/example/github}/GitHubTools.java (100%) diff --git a/contrib/samples/github/adkprtriaging/pom.xml b/contrib/samples/github/adkprtriaging/pom.xml index 47758d8e0..a398cc894 100644 --- a/contrib/samples/github/adkprtriaging/pom.xml +++ b/contrib/samples/github/adkprtriaging/pom.xml @@ -41,6 +41,8 @@ com.example.adkprtriaging.AdkPrTriagingAgentRun ${project.version} + + true @@ -49,18 +51,13 @@ google-adk ${google-adk.version} - + - org.kohsuke - github-api - 1.330 + com.google.adk.samples + google-adk-sample-github-tools + ${project.version} - - commons-logging - commons-logging - 1.2 - - + org.slf4j slf4j-simple @@ -68,8 +65,7 @@ runtime - + org.junit.jupiter junit-jupiter-api @@ -101,81 +97,9 @@ ${java.version} ${java.version} - + true - - - - default-compile - - - GitHubTools.java - adkprtriaging/*.java - - - - - - - org.codehaus.mojo - build-helper-maven-plugin - 3.6.0 - - - add-source - generate-sources - - add-source - - - - - .. - - - - - - - org.apache.maven.plugins - maven-source-plugin - - - - **/*.jar - **/*.yml - adktriaging/** - adkreleasedocs/** - adkspam/** - adkstale/** - **/src/test/** - target/** - - - - - org.apache.maven.plugins - maven-javadoc-plugin - - - - adktriaging/** - adkreleasedocs/** - adkspam/** - adkstale/** - **/src/test/** - - org.codehaus.mojo diff --git a/contrib/samples/github/adkprtriaging/AdkPrTriagingAgent.java b/contrib/samples/github/adkprtriaging/src/main/java/com/example/adkprtriaging/AdkPrTriagingAgent.java similarity index 100% rename from contrib/samples/github/adkprtriaging/AdkPrTriagingAgent.java rename to contrib/samples/github/adkprtriaging/src/main/java/com/example/adkprtriaging/AdkPrTriagingAgent.java diff --git a/contrib/samples/github/adkprtriaging/AdkPrTriagingAgentRun.java b/contrib/samples/github/adkprtriaging/src/main/java/com/example/adkprtriaging/AdkPrTriagingAgentRun.java similarity index 100% rename from contrib/samples/github/adkprtriaging/AdkPrTriagingAgentRun.java rename to contrib/samples/github/adkprtriaging/src/main/java/com/example/adkprtriaging/AdkPrTriagingAgentRun.java diff --git a/contrib/samples/github/adkprtriaging/Settings.java b/contrib/samples/github/adkprtriaging/src/main/java/com/example/adkprtriaging/Settings.java similarity index 100% rename from contrib/samples/github/adkprtriaging/Settings.java rename to contrib/samples/github/adkprtriaging/src/main/java/com/example/adkprtriaging/Settings.java diff --git a/contrib/samples/github/adkreleasedocs/pom.xml b/contrib/samples/github/adkreleasedocs/pom.xml index f81c6c72e..c775c945d 100644 --- a/contrib/samples/github/adkreleasedocs/pom.xml +++ b/contrib/samples/github/adkreleasedocs/pom.xml @@ -40,6 +40,8 @@ com.example.adkdocs.AdkDocsReleaseAnalyzerRun ${project.version} + + true @@ -48,11 +50,11 @@ google-adk ${google-adk.version} - + - org.kohsuke - github-api - 1.330 + com.google.adk.samples + google-adk-sample-github-tools + ${project.version} @@ -60,11 +62,6 @@ picocli 4.7.6 - - commons-logging - commons-logging - 1.2 - @@ -76,76 +73,9 @@ ${java.version} ${java.version} + true - - - - default-compile - - - GitHubTools.java - adkreleasedocs/*.java - - - - - - - org.codehaus.mojo - build-helper-maven-plugin - 3.6.0 - - - add-source - generate-sources - - add-source - - - - - .. - - - - - - - org.apache.maven.plugins - maven-source-plugin - - - - **/*.jar - adkprtriaging/** - adkspam/** - adkstale/** - adktriaging/** - target/** - - - - - org.apache.maven.plugins - maven-javadoc-plugin - - - - adkprtriaging/** - adkspam/** - adkstale/** - adktriaging/** - - org.codehaus.mojo diff --git a/contrib/samples/github/adkreleasedocs/AdkDocsReleaseAnalyzerAgent.java b/contrib/samples/github/adkreleasedocs/src/main/java/com/example/adkdocs/AdkDocsReleaseAnalyzerAgent.java similarity index 100% rename from contrib/samples/github/adkreleasedocs/AdkDocsReleaseAnalyzerAgent.java rename to contrib/samples/github/adkreleasedocs/src/main/java/com/example/adkdocs/AdkDocsReleaseAnalyzerAgent.java diff --git a/contrib/samples/github/adkreleasedocs/AdkDocsReleaseAnalyzerRun.java b/contrib/samples/github/adkreleasedocs/src/main/java/com/example/adkdocs/AdkDocsReleaseAnalyzerRun.java similarity index 100% rename from contrib/samples/github/adkreleasedocs/AdkDocsReleaseAnalyzerRun.java rename to contrib/samples/github/adkreleasedocs/src/main/java/com/example/adkdocs/AdkDocsReleaseAnalyzerRun.java diff --git a/contrib/samples/github/adkreleasedocs/Settings.java b/contrib/samples/github/adkreleasedocs/src/main/java/com/example/adkdocs/Settings.java similarity index 100% rename from contrib/samples/github/adkreleasedocs/Settings.java rename to contrib/samples/github/adkreleasedocs/src/main/java/com/example/adkdocs/Settings.java diff --git a/contrib/samples/github/adkspam/pom.xml b/contrib/samples/github/adkspam/pom.xml index 5c1a9a6ed..066840879 100644 --- a/contrib/samples/github/adkspam/pom.xml +++ b/contrib/samples/github/adkspam/pom.xml @@ -42,6 +42,8 @@ com.example.adkspam.SpamDetectionAgentRun ${project.version} + + true @@ -50,18 +52,13 @@ google-adk ${google-adk.version} - + - org.kohsuke - github-api - 1.330 + com.google.adk.samples + google-adk-sample-github-tools + ${project.version} - - commons-logging - commons-logging - 1.2 - - + org.slf4j slf4j-simple @@ -69,8 +66,7 @@ runtime - + org.junit.jupiter junit-jupiter-api @@ -102,81 +98,9 @@ ${java.version} ${java.version} - + true - - - - default-compile - - - GitHubTools.java - adkspam/*.java - - - - - - - org.codehaus.mojo - build-helper-maven-plugin - 3.6.0 - - - add-source - generate-sources - - add-source - - - - - .. - - - - - - - org.apache.maven.plugins - maven-source-plugin - - - - **/*.jar - **/*.yml - adkprtriaging/** - adkreleasedocs/** - adkstale/** - adktriaging/** - **/src/test/** - target/** - - - - - org.apache.maven.plugins - maven-javadoc-plugin - - - - adkprtriaging/** - adkreleasedocs/** - adkstale/** - adktriaging/** - **/src/test/** - - org.codehaus.mojo diff --git a/contrib/samples/github/adkspam/Settings.java b/contrib/samples/github/adkspam/src/main/java/com/example/adkspam/Settings.java similarity index 100% rename from contrib/samples/github/adkspam/Settings.java rename to contrib/samples/github/adkspam/src/main/java/com/example/adkspam/Settings.java diff --git a/contrib/samples/github/adkspam/SpamDetectionAgent.java b/contrib/samples/github/adkspam/src/main/java/com/example/adkspam/SpamDetectionAgent.java similarity index 100% rename from contrib/samples/github/adkspam/SpamDetectionAgent.java rename to contrib/samples/github/adkspam/src/main/java/com/example/adkspam/SpamDetectionAgent.java diff --git a/contrib/samples/github/adkspam/SpamDetectionAgentRun.java b/contrib/samples/github/adkspam/src/main/java/com/example/adkspam/SpamDetectionAgentRun.java similarity index 100% rename from contrib/samples/github/adkspam/SpamDetectionAgentRun.java rename to contrib/samples/github/adkspam/src/main/java/com/example/adkspam/SpamDetectionAgentRun.java diff --git a/contrib/samples/github/adkstale/pom.xml b/contrib/samples/github/adkstale/pom.xml index f6cdcbe60..b09675be3 100644 --- a/contrib/samples/github/adkstale/pom.xml +++ b/contrib/samples/github/adkstale/pom.xml @@ -42,6 +42,8 @@ com.example.adkstale.AdkStaleAgentRun ${project.version} + + true @@ -50,24 +52,18 @@ google-adk ${google-adk.version} - + - org.kohsuke - github-api - 1.330 + com.google.adk.samples + google-adk-sample-github-tools + ${project.version} - + com.fasterxml.jackson.core jackson-databind - - commons-logging - commons-logging - 1.2 - - + org.slf4j slf4j-simple @@ -75,8 +71,7 @@ runtime - + org.junit.jupiter junit-jupiter-api @@ -108,81 +103,9 @@ ${java.version} ${java.version} - + true - - - - default-compile - - - GitHubTools.java - adkstale/*.java - - - - - - - org.codehaus.mojo - build-helper-maven-plugin - 3.6.0 - - - add-source - generate-sources - - add-source - - - - - .. - - - - - - - org.apache.maven.plugins - maven-source-plugin - - - - **/*.jar - **/*.yml - adkprtriaging/** - adkreleasedocs/** - adkspam/** - adktriaging/** - **/src/test/** - target/** - - - - - org.apache.maven.plugins - maven-javadoc-plugin - - - - adkprtriaging/** - adkreleasedocs/** - adkspam/** - adktriaging/** - **/src/test/** - - org.codehaus.mojo diff --git a/contrib/samples/github/adkstale/AdkStaleAgent.java b/contrib/samples/github/adkstale/src/main/java/com/example/adkstale/AdkStaleAgent.java similarity index 100% rename from contrib/samples/github/adkstale/AdkStaleAgent.java rename to contrib/samples/github/adkstale/src/main/java/com/example/adkstale/AdkStaleAgent.java diff --git a/contrib/samples/github/adkstale/AdkStaleAgentRun.java b/contrib/samples/github/adkstale/src/main/java/com/example/adkstale/AdkStaleAgentRun.java similarity index 100% rename from contrib/samples/github/adkstale/AdkStaleAgentRun.java rename to contrib/samples/github/adkstale/src/main/java/com/example/adkstale/AdkStaleAgentRun.java diff --git a/contrib/samples/github/adkstale/GitHubStaleClient.java b/contrib/samples/github/adkstale/src/main/java/com/example/adkstale/GitHubStaleClient.java similarity index 100% rename from contrib/samples/github/adkstale/GitHubStaleClient.java rename to contrib/samples/github/adkstale/src/main/java/com/example/adkstale/GitHubStaleClient.java diff --git a/contrib/samples/github/adkstale/Settings.java b/contrib/samples/github/adkstale/src/main/java/com/example/adkstale/Settings.java similarity index 100% rename from contrib/samples/github/adkstale/Settings.java rename to contrib/samples/github/adkstale/src/main/java/com/example/adkstale/Settings.java diff --git a/contrib/samples/github/adktriaging/pom.xml b/contrib/samples/github/adktriaging/pom.xml index 54af534d5..640170f70 100644 --- a/contrib/samples/github/adktriaging/pom.xml +++ b/contrib/samples/github/adktriaging/pom.xml @@ -40,6 +40,8 @@ com.example.adktriaging.AdkTriagingAgentRun ${project.version} + + true @@ -48,18 +50,13 @@ google-adk ${google-adk.version} - + - org.kohsuke - github-api - 1.330 + com.google.adk.samples + google-adk-sample-github-tools + ${project.version} - - commons-logging - commons-logging - 1.2 - - + org.slf4j slf4j-simple @@ -67,8 +64,7 @@ runtime - + org.junit.jupiter junit-jupiter-api @@ -100,81 +96,9 @@ ${java.version} ${java.version} - + true - - - - default-compile - - - GitHubTools.java - adktriaging/*.java - - - - - - - org.codehaus.mojo - build-helper-maven-plugin - 3.6.0 - - - add-source - generate-sources - - add-source - - - - - .. - - - - - - - org.apache.maven.plugins - maven-source-plugin - - - - **/*.jar - **/*.yml - adkprtriaging/** - adkreleasedocs/** - adkspam/** - adkstale/** - **/src/test/** - target/** - - - - - org.apache.maven.plugins - maven-javadoc-plugin - - - - adkprtriaging/** - adkreleasedocs/** - adkspam/** - adkstale/** - **/src/test/** - - org.codehaus.mojo diff --git a/contrib/samples/github/adktriaging/AdkTriagingAgent.java b/contrib/samples/github/adktriaging/src/main/java/com/example/adktriaging/AdkTriagingAgent.java similarity index 100% rename from contrib/samples/github/adktriaging/AdkTriagingAgent.java rename to contrib/samples/github/adktriaging/src/main/java/com/example/adktriaging/AdkTriagingAgent.java diff --git a/contrib/samples/github/adktriaging/AdkTriagingAgentRun.java b/contrib/samples/github/adktriaging/src/main/java/com/example/adktriaging/AdkTriagingAgentRun.java similarity index 100% rename from contrib/samples/github/adktriaging/AdkTriagingAgentRun.java rename to contrib/samples/github/adktriaging/src/main/java/com/example/adktriaging/AdkTriagingAgentRun.java diff --git a/contrib/samples/github/adktriaging/Settings.java b/contrib/samples/github/adktriaging/src/main/java/com/example/adktriaging/Settings.java similarity index 100% rename from contrib/samples/github/adktriaging/Settings.java rename to contrib/samples/github/adktriaging/src/main/java/com/example/adktriaging/Settings.java diff --git a/contrib/samples/github/githubtools/pom.xml b/contrib/samples/github/githubtools/pom.xml new file mode 100644 index 000000000..240a8f6d3 --- /dev/null +++ b/contrib/samples/github/githubtools/pom.xml @@ -0,0 +1,78 @@ + + + + 4.0.0 + + + com.google.adk + google-adk-samples + 1.5.1-SNAPSHOT + ../.. + + + com.google.adk.samples + google-adk-sample-github-tools + Google ADK - Sample - Shared GitHub Tools + + Shared GitHubTools library used by the ADK GitHub agent samples (issue triaging, PR triaging, + stale auditor, docs release analyzer). Wraps the org.kohsuke github-api as ADK FunctionTools. + + jar + + + UTF-8 + 17 + ${project.version} + + true + + + + + com.google.adk + google-adk + ${google-adk.version} + + + + org.kohsuke + github-api + 1.330 + + + commons-logging + commons-logging + 1.2 + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.13.0 + + ${java.version} + ${java.version} + + true + + + + + diff --git a/contrib/samples/github/GitHubTools.java b/contrib/samples/github/githubtools/src/main/java/com/example/github/GitHubTools.java similarity index 100% rename from contrib/samples/github/GitHubTools.java rename to contrib/samples/github/githubtools/src/main/java/com/example/github/GitHubTools.java diff --git a/contrib/samples/pom.xml b/contrib/samples/pom.xml index 95e424cb1..04ab3ffd5 100644 --- a/contrib/samples/pom.xml +++ b/contrib/samples/pom.xml @@ -19,6 +19,7 @@ a2a_basic a2a_server configagent + github/githubtools github/adkprtriaging github/adkreleasedocs github/adkspam diff --git a/pom.xml b/pom.xml index a60b035f1..fe96961c3 100644 --- a/pom.xml +++ b/pom.xml @@ -423,7 +423,7 @@ org.sonatype.central central-publishing-maven-plugin - 0.8.0 + 0.9.0 true central @@ -530,7 +530,7 @@ org.sonatype.central central-publishing-maven-plugin - 0.8.0 + 0.9.0 true central