Commit Graph

1321 Commits

Author SHA1 Message Date
Stanislav Trailov
f9bb49d33e Remove table alias on SET when stopping rollouts (#3002)
Signed-off-by: strailov <Stanislav.Trailov@bosch.io>
2026-04-07 16:56:55 +03:00
Avgustin Marinov
dd593677fd Fix stop rollout when using PosgreSQL (2) (#3000)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2026-04-07 09:59:34 +03:00
Stanislav Trailov
5498a79534 Fix stop rollout when using PostgreSQL (#2996)
Signed-off-by: strailov <Stanislav.Trailov@bosch.io>
2026-04-07 08:23:31 +03:00
Stanislav Trailov
e9acb301f2 fix flaky controller management test (#2986)
Signed-off-by: strailov <Stanislav.Trailov@bosch.io>
2026-03-30 11:24:17 +03:00
Stanislav Trailov
ba3a08e560 Add Target Poll Event in Service Events (#2981)
* Add Target Poll Event in Service Events

Signed-off-by: strailov <Stanislav.Trailov@bosch.io>

* Target poll event to service event

Signed-off-by: strailov <Stanislav.Trailov@bosch.io>

---------

Signed-off-by: strailov <Stanislav.Trailov@bosch.io>
2026-03-27 10:18:37 +02:00
Stanislav Trailov
f2615fe812 Modify TargetPollEvent to be per batch update (not per target) (#2965)
* Modify TargetPollEvent to be per batch update (not per target)

Signed-off-by: strailov <Stanislav.Trailov@bosch.io>

* Get use of remote event's timestame for targetPollEvent

Signed-off-by: strailov <Stanislav.Trailov@bosch.io>

* Revert "Get use of remote event's timestame for targetPollEvent"

This reverts commit 27e3b740e2bb0b02cad1d5a6137db7928901f069.

---------

Signed-off-by: strailov <Stanislav.Trailov@bosch.io>
2026-03-25 09:29:23 +02:00
Stanislav Trailov
4375cd0887 Increase TTL & refresh for DistributedLockTest (#2972)
Signed-off-by: strailov <Stanislav.Trailov@bosch.io>
2026-03-24 11:00:55 +02:00
Avgustin Marinov
011d7f567e Refactor header authority controller authentication (#2954)
1. (breaking changes) hawkbit.server.ddi.security.rp.cnHeader and sslIssuerHashHeader are renamed to controllerIdHeader and authorityHeader correspondingly.
2. (breaking changes) their default values are changed: X-Ssl-Client-Cn -> X-Controller-Id and X-Ssl-Issuer-Hash-%d -> X-Authority
3. Now the authority header configuration is not a string forma but just a string. The implemenation checks for this header as comma or ; separated list or seeks for header iteration <authority_header>-%d (iteration starts from 0 or 1
4. Doc fixed
5. As there are breaking changes configuration changes may be needed: a) with changing the hawkbit.server.ddi.security.rp you could turn back the previous default headers (note X-Ssl-Issuer-Hash-%d shall now be X-Ssl-Issuer-Hash), or b) you may change the headers sent by the reverse proxy

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2026-03-12 10:36:37 +02:00
Avgustin Marinov
a1608cce19 Remove DB migrations up to 1.0.0 baseline (#2953)
For the existing DBs the 0.10.0 release shall be applied before hawkbit 1.0.0!

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2026-03-09 16:58:31 +02:00
Vasil Ilchev
51e3e3f806 Add rollout_group index on parent column (#2952) 2026-03-06 16:02:47 +02:00
Avgustin Marinov
7a642f564e Remove the ROLE_CONTROLLER_ANONYMOUS (#2948)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2026-03-05 10:01:43 +02:00
Avgustin Marinov
b38df5b512 WithUser refactoring (#2944)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2026-02-27 14:30:52 +02:00
Avgustin Marinov
5d043b2766 Improve WithUser testing (#2943)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2026-02-27 12:59:13 +02:00
Vasil Ilchev
937195af1e Tenant Configuration values varchar to text - support bigger values f… (#2938)
* Tenant Configuration values varchar to text - support bigger values for configs
access_control_context varchar to text - support bigger values for configs

* Add size constraint in App for Tenant 'conf.value' and rollout/target_filter_query 'access_control_context

* add explicitly not null constraint for clarity
2026-02-26 12:15:43 +02:00
Avgustin Marinov
14f754b30e Remove HawkbitEclipseLinkJpaDialect sync workaround - already in Spring (#2940)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2026-02-26 08:58:08 +02:00
Avgustin Marinov
3ec7350624 Add Multi-Tenancy delete methods (#2937)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2026-02-25 14:11:31 +02:00
Avgustin Marinov
56da119979 Remove SYSTEM_ADMIN (#2936)
Not needed. Overlaping with system role. Could be added on top of others if needed

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2026-02-25 14:00:25 +02:00
Avgustin Marinov
6631bf8344 Add baselines for hawkbit 1.0 (#2902)
* Add baselines for hawkbit 1.0

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>

* Add SQL format, close to the already used

* Organize and unify

* Refactor B1_POSTGRES index names

* Revert ignoreMigrationPattern - will be included in separate PR

---------

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
Co-authored-by: vasilchev <vasil.ilchev@bosch.com>
2026-02-24 11:36:27 +02:00
Avgustin Marinov
6b3fbef400 Fix postgres unify migration (#2932)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2026-02-23 15:16:47 +02:00
Avgustin Marinov
2660bca4c7 Unify sp_rollout_group.target_percentage type REAL -> FLOAT (#2930)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2026-02-23 14:38:39 +02:00
Vasil Ilchev
ea3fe213e0 Schema changes int->tinyint and foreginkeys/indexes rename (#2922)
* Schema changes int->tinyint and foreginkeys/indexes rename

* Optimize schema migration to do all related changes within one statement per table - i.e. no redundant table re-builds

* Foreign key checks disabled for huge dbs

* Merge unify and convergence schemas as they both do migrations on common tables - reduce downtime

* Rename unify schema
2026-02-19 13:43:47 +02:00
Avgustin Marinov
62c76311e5 Fix some compile warnings (#2919)
* Fix some compile warnings
* Some classes made final
* JPA entities made not serializable

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2026-02-11 14:05:46 +02:00
Avgustin Marinov
87c4cd8cd1 Remove not used WeightValidationHelper (#2916)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2026-02-10 12:50:31 +02:00
Avgustin Marinov
a0e8c411c8 Drop sp_idx_rollout_group_parent index for mysql (#2911)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2026-02-09 14:38:18 +02:00
Avgustin Marinov
738234f0e2 Add to unification also index rename (#2909)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2026-02-09 13:15:02 +02:00
Avgustin Marinov
075701d07d Unify flyway schemas and fix PostgreSQL v1_12_35 (#2906)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2026-02-09 08:52:33 +02:00
Desislava Marinova
ff21d788b3 MECS-21328: Tenant metric label case unification (#2907) 2026-02-06 09:09:05 +02:00
Stanislav Trailov
c33156b134 Multi-Asssignments feature removal (#2893)
* Multi-Asssignments feature removal

Signed-off-by: strailov <Stanislav.Trailov@bosch.io>

* fix some sonar findings

Signed-off-by: strailov <Stanislav.Trailov@bosch.io>

* fixes after review

Signed-off-by: strailov <Stanislav.Trailov@bosch.io>

---------

Signed-off-by: strailov <Stanislav.Trailov@bosch.io>
2026-02-04 16:59:09 +02:00
Avgustin Marinov
8cac79f860 Bump spring-cloud-starter-openfeign to 4.3.1 (#2898)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2026-01-30 16:38:01 +02:00
Avgustin Marinov
d9e52cb542 Fix #2880 findings (#2887)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2026-01-23 10:15:45 +02:00
Avgustin Marinov
d55f1ffa10 Refactor @ApiResponses annotations (#2879)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2026-01-22 09:10:10 +02:00
Avgustin Marinov
cd22716bf1 [#2876] Temporary workaround of #2876 (#2874)
Should be fixed with next Spring ORM - 7.0.4 / 6.2.16

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2026-01-19 10:07:03 +02:00
Vasil Ilchev
0083d5538a Introduce Pause Success Action (#2867)
* Introduce Pause Success Action

Signed-off-by: vasilchev <vasil.ilchev@bosch.com>

* Instead of overriding SuccessAction, trigger next group from resume rollout
Fix Rollout Mgmt Resource to accept new Pause Action

Signed-off-by: vasilchev <vasil.ilchev@bosch.com>

* Review findings

Signed-off-by: vasilchev <vasil.ilchev@bosch.com>

* Remove unused import

---------

Signed-off-by: vasilchev <vasil.ilchev@bosch.com>
2026-01-13 11:20:21 +02:00
Stanislav Trailov
3bc8a91883 Fix tenant scope on retrieval of target groups (#2847)
* Fix tenant scope on retrieval of target groups

Signed-off-by: strailov <Stanislav.Trailov@bosch.io>

* fix build

Signed-off-by: strailov <Stanislav.Trailov@bosch.io>

---------

Signed-off-by: strailov <Stanislav.Trailov@bosch.io>
2025-12-10 09:37:38 +02:00
Stanislav Trailov
e6367d0b0c Remove schema generation related annotations in Jpa layer (#2837)
* Remove schema generation related annotations in Jpa layer

Signed-off-by: strailov <Stanislav.Trailov@bosch.io>

* Update hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/model/JpaAction.java

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* forgotten foreign key annotations removed

Signed-off-by: strailov <Stanislav.Trailov@bosch.io>

* remove missed foreign key annotations

Signed-off-by: strailov <Stanislav.Trailov@bosch.io>

* foreign key from autoConfirmation

Signed-off-by: strailov <Stanislav.Trailov@bosch.io>

---------

Signed-off-by: strailov <Stanislav.Trailov@bosch.io>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-12-08 09:26:35 +02:00
Avgustin Marinov
904c8b180d Align rollouts and autoassign metrics (#2844)
* Refactor auto-assign locking and metrics
* Align rollouts and autoassign metrics

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-12-03 12:34:40 +02:00
Vasil Ilchev
977b3fe40c AutoAssign scheduler to obtain lock on Tenant level. Configurable to run separate tenant auto-assign checks in separate threads (#2843)
Co-authored-by: vasilchev <vasil.ilchev@bosch.com>
2025-12-02 15:40:55 +02:00
Avgustin Marinov
29da04f6da Remove unnecessary API module dependencies (#2842)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-12-02 13:53:36 +02:00
Avgustin Marinov
6988f5eafb Fix nop cache using (especially for testing) (#2841)
+ fix flaky tests that requires no caches

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-12-01 13:53:08 +02:00
Avgustin Marinov
b8a05e3cbf Refactor tenant configuration management (#2840)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-11-28 15:37:12 +02:00
Avgustin Marinov
203598f3a4 Fix auth -> authentication in some props in SDK (#2839)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-11-28 09:13:41 +02:00
Avgustin Marinov
42384b7e31 Add AccessContext.asTenant and use where possible (#2838)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-11-27 16:27:56 +02:00
Avgustin Marinov
f6f62db0ad Refactor hawkbit core and security (#2833)
* Refactor hawkbit core and security

* improve access to the base core features - static
* thus easiear access
* and less boilerplate passing of instances

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>

* Refactor context classes

* make JSON context serialization default

* AccessContext

* Split hawkbit-security-core to other modules and remove it

---------

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-11-27 13:07:49 +02:00
Vasil Ilchev
a7b851778e Fix sonar findings (#2832)
Co-authored-by: vasilchev <vasil.ilchev@bosch.com>
2025-11-24 17:13:13 +02:00
Avgustin Marinov
f574d6d2be Fix hawkbit-ql-jpa dependency (#2820)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-11-18 15:57:25 +02:00
Avgustin Marinov
80165de06a [#2746] Add required annotations to MgmtRolloutRestRequestBodyPost (#2818)
+ amountGroups made optional with default value 1 group

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-11-18 14:25:32 +02:00
Avgustin Marinov
fb69372ed5 Remove commons-text dependency (#2817)
And thus fix vulnerability that it brings. Also decrease dependencies.

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-11-18 13:27:14 +02:00
Stanislav Trailov
4e3ee68630 Fix auto cleanup actions configuration value on set (#2805)
Signed-off-by: strailov <Stanislav.Trailov@bosch.io>
2025-11-18 11:14:29 +02:00
Avgustin Marinov
20bb41c51c Move rollout executor related target management methods in executor (#2812)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-11-18 08:44:35 +02:00
Avgustin Marinov
c5ea265e0f Extract QL support in a top level module (#2808)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2025-11-14 14:19:36 +02:00