Add resource collection /rest/v1/actions to Management REST API (#1299)

* Initial commit

Signed-off-by: Stefan Behl <stefan.behl@bosch.io>

* Added filtering by RSQL

Signed-off-by: Stefan Behl <stefan.behl@bosch.io>

* Support for filtering actions by distribution set, target, rollout

* Added REST docs

* Fixed REST docs

* Introduce a config property which allows to disable the actions endpoint

* Introduce representation mode parameter

* Adapt REST docs

* Incorporate review findings

* Adapt REST docs

* Improve unit tests

* Minor improvements

* Fix REST docs

* Fix REST docs

* Fix PR review findings

Signed-off-by: Stefan Behl <stefan.behl@bosch.io>
This commit is contained in:
Stefan Behl
2023-01-10 17:19:05 +01:00
committed by GitHub
parent 27872282f5
commit d7796121d1
19 changed files with 1046 additions and 37 deletions

View File

@@ -217,6 +217,16 @@ public interface DeploymentManagement {
@PreAuthorize(SpringEvalExpressions.HAS_AUTH_READ_TARGET)
long countActionsAll();
/**
* Counts the actions which match the given query.
*
* @param rsqlParam
* RSQL query.
* @return the total number of actions matching the given RSQL query.
*/
@PreAuthorize(SpringEvalExpressions.HAS_AUTH_READ_TARGET)
long countActions(@NotNull String rsqlParam);
/**
* Counts all actions associated to a specific target.
*
@@ -274,6 +284,19 @@ public interface DeploymentManagement {
@PreAuthorize(SpringEvalExpressions.HAS_AUTH_READ_TARGET)
Slice<Action> findActionsAll(@NotNull Pageable pageable);
/**
* Retrieves all {@link Action} entities which match the given RSQL query.
*
* @param rsqlParam
* RSQL query string
* @param pageable
* the page request parameter for paging and sorting the result
*
* @return a paged list of {@link Action}s.
*/
@PreAuthorize(SpringEvalExpressions.HAS_AUTH_READ_TARGET)
Slice<Action> findActions(@NotNull String rsqlParam, @NotNull Pageable pageable);
/**
* Retrieves all {@link Action} which assigned to a specific
* {@link DistributionSet}.