Vasil Ilchev
20768a550c
Sync property naming convention ( #2664 )
...
Co-authored-by: vasilchev <vasil.ilchev@bosch.com >
2025-09-10 14:55:51 +03:00
Avgustin Marinov
2d45e2a76c
Fix Json serializer defaults ( #2663 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-09-10 10:56:19 +03:00
Avgustin Marinov
1f71e01318
Implement JSON security context serializer (new default) - smaller info and human readable ( #2652 )
...
keeps backward compatibility by being able to fallback to JAVA_SERIALIZATION
+ fix DMF messages with status code
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-09-05 13:35:45 +03:00
Avgustin Marinov
2a636328a0
20250828 cleanup ( #2639 )
...
* Cleanup
* Refactor artifact management
2025-09-02 16:08:14 +03:00
Avgustin Marinov
b4edde8cc3
Refactor Management interfaces: find/get pattern ( #2609 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-08-15 16:18:32 +03:00
Avgustin Marinov
441b78460d
Improve Permission Management ( #2604 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-08-12 14:09:27 +03:00
Avgustin Marinov
124fef189e
Remove Rollout(Group) builders ( #2603 )
...
* Fix entityManager.merge for ds and sm
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
* Remove Rollout(Group) builders
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
* Remove EntityFactory
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
---------
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-08-11 14:01:03 +03:00
Avgustin Marinov
bff77ac224
Cleanup TargetManagement ( #2601 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-08-08 13:13:28 +03:00
Avgustin Marinov
c038c507a9
TargetManagement over RepositoryManagement ( #2599 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-08-07 17:20:22 +03:00
Avgustin Marinov
6aa8ccaa9c
Refactor DS Management ( #2591 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-08-05 15:45:41 +03:00
Avgustin Marinov
43f717fc8d
Improve JsonBuilder's ( #2585 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-08-04 12:54:12 +03:00
Avgustin Marinov
08cacf9034
Soft Module metadata as complex map value ( #2568 )
...
---------
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-07-30 17:29:02 +03:00
Vasil Ilchev
4a8e60764f
Remote Events migrated from Spring Bus to Spring Cloud Stream ( #2563 )
...
* Remote Events migrated from Spring Bus to Spring Cloud Stream
---------
Co-authored-by: vasilchev <vasil.ilchev@bosch.com >
2025-07-30 16:58:00 +03:00
Avgustin Marinov
2b66449ff1
Fine grained repository permissions ( #2562 )
...
1. Introduce @PrreAuthorize check based on hasPermission - allowing custom processing (compared with non-modifiable hasAuthority/Role processing)
2. Dedicated permissions could be implemented on management api level. Check is made by plugged in PermissionEvaluator
3. Thus common XXX_REPOSITORY permissions could differ for extending services
4. Change create/update entity builder pattern - not via EntityFactory but via clean static lombok based builders (with fine fluent api).
5. Implement abstract repository management jpa class that handles the boilerplate code from extending classes in single place consistently -> AbsreactJpaRepositoryManagement
6. Register management api-s as **Sevice**-s instead of **Bean**-s in order to make easier maintainable and get away from heavy argument forwading
7. Simplify custom hawkbit repository registration + adding proxy to handle exception mapping at lower level - thus not depending on Aspects for converting exceptions
8. Implemented general purpose 'copy' utility (ObjectCopyUtil) that using getter/setter patterns is able to copy (e.g. Create/Update) objects to other objects (e.g. JPA entity objects)
2025-07-28 14:57:33 +03:00
Avgustin Marinov
e7373275bf
Add distribution set and target type fine grained permissions ( #2545 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-07-14 14:52:36 +03:00
Avgustin Marinov
21581c4ea4
Fine-grained permissions ( #2535 )
...
* Fine-grained permissions
Adds support for permissions of type <permission>(/<rsql filter scope>)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
* Apply review fixes
---------
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-07-10 13:51:49 +03:00
Avgustin Marinov
edd6dabb90
Move artifact encryption to hawkbit-artifact-api where it does belong ( #2540 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-07-10 11:57:44 +03:00
Avgustin Marinov
7f97d6f441
Add support for pollingTime overrides ( #2533 )
...
* Add support for pollingTime overrides
* the current format HH:mm:ss is still supported
* add option for deviation percent (HH:mm:ss~\d{1,2}%) which allows the system to do some randomizing of the poll interval
* add support for overriding default polling time interval for devices matching some RSQL filters (in order), e.g. 01:00:00~10%, group == 'eu' -> 00:02:00~15%, status != in_sync -> 00:05:00
* IMPORTANT: overdue time is calculated according to the default polling time. So, the overdue status might be incorrect for targets with overridden poll interval
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
* Remove min polling time from the tenant config - it is a system configuration
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
* Add support for bigger poll intervals and overdue + duration format config support
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
---------
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-07-07 16:33:55 +03:00
Avgustin Marinov
8c6d56f177
Make some test timeouts (await) configurable ( #2525 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-07-02 12:45:26 +03:00
Avgustin Marinov
bdbc658ea9
Fix Sonar findings - DdiRootController unused ( #2524 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-07-02 10:29:03 +03:00
Avgustin Marinov
affae1026a
Improve Spring Bus usage (remove stream direct use) ( #2521 )
...
* Improve Spring Bus usage (remove stream direct use)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
* Remove getApplicaton when creating remote events
---------
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-07-02 08:32:55 +03:00
Avgustin Marinov
ef25aa59f0
Fix new line after @Test ( #2486 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-06-20 17:42:55 +03:00
Avgustin Marinov
cb7f1107fe
Remove allure (phase2) ( #2483 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-06-20 15:51:06 +03:00
Avgustin Marinov
2992f5c211
Refactor management api style ( #2445 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-06-10 17:09:03 +03:00
Avgustin Marinov
3e1d6b6dca
Remove OpenAPI registration ( #2440 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-06-09 17:57:06 +03:00
Avgustin Marinov
5a304af165
Fix swagger config ( #2437 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-06-09 13:21:24 +03:00
Avgustin Marinov
32ad93c59c
Tune Swagger doc ( #2436 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-06-09 12:52:55 +03:00
Avgustin Marinov
64ee8b9906
JpaSoftwareModule#metadata made map ( #2412 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-05-21 16:59:25 +03:00
Denislav Prinov
7aa33cd96b
Refactoring the audit log message -> description field
...
Signed-off-by: Denislav Prinov <denislav.prinov@bosch.com >
2025-04-22 08:11:53 +03:00
Denislav Prinov
23154d70cc
Audit Logging in HawkBit ( #2314 )
...
* Introduction of Audit Logging in hawkBit
Signed-off-by: Denislav Prinov <denislav.prinov@bosch.com >
* Introduction of Audit Logging in hawkBit
Signed-off-by: Denislav Prinov <denislav.prinov@bosch.com >
* Refactoring:
* applied code formatter
* audit moved into hawkbit-security-core
* minimize dependences
* use AuditorAware to retrieve user - so to be compatible with the logs into DB
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
* Move audit entities to security core
Signed-off-by: Denislav Prinov <denislav.prinov@bosch.com >
* Introduce audit log method types
Signed-off-by: Denislav Prinov <denislav.prinov@bosch.com >
---------
Signed-off-by: Denislav Prinov <denislav.prinov@bosch.com >
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
Co-authored-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-03-31 08:51:54 +03:00
Avgustin Marinov
21ec2e581a
Fix AMQP retries when attribute characters are invalid ( #2327 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-03-26 16:53:48 +02:00
Avgustin Marinov
beda747c67
Remove unnecessary JsonProperty annotations ( #2296 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-02-25 08:40:14 +02:00
Avgustin Marinov
0fc076aaca
Optimize DB usage on DDI REST API calls ( #2264 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-02-07 12:32:51 +02:00
Avgustin Marinov
4e59c6c8cc
Fix: don't create action status per progress event ( #2262 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-01-31 13:32:09 +02:00
Avgustin Marinov
406f420f4d
[ #1249 ] Don't create action statuses to log range downloads ( #2261 )
...
In case of range request:
* there could be too many action checks
* there could be too many action statuses - filling the db and hitting the quote
So, this PR skip action existing check and skip logging (following the approach
from #1331 PR by @zyga)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-01-31 13:04:11 +02:00
Avgustin Marinov
881900600f
Sonar Fixes ( #2243 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-01-27 16:46:28 +02:00
Avgustin Marinov
fbaa352f7f
Sonar Fixes (10) ( #2222 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-01-23 16:48:24 +02:00
Avgustin Marinov
a0d149cc1d
Sonar Fixes (9) ( #2221 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-01-23 15:02:03 +02:00
Avgustin Marinov
bb9c9bfad8
Remove some of the field injections (Sonar recomendtion) ( #2218 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-01-23 09:52:29 +02:00
Avgustin Marinov
567e8b38f1
Sonar Fixes (5) ( #2211 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-01-21 11:20:50 +02:00
Avgustin Marinov
e317a38d6d
Fix SonarQube issues (3) ( #2206 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-01-20 17:04:07 +02:00
Avgustin Marinov
5dabe9117a
Fix SonarQube issues (2) ( #2205 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-01-20 16:29:45 +02:00
Avgustin Marinov
b294798ae5
SystemManagement getTenantMetadata - fetch details, added method getTenantMetadataWithoutDetails ( #2194 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-01-10 15:37:57 +02:00
Avgustin Marinov
6504bc26d9
Refactoring of RepostioryManagement and extending classes ( #2174 )
...
* createMetaData renamed to putMetaData
* getXXX methods returing Optional are renamed to findXXX
* unified method order (code cosmetics)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-01-08 14:03:04 +02:00
Avgustin Marinov
c38f28d5a7
Upgrades spring to 3.4.0 ( #2154 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2024-12-20 11:30:51 +02:00
Avgustin Marinov
39861e7790
Refactor action repository ( #2118 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2024-12-05 11:41:41 +02:00
Vasil Ilchev
b4215a9d76
Add timestamp to Actions ( #2113 )
...
* Add timestamp to Actions
Signed-off-by: Vasil Ilchev <Vasil.Ilchev@bosch.com >
* Add Timestamp to All Actions Feedback DDI/DMF
* After review
* Removed Action timestamp as we have timestamp in each ActionStatus so use that instead
* Unify to use everywhere System.currentTimeMillis()
* Add constructor w/o timestamp to DmfActionUpdateStatus
---------
Signed-off-by: Vasil Ilchev <Vasil.Ilchev@bosch.com >
Co-authored-by: vasilchev <vasil.ilchev@bosch.com >
2024-12-04 09:53:10 +02:00
Avgustin Marinov
a9f3d1491a
JPA Refactoring (3) ( #2109 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2024-12-02 13:50:06 +02:00
Avgustin Marinov
794f26bea2
JPA Refactoring (2) ( #2108 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2024-12-02 11:52:30 +02:00
Avgustin Marinov
a3468b2ba9
Fix some issues found by qodana ( #2083 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2024-11-19 17:04:19 +02:00