Adjust site build workflow to preserve build artifact history

Adjusts the workflow building and publishing the website to the site
branch to preserve the history of the site branch.

This was done to avoid issues with the Apache backend caused by
force-pushing the new build results to an orphan branch every time.

This new behavior is a bit more brittle than the old one as it relies on
the current state of the site branch. The action will fails if the site
branch is not already present. Additionally, it might also fail if the
branch is in an unexpected state. But, as the action removes all
existing resources, this should be unlikely.

To resolve any issues caused by a missing or corrupted site branch, a
future commit will introduce a recovery workflow that can be used to
manually return the site branch to a usable base state.
1 file changed
tree: 29fa78334cf65b42d75c0349ab2ef2298e8fedee
  1. .github/
  2. docs/
  3. src/
  4. .asf.yaml
  5. .asf.yaml.publish
  6. .gitattributes
  7. .gitignore
  8. .htaccess
  9. CONTRIBUTING.md
  10. LICENSE.txt
  11. pom.xml
  12. README.md
README.md

JDO Website

This repository contains the sources for the Apache DB JDO website.

The website is mirrored on https://apache.github.io/db-jdo-site/.

Building the Site

The content and styling of the site is defined in the AsciiDoc format. It is built using Maven.

The site can be built by calling mvn clean compile. This generates the HTML files in target/site.

Adding Javadoc

The site contains a packaged version of the JDO API javadoc. It can be updated as follows:

  • Create the javadoc jar (e.g. jdo-api-3.2-javadoc.jar) in the db-jdo repository by calling mvn clean install -Papache-release in the api submodule.
  • Create a new folder under docs e.g. docs/api32.
  • Copy the javadocs jar info the new folder: e.g. cp jdo-api-3.2-javadoc.jar docs/api32.
  • Create a new subfolder docs/api32/jdo-api-3.2-javadoc
  • Unpack the javadoc jar in the subfolder
  • Edit javadoc.adoc under src/main/asciidoc and create a new section ‘JDO 3.2 javadoc’.
  • Add two links: one referring index.html in the subfolder and one referring the javadoc jar.

Contributing to the Site

Contributions to the website are always appreciated. If you are new to this project, please have a look at our Get Involved page first.

This repository contains the JDO website source.

  • The AsciiDoc sources can be found in src/main/asciidoc.
  • The website menu is defined in src/main/template.
  • The converter for migrating the old HTML files to AsciiDoc can be found in src/main/java

Contributions to this repository follow the default GitHub workflow using forks.

To contribute changes, you can follow these steps:

  • Adapt the AsciiDoc files in src/main/asciidoc or the website menu in src/main/template.
  • Call mvn clean compile to build the site and verify the generated website by viewing it locally with a web browser.
  • Commit the source changes (not the build artifacts) and open a pull request.

TODO