Apache Maven Distribution Tools

Clone this repo:
  1. 9f863a2 link to release content in catalog by Hervé Boutemy · 52 minutes ago master
  2. 4c61cb8 add link to releases catalog project_releases.json by Hervé Boutemy · 5 hours ago
  3. 8ea255d add -4.x releases when available by Hervé Boutemy · 17 hours ago
  4. 630a0df point to ATR config of KEYS management by Hervé Boutemy · 23 hours ago
  5. 6bca1d4 rework native values by Hervé Boutemy · 23 hours ago

Apache Maven Distribution Tool

Apache License, Version 2.0, January 2004 Jenkins Status

Maven Distribution Tool is a tool executed daily on Maven CI server to produce a report of the different checks done on our releases.

Quick Build

mvn verify site

Configuration

API_TOKEN (currently disabled)

The API_TOKEN environment variable is needed by the two Jenkins reports (list-master-jobs and list-branches), since ci-maven.apache.org doesn't allow anonymous access to its JSON API. It is a Base64-encoded username:apitoken string used for HTTP Basic Authentication.

Everything else (gitbox, maven.apache.org, dist/archive.apache.org, lists.apache.org) is read anonymously. Without the token the two reports still build, but come out empty.

Generating the Token

  1. Log in to the Apache Jenkins instance.
  2. Click your username in the top-right corner to open your user profile.
  3. Navigate to Security (or go directly to https://ci-maven.apache.org/user/<your-username>/security/).
  4. Under API Token, click Add new Token, give it a name, and click Generate.
  5. Copy the generated token — it will not be shown again.

Setting the Environment Variable

Base64-encode your Jenkins username and API token, then export it:

export API_TOKEN=$(echo -n 'your-username:your-api-token' | base64)

You can add this to your shell profile (~/.bashrc, ~/.zshrc, etc.) for persistence.

Usage

  • Local build with site reports: mvn verify site — the reports use API_TOKEN to fetch data from Jenkins.
  • Integration tests: mvn failsafe:integration-test — the token is passed to the failsafe plugin via the API_TOKEN environment variable.
  • CI (Jenkins): The token is automatically injected via the withCredentials binding in the Jenkinsfile using the API_TOKEN credential ID.