Skip to content

Automation for OpenJ9 API doc #638

@AdamBrousseau

Description

@AdamBrousseau

Automate the generation of API doc for OpenJ9. Simon Rushton added the ARCHIVE_JAVADOC: true param to the nightly builds to generate API doc for Java 8 and 11, now we need a process to get that into the hosted user doc. Here are suggested steps, kicked off when a developer commits an update that includes API doc comments in the code:

  1. Run a compile after every PR is merged so that only a single PR is "tested" for doc changes. Specify the ARCHIVE_JAVADOC: true param to generate the API doc.
  2. Create a branch on the functional ID's fork of openj9-docs repo.
  3. Take the docs zip from the compile, extract and move as necessary to overlay (populate the docs/api/jdk8 and docs/api/jdk11 folders), check for changes, commit, push a branch to the bot account's fork.
  4. Open a PR to commit the update to the openj9-docs repo.
  5. Add a "Jenkins doc stage" comment to the PR, to stage the update in the OpenJ9 draft docs.
  6. Possibly send a notification to the developer that the draft API doc is ready to be checked (with a link), or the build instructions tell developers to look the following day (if we compile nightly), or the instructions tell developers to look for a relevant PR in the openj9-docs repo.

ID team can then merge the PR manually once a feature is definitely in the release, like they do already for user doc.

Build instructions will need updating to explain.

Possible TODO list:

  • Merge builds (per jdk version) (on the fastest platform) with ARCHIVE_JAVADOC true
  • Follow-up build to pull javadoc, overlay, commit, push
  • Tie together merge build and api doc build
  • Automated PR from new branch
  • Kick off doc stage from PR
  • Ping @ dev who made change from PR

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions