Skip to content

Commit 1e01ae3

Browse files
authored
Merge pull request #242 from github/edburns/dd-3009225-build-documentation-process
Cross-repo documentation deployment from monorepo
2 parents 643364d + 534affb commit 1e01ae3

21 files changed

Lines changed: 6054 additions & 201 deletions

.github/templates/index.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
<h1>GitHub Copilot SDK for <span class="gradient-text">Java</span></h1>
1919
<p class="hero-subtitle">The official SDK for building AI-powered tools with GitHub Copilot's agentic runtime.</p>
2020
<div class="header-buttons">
21-
<a href="https://github.com/github/copilot-sdk-java" class="btn btn-github">
21+
<a href="https://github.com/github/copilot-sdk/tree/main/java" class="btn btn-github">
2222
<svg height="20" width="20" viewBox="0 0 16 16"><path d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0016 8c0-4.42-3.58-8-8-8z"></path></svg>
2323
View on GitHub
2424
</a>
@@ -75,7 +75,7 @@ <h2 class="section-title">Available Versions</h2>
7575

7676
<footer class="footer">
7777
<div class="footer-links">
78-
<a href="https://github.com/github/copilot-sdk-java">GitHub Repository</a>
78+
<a href="https://github.com/github/copilot-sdk/tree/main/java">GitHub Repository</a>
7979
<span class="sep">·</span>
8080
<a href="https://central.sonatype.com/artifact/com.github/copilot-sdk">Maven Central</a>
8181
<span class="sep">·</span>

.github/workflows/deploy-site.yml

Lines changed: 105 additions & 199 deletions
Large diffs are not rendered by default.

pom.xml

Lines changed: 261 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,261 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!--
3+
Site-only POM for github/copilot-sdk-java.
4+
This POM builds the Maven Site (javadoc, JaCoCo, SpotBugs, etc.) from
5+
Java source code checked out from the monorepo (github/copilot-sdk) at
6+
a release tag. It is NOT used for compiling/testing the SDK itself.
7+
8+
Expected layout at build time (set up by deploy-site.yml):
9+
. (this repo — standalone)
10+
├── pom.xml (this file)
11+
├── src/site/ (site content: markdown, site.xml, CSS)
12+
└── monorepo/ (checkout of github/copilot-sdk at release tag)
13+
└── java/
14+
└── src/main/java/ (SDK source for javadoc)
15+
└── target/ (compiled classes from monorepo build)
16+
-->
17+
<project xmlns="http://maven.apache.org/POM/4.0.0"
18+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
19+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
20+
<modelVersion>4.0.0</modelVersion>
21+
22+
<groupId>com.github</groupId>
23+
<artifactId>copilot-sdk-java-site</artifactId>
24+
<version>${site.version}</version>
25+
<packaging>pom</packaging>
26+
27+
<name>GitHub Copilot SDK for Java — Documentation Site</name>
28+
<description>Maven Site build for the GitHub Copilot SDK for Java</description>
29+
<url>https://github.com/github/copilot-sdk-java</url>
30+
31+
<properties>
32+
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
33+
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
34+
<!-- Overridden at build time via -Dsite.version=... -->
35+
<site.version>0.0.0-SNAPSHOT</site.version>
36+
<!-- Path to the monorepo checkout (relative to this POM) -->
37+
<monorepo.java.dir>${project.basedir}/monorepo/java</monorepo.java.dir>
38+
</properties>
39+
40+
<!-- Dependencies needed on classpath for javadoc link resolution -->
41+
<dependencies>
42+
<dependency>
43+
<groupId>com.fasterxml.jackson.core</groupId>
44+
<artifactId>jackson-databind</artifactId>
45+
<version>2.21.3</version>
46+
<scope>provided</scope>
47+
</dependency>
48+
<dependency>
49+
<groupId>com.fasterxml.jackson.core</groupId>
50+
<artifactId>jackson-annotations</artifactId>
51+
<version>2.21</version>
52+
<scope>provided</scope>
53+
</dependency>
54+
</dependencies>
55+
56+
<build>
57+
<!-- Point source directory at monorepo's Java source for reports -->
58+
<sourceDirectory>${monorepo.java.dir}/src/main/java</sourceDirectory>
59+
60+
<plugins>
61+
<!-- Maven Resources Plugin — site-filtering executions -->
62+
<plugin>
63+
<groupId>org.apache.maven.plugins</groupId>
64+
<artifactId>maven-resources-plugin</artifactId>
65+
<version>3.5.0</version>
66+
<executions>
67+
<execution>
68+
<id>filter-site-markdown</id>
69+
<phase>pre-site</phase>
70+
<goals>
71+
<goal>copy-resources</goal>
72+
</goals>
73+
<configuration>
74+
<outputDirectory>${project.build.directory}/filtered-site/markdown</outputDirectory>
75+
<resources>
76+
<resource>
77+
<directory>src/site/markdown</directory>
78+
<filtering>true</filtering>
79+
</resource>
80+
</resources>
81+
</configuration>
82+
</execution>
83+
<execution>
84+
<id>copy-site-descriptor</id>
85+
<phase>pre-site</phase>
86+
<goals>
87+
<goal>copy-resources</goal>
88+
</goals>
89+
<configuration>
90+
<outputDirectory>${project.build.directory}/filtered-site</outputDirectory>
91+
<resources>
92+
<resource>
93+
<directory>src/site</directory>
94+
<includes>
95+
<include>site.xml</include>
96+
</includes>
97+
<filtering>false</filtering>
98+
</resource>
99+
</resources>
100+
</configuration>
101+
</execution>
102+
<execution>
103+
<id>copy-site-resources</id>
104+
<phase>pre-site</phase>
105+
<goals>
106+
<goal>copy-resources</goal>
107+
</goals>
108+
<configuration>
109+
<outputDirectory>${project.build.directory}/filtered-site/resources</outputDirectory>
110+
<resources>
111+
<resource>
112+
<directory>src/site/resources</directory>
113+
<filtering>false</filtering>
114+
</resource>
115+
</resources>
116+
</configuration>
117+
</execution>
118+
<execution>
119+
<id>overlay-jacoco-css</id>
120+
<phase>site</phase>
121+
<goals>
122+
<goal>copy-resources</goal>
123+
</goals>
124+
<configuration>
125+
<outputDirectory>${project.reporting.outputDirectory}/jacoco/jacoco-resources</outputDirectory>
126+
<resources>
127+
<resource>
128+
<directory>src/site/jacoco-resources</directory>
129+
<filtering>false</filtering>
130+
</resource>
131+
</resources>
132+
<overwrite>true</overwrite>
133+
</configuration>
134+
</execution>
135+
</executions>
136+
</plugin>
137+
<!-- Maven Site Plugin -->
138+
<plugin>
139+
<groupId>org.apache.maven.plugins</groupId>
140+
<artifactId>maven-site-plugin</artifactId>
141+
<version>3.21.0</version>
142+
<configuration>
143+
<inputEncoding>UTF-8</inputEncoding>
144+
<outputEncoding>UTF-8</outputEncoding>
145+
<siteDirectory>${project.build.directory}/filtered-site</siteDirectory>
146+
<generatedSiteDirectory>${project.build.directory}/filtered-site-generated</generatedSiteDirectory>
147+
</configuration>
148+
<dependencies>
149+
<dependency>
150+
<groupId>org.apache.maven.doxia</groupId>
151+
<artifactId>doxia-module-markdown</artifactId>
152+
<version>2.1.0</version>
153+
</dependency>
154+
</dependencies>
155+
</plugin>
156+
</plugins>
157+
</build>
158+
159+
<!-- Reporting plugins for Maven Site -->
160+
<reporting>
161+
<plugins>
162+
<!-- Project Info Reports -->
163+
<plugin>
164+
<groupId>org.apache.maven.plugins</groupId>
165+
<artifactId>maven-project-info-reports-plugin</artifactId>
166+
<version>3.9.0</version>
167+
</plugin>
168+
<!-- Javadoc from monorepo source -->
169+
<plugin>
170+
<groupId>org.apache.maven.plugins</groupId>
171+
<artifactId>maven-javadoc-plugin</artifactId>
172+
<version>3.11.2</version>
173+
<configuration>
174+
<sourcepath>${monorepo.java.dir}/src/main/java</sourcepath>
175+
<subpackages>com.github.copilot</subpackages>
176+
</configuration>
177+
<reportSets>
178+
<reportSet>
179+
<reports>
180+
<report>javadoc</report>
181+
</reports>
182+
</reportSet>
183+
</reportSets>
184+
</plugin>
185+
<!-- JaCoCo coverage (from monorepo test run) -->
186+
<plugin>
187+
<groupId>org.jacoco</groupId>
188+
<artifactId>jacoco-maven-plugin</artifactId>
189+
<version>0.8.14</version>
190+
<configuration>
191+
<dataFile>${monorepo.java.dir}/target/jacoco-test-results/sdk-tests.exec</dataFile>
192+
</configuration>
193+
<reportSets>
194+
<reportSet>
195+
<reports>
196+
<report>report</report>
197+
</reports>
198+
</reportSet>
199+
</reportSets>
200+
</plugin>
201+
<!-- Surefire test results report -->
202+
<plugin>
203+
<groupId>org.apache.maven.plugins</groupId>
204+
<artifactId>maven-surefire-report-plugin</artifactId>
205+
<version>3.5.5</version>
206+
<configuration>
207+
<reportsDirectories>
208+
<reportsDirectory>${monorepo.java.dir}/target/surefire-reports</reportsDirectory>
209+
</reportsDirectories>
210+
</configuration>
211+
</plugin>
212+
<!-- SpotBugs static analysis -->
213+
<plugin>
214+
<groupId>com.github.spotbugs</groupId>
215+
<artifactId>spotbugs-maven-plugin</artifactId>
216+
<version>4.9.8.3</version>
217+
<configuration>
218+
<excludeFilterFile>${monorepo.java.dir}/config/spotbugs/spotbugs-exclude.xml</excludeFilterFile>
219+
</configuration>
220+
</plugin>
221+
<!-- TODO/FIXME tag tracker -->
222+
<plugin>
223+
<groupId>org.codehaus.mojo</groupId>
224+
<artifactId>taglist-maven-plugin</artifactId>
225+
<version>3.2.2</version>
226+
<configuration>
227+
<tagListOptions>
228+
<tagClasses>
229+
<tagClass>
230+
<displayName>Todo Work</displayName>
231+
<tags>
232+
<tag>
233+
<matchString>TODO</matchString>
234+
<matchType>ignoreCase</matchType>
235+
</tag>
236+
<tag>
237+
<matchString>FIXME</matchString>
238+
<matchType>ignoreCase</matchType>
239+
</tag>
240+
</tags>
241+
</tagClass>
242+
</tagClasses>
243+
</tagListOptions>
244+
</configuration>
245+
</plugin>
246+
<!-- Dependency analysis report -->
247+
<plugin>
248+
<groupId>org.apache.maven.plugins</groupId>
249+
<artifactId>maven-dependency-plugin</artifactId>
250+
<version>3.10.0</version>
251+
<reportSets>
252+
<reportSet>
253+
<reports>
254+
<report>analyze-report</report>
255+
</reports>
256+
</reportSet>
257+
</reportSets>
258+
</plugin>
259+
</plugins>
260+
</reporting>
261+
</project>

0 commit comments

Comments
 (0)