Skip to content

Maven for Java Build Pipelines

issuelens[bot] edited this page Oct 12, 2026 · 4 revisions

Maven for Java build pipelines

Azure Pipelines JDK

The Maven for Java Azure Pipelines use JDK 25 for the affected validation, CI build, nightly, and release-candidate build jobs:

  • .azure-pipelines/ci.yml downloads and installs the Microsoft JDK 25 Linux archive before the CFS-validation and non-pull-request build-plugin jobs.
  • .azure-pipelines/nightly.yml and .azure-pipelines/rc.yml download and install the Microsoft JDK 25 Windows archive before npm run build-plugin.

This is pipeline configuration only; it does not establish a product runtime requirement or a release/deployment state.

GitHub Actions UI-test workflow

At the cited source revision, .github/workflows/ci.yml pins actions/setup-java to de7274f081f381c8f8158605e0321c36c376e2e6 (v6.0.1) for the Temurin JDK 25 setup steps in both the build and autotest jobs. This records workflow configuration only; it does not show that a CI run completed.

Team-memory maintenance workflow

At d83e339b4a1cbeb7ba3f39fbabce179786909a23 (PR #1224), the Maven repository's .github/workflows/team-memory-post-merge.yml, on, permissions, and jobs.dispatch, configures a dispatch-only caller named Queue IssueLens Team Memory:

  • It triggers only on pushes to main. The job requires ISSUELENS_TEAM_MEMORY_ENABLED == 'true', repository microsoft/vscode-maven, a ref matching the event repository's default branch, a push event, github.workflow_sha == github.sha, and false created, deleted, and forced flags. The explicit main trigger does not automatically follow a default-branch rename.
  • The ubuntu-latest job has a 10-minute timeout and empty workflow-level permissions, with no job permission override. Unlike the former direct caller, it does not grant its GITHUB_TOKEN Contents/Pull requests read or OIDC write permissions.
  • Its first step uses actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 (v3.2.0), requesting an installation token restricted to microsoft/vscode-java-pack with Contents read and Actions write. That dispatch token is separate from authorization and App access for wiki publication.
  • Its second step invokes microsoft/IssueLens/.github/actions/queue-team-memory@a81d2d96167fc0e69ac631c2edc85f858e693289, explicitly targeting microsoft/vscode-java-pack, team-memory-coordinator.yml, and coordinator ref main, independently of the source ref.
  • The caller supplies exactly five string fields: source_repository from github.repository, source_run_id from github.run_id, source_run_attempt from github.run_attempt, push_before from github.event.before, and push_after from github.sha.
  • The source workflow no longer declares workflow_dispatch or concurrency, and contains no checkout, direct IssueLens agent invocation, Azure login, or fallback invocation. This supersedes the PR #1220 local manual-PR entry point, per-range/per-PR concurrency, and direct issuelens action. For existing coordinator documentation and its separate manual-recovery entry point, see Java Pack — Central coordinator and manual recovery; coordinator implementation was not revalidated as part of this Maven-only change.

The historical maintenance documentation, “Maintenance and provenance” records the shared-wiki requirement for paired destination/base checks and conflict reconciliation. Its description of source-local concurrency belongs to the superseded direct-caller configuration, not the dispatch-only workflow above.

The complete PR #1224 inventory contains only this workflow; its full patch and file at the merged/source-tip SHA above were inspected, and PR base/head/merge metadata was rechecked after paging. These findings establish caller configuration, not external action internals, coordinator queue admission, delivery guarantees, installed App permissions, credential availability, or successful hosted execution. An accepted dispatch or merge alone does not establish wiki publication. No tests were run here, and no release or deployment state is implied.

Evidence

Clone this wiki locally