Skip to main content

Cascade Component Re-evaluation API

When Nexus Repository Managers are deployed in multiple locations for distributed environments, a same component can exist in multiple repositories across different Repository Manager instances.

When a policy waiver is created with the Repository Managers scope, the waiver applies globally. However, the component must still be re-evaluated in each repository before it is released from quarantine. Manually re-evaluating the component in every repository can be time-consuming and error-prone. The Cascade Component Re-evaluation API automates this process.

How the API works

The Cascade Component Re-evaluation API executes the task in the following sequence

  1. Accepts a component hash as input

  2. Locates all repositories that contain the specified component

  3. Triggers re-evaluation for each repository asynchronously

  4. Provides a status endpoint to track progress and results

Cascade Re-evaluation Lifecycle

To start an asynchronous re-evaluation of a component across all repositories, use the end point given below.

POST /api/v2/firewall/repositories/cascade-reevaluate/componentHash/{componentHash}

The response returns a URL that you can use to check the status of the asynchronous operation. For example:

{
  "statusUrl": "api/v2/malware-defense/repositories/cascade-reevaluate/status/30a4cc9740a44f96910b8810766bbf1b"
}

Request Status

To monitor the progress of a cascade re-evaluation request, check the status of the request by using the following end point:

GET /api/v2/malware-defense/repositories/cascade-reevaluate/status/{statusId}

The following table describes various states of the cascade re-evaluation request:

State

Description

PENDING

The request has been accepted but processing has not started.

IN_PROGRESS

Re-evaluation is running for one or more repositories.

COMPLETED

Processing has finished for all repositories.

NO_COMPONENTS_FOUND

The specified component hash was not found in any repository.

Repository Level Results

The status response groups repositories based on their processing outcome.

Status

Description

evaluated

Repositories where re-evaluation has completed.

pending

Repositories that have not finished processing.

failed

Repositories where re-evaluation could not be completed.

For repositories listed under evaluated state, the response includes a quarantined field. This field indicates whether the component remains in quarantine after re-evaluation.

Note

A component can remain quarantined if repositories enforce any repository specific policies.

Failures can occur during processing. When this happens, the request still reaches the COMPLETED state and the failed repositories are listed under failed state. Failures do not prevent successful re-evaluation of other repositories.