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
10da0288d9
Fix sonar findings ( #2572 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-07-30 10:13:23 +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
70032d1a0b
Fix sonar findings ( #2526 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-07-02 13:36:04 +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
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
cd2c68081f
Refactor RabbitMQ configuration ( #2519 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-06-30 15:50:30 +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
044963f84c
Implement release as github action ( #2452 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-06-16 14:43:17 +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
4c5714ecb4
Remove Log4j dependencies ( #2374 )
2025-04-25 16:21:54 +03:00
Avgustin Marinov
323738bda9
Remove flywat from DDI & DMF servers ( #2370 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-04-24 16:27:48 +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
Avgustin Marinov
de4e58d0ee
Add robots.txt to servers - not for bots ( #2358 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-04-15 15:13:36 +03:00
Avgustin Marinov
36fa915cbc
Improve @Value properties ( #2352 )
...
Implement recommendation from https://docs.spring.io/spring-boot/reference/features/external-config.html to use kebab case for @Values:
If you do want to use @Value, we recommend that you refer to property names using their canonical form (kebab-case using only lowercase letters). This will allow Spring Boot to use the same logic as it does when relaxed binding @ConfigurationProperties.
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-04-11 16:46:34 +03:00
Avgustin Marinov
2b270ddad7
Provide option to disable distributed lock ( #2350 )
...
by setting hawkbit.lock=inMemory the distributed lock could be disabled, e.g. on DDI/DMF servers
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-04-09 15:36:57 +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
b2dcc19f5d
[ #2191 ] Remove DB2 and MS SQL support ( #2321 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-03-20 13:43:56 +02:00
Avgustin Marinov
822cabd19d
DMF API Java 8 compatible ( #2310 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-03-06 14:01:45 +02:00
Avgustin Marinov
aa1db31cd5
Return the old bahavior of DmfActionUpdateStatus 2 args constructor ( #2303 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-02-26 12:03:28 +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
76ce1cf052
Cleanup and improve the controller authentication ( #2287 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-02-18 15:10:16 +02:00
Avgustin Marinov
e6c8215d05
Sonar Fixes ( #2229 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-01-24 10:08:31 +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
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
626d4cc537
Add getting tenant with details ( #2195 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2025-01-14 09:32:16 +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
af50e8c938
Fix portable event on setting confirmation status ( #2146 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2024-12-12 12:37:03 +02:00
Avgustin Marinov
1450115061
Ensure different group schedule and start event on rollout start ( #2144 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2024-12-12 09:50:05 +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
43c4083d0d
Add MaridDB java client into runtimes ( #2111 )
...
And remove dedicated mysql image - as the driver is available into the default one
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2024-12-02 15:13:46 +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
ebcb6a0b29
[ #1700 ] Remove sandbox ( #2105 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2024-11-27 08:14:52 +02:00
Avgustin Marinov
016bada08b
Fix unused tenant param in AmqpMessageDispatcherService ( #2101 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2024-11-23 11:15:56 +02:00
Avgustin Marinov
37dea970d2
Fix EventPublisherAuthConfiguration to run as system ( #2099 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2024-11-22 17:59:25 +02:00
Avgustin Marinov
4de34eacc3
Fix AmqpMessageDispatcherServiceTest.testSendCancelRequest - set action tenant ( #2098 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2024-11-22 17:36:07 +02:00
Avgustin Marinov
9df68e2d97
Fix DMF context (as system) ( #2097 )
...
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2024-11-22 15:32:00 +02:00
Avgustin Marinov
e41c0efd3d
Add postgress docker compose examples + Flyway Modularity Support ( #2089 )
...
* added postgress docker compose examples
* move mysql flyway into server (remove from hawkbit-repository-jpa-flyway)
* in starters is added posgress and sqlserver flyway support - see [Flyway Modularity](https://github.com/flyway/flyway/issues/3780 )
_release_notes_
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2024-11-20 18:08:11 +02:00
Avgustin Marinov
9bce89fcb8
Revert adding mariadb ( #2087 )
...
* Revert "Add mariadb-java-client to the server images (#2086 )"
This reverts commit 8d3aa7c9ce .
* Revert adding mariadb as runtime dependency - resticted license
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
---------
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2024-11-20 15:52:01 +02:00
Avgustin Marinov
8d3aa7c9ce
Add mariadb-java-client to the server images ( #2086 )
...
So, they will be ready to connect to mysql
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com >
2024-11-20 09:57:36 +02:00