-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New search endpoint #6910
base: develop
Are you sure you want to change the base?
New search endpoint #6910
Conversation
jdbc/src/main/java/io/kestra/jdbc/repository/AbstractJdbcFlowRepository.java
Outdated
Show resolved
Hide resolved
jdbc/src/main/java/io/kestra/jdbc/repository/AbstractJdbcFlowRepository.java
Outdated
Show resolved
Hide resolved
webserver/src/main/java/io/kestra/webserver/controllers/api/ExecutionController.java
Show resolved
Hide resolved
webserver/src/main/java/io/kestra/webserver/controllers/api/LogController.java
Outdated
Show resolved
Hide resolved
core/src/main/java/io/kestra/core/converters/QueryFilterFormatBinder.java
Outdated
Show resolved
Hide resolved
Thinking about it lately, and we sometimes have a By this, all endpoints named would be aligned. |
I'm sharing the point of view of @loicmathieu , we should not introduce a breaking change on the
Existing endpoints should just map the params to the new filters and deprecate existing ones. Agree, that we should align the naming for endpoints but not sure we have to deprecate existing
Then, in a few versions all deprecated params would have been removed. I think that's what Ludo had in mind. |
13562f1
to
4ec16c5
Compare
@loicmathieu @fhussonnois For the /search endpoints, I kept the old parameters and added the new QueryFilters as suggested. So now, you can use both the old and the new parameter format. |
this shouldn't be merged in 0.21 as it's not fully finished topic - FE related issue #7051 |
jdbc/src/main/java/io/kestra/jdbc/repository/AbstractJdbcTriggerRepository.java
Outdated
Show resolved
Hide resolved
webserver/src/main/java/io/kestra/webserver/controllers/api/ExecutionController.java
Show resolved
Hide resolved
webserver/src/main/java/io/kestra/webserver/utils/TimeLineSearchUtils.java
Outdated
Show resolved
Hide resolved
webserver/src/main/java/io/kestra/webserver/utils/TimeLineSearchUtils.java
Outdated
Show resolved
Hide resolved
Two important things to enderstand:
|
webserver/src/main/java/io/kestra/webserver/controllers/api/LogController.java
Show resolved
Hide resolved
1397e32
to
7b083c8
Compare
06f991f
to
49ca572
Compare
Create operation enum for search Add custom parser for filter[field][operation]=value format create new Annotation @QueryFilterFormat to bind to specfic pojo Feat filter: Implement new abstract rapo method Implement the find elasticsearch implementation Feat filter WIP: Implement the find search method of the flow repository Feat filter WIP: Create new enum for all fields Add the list of fields with their allowed operation Feat filter WIP: expose list fields with their supported operation in the config api Feat filter WIP: Handle scope and lables in the query filters mapper Feat Filter (WIP): change the binder parser to handle key value format change all /search endpoint change all filter jdbc implementation based on the filters list Feat Filter (WIP): Add the @inherited annotation to propagate to the override methods Feat Filter (WIP): Fix the abstract unit tests Feat Filter (WIP): Handle the state.type fields Feat Filter (WIP): Handle the childfilter fields handle to snake case column name Feat Filter (UNIT TEST REFACTORING): handle to snake case column names Feat Filter (UNIT TEST REFACTORING): refacto columnName with DSL.quoteName Feat Search (Fix Unit Test) : refactor the geenric method filter repo use the specific labels condition Feat Search (Fix Unit Test) : use the specific labels condition for execution lables Feat Search (Fix Unit Test) : use the specific labels condition for execution labels Feat Search (Fix Unit Test) : use the specific labels condition for execution labels Refactoring: code clean up Unit test Fix: Fix the specific log level filter Unit test Fix: Refactor Execution controller to handle time range and dates Unit test Fix: Refactor task controller to handle time range and dates Unit test Fix: Refactor flow controller test for the search endpoint Unit test Fix: Refactor log controller unit test for the new /search endpoint Refactor: Add method extract query from list filters Change the scope list to mutable Feat Filter: Add scope handling in jdbc query Feat Filter: fix cast to ChildFilter Feat Filter: Synchronise with develop Feat Filter: Rollback deprecated params for all /search endpoints Feat Filters: Fix the received list of values in filter params Feat Filters: Add unit test for utils classes Feat Filters: Remove unused query params Refacto Filter: Create new QueryFilter utils class add deprecated on all fields /Search endpoint Refactor unit test AbstractExecutionRepository Use only one filter for end_date and start_date Use only one filter for end_date and start_date
49ca572
to
f90aa7d
Compare
Quality Gate failedFailed conditions |
WIP:
Update all the search endpoints to use the new implementation.
Create a new binding annotation to parse filters in the new format.
Update the JDBC implementation to handle operation-specific filters.
TODO:
Fix the unit tests.
Finalize changes for specific fields in the search functionality.