Commit Graph

485 Commits

Author SHA1 Message Date
Avgustin Marinov
4861e7c29f Refactor the tenantcy configuration (#2080)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-19 08:45:50 +02:00
Avgustin Marinov
13acc9442b Rename HawkBitEclipseLinkJpaDialect -> HawkbitEclipseLinkJpaDialect unify 'hawkbit' class names (#2075)
_release_notes_

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-18 14:44:42 +02:00
Avgustin Marinov
516a3273b6 Remove peek usage as advised by sonar - mainly for debugging (#2073)
By API Stream.peek is mainly for debugging and could be skiped in some cases

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-18 09:44:52 +02:00
Avgustin Marinov
f9bb48d697 Code refactoring of hawkbit-repository (#2056)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-17 15:03:03 +02:00
Avgustin Marinov
1c40584733 Add JpaTargetFilterQuery converter test (#2049)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-16 12:13:22 +02:00
Avgustin Marinov
4545849548 Add JpaRolloutGroup converter test (#2048)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-16 11:42:37 +02:00
Avgustin Marinov
20b1c61c13 Add JpaRollout converter test (#2047)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-16 11:32:51 +02:00
Avgustin Marinov
ec6009b268 JpaTarget switch to javax.persistence.Convert(er) (#2038)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-15 18:02:00 +02:00
Avgustin Marinov
bf1e171523 Switch JpaActionStatus to javax.persistence.Convert(er) (#2037)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-15 17:26:25 +02:00
Avgustin Marinov
4a46344ebe Replace eclipselink converter with standard javax.persistence.Convert(er) (#2035)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-15 16:05:15 +02:00
Avgustin Marinov
a2f03b3724 Replace CascadeOnDelete eclipse link annotation with CascadeType.REMOVE (#2028)
more standard approach

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-14 17:06:13 +02:00
Avgustin Marinov
1a741bcdb1 Sonar findings - RolloutManagementTest fix no assert (#1999)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-09 23:50:27 +02:00
Avgustin Marinov
445c15ac3b Sonar findings - TargetFilterQueryManagementTest fix no assert (#1998)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-09 23:41:09 +02:00
Avgustin Marinov
7e6476a73f Sonar findings - DeploymentManagementTest fix no asert (2) (#1997)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-09 23:31:34 +02:00
Avgustin Marinov
63ad565417 Sonar findings - DeploymentManagementTest fix no asert (#1996)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-09 23:27:56 +02:00
Avgustin Marinov
e886dda9e6 Fix sonar findings: dupplications (#1989)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-09 20:31:11 +02:00
Avgustin Marinov
fa9a715aa6 Fix sonar findings: DistributionSetTagManagementTest (#1985)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-09 15:53:41 +02:00
Avgustin Marinov
cc226eadac Fix sonar findings: Type constants access (#1983)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-09 15:11:39 +02:00
Avgustin Marinov
3effa996dd Refactor tenancy classes (#1972)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-08 16:12:18 +02:00
Avgustin Marinov
0f5c87a0c8 Code format hawkbit-repository (#1939)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-11-05 11:27:41 +02:00
Avgustin Marinov
eb1cb699ca Code format hawkbit-repository-jpa3 (#1932)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-11-05 10:28:55 +02:00
Avgustin Marinov
ef857baa9e Code format hawkbit-repository-jpa (#1928)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-11-05 09:54:34 +02:00
Avgustin Marinov
ec7fb0cd1b Fix target failOnMissingDs (#1906)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-10-17 18:51:21 +03:00
Avgustin Marinov
1bc467d470 Add notFound support (& test) for assign tag to ds REST (#1903)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-10-17 17:18:36 +03:00
Avgustin Marinov
707df1abd9 Add notFound suppor (& test) for assign REST (#1902)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-10-17 17:06:08 +03:00
Avgustin Marinov
331cf8e692 Fix ACM DS test (#1900)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-10-17 16:40:53 +03:00
Avgustin Marinov
84a9539aab Add not found target (on assign) test (#1897)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-10-17 13:52:51 +03:00
Avgustin Marinov
f90ced20df Add not found DS test & improve EntityNotFoundException (#1896)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-10-17 13:50:41 +03:00
Avgustin Marinov
43a965fb97 Improve Target assign tag test - add check for real tags in management API (#1892)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-10-17 11:00:45 +03:00
Avgustin Marinov
c13bd052cf Improve DS assign tag test - add check for real tags in management API (#1891)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-10-17 10:59:10 +03:00
Avgustin Marinov
897c49602c Remove deprecated toggle ds tag assigment from where possible (#1888)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-10-17 10:21:11 +03:00
Avgustin Marinov
903e5727a0 Remove deprecated toggle tag assigment from where possible (#1886)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-10-17 09:08:38 +03:00
Avgustin Marinov
8d78cea9d2 Web env none in tests where not needed (#1871)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-10-04 16:51:10 +03:00
Avgustin Marinov
56139fea12 Remove Deprecations - SoftwareModuleMangement (#1870)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-10-04 15:29:58 +03:00
Avgustin Marinov
de323b66d1 Fix concurrent starting the next group (#1853)
when in StartNextGroupRolloutGroupSuccessAction#startNextGroup:
    1. start all scheduled actions
    2. if started are > 0 -> RUNNING, otherwise -> FINISHED (if not dynamic rollout)

what could possibly happen is that at same time:
    * because of a success condition met the JpaRolloutsExecutor triggers start the group
    * user triggers start of the next group (via RolloutsManagement#triggerNextGroup)

then it could:
    * the 'first' one succeeds to start next group
    * the second attempts to start it (JpaRolloutsExecutor found the previous had met the success condition or trigger next found it SCHEDULED and next to run)
    * the second finds no scheduled actions (just running) and decides there are no actions. So, it assumes (wrongly) no actions in group - and set it as FINISHED

This way we could have FINISHED group with still running actions

Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-10-04 11:05:05 +03:00
Vasil Ilchev
3d9354782b Quota must be checked with conditions over incoming status, not curre… (#1847)
* Quota must be checked with conditions over incoming status, not current persisted in db

* Fix Download_Only case where DOWNLOADED is threated as 'final'.
Fix ci build tests.

* Review findings
2024-09-24 13:07:50 +03:00
Avgustin Marinov
b1f9991a16 Slight rsql code improvements (#1840)
* Slight RSQL code improvements(2)

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

* Generics from Path<Object> to Path<?>

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

---------

Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-09-10 17:03:45 +03:00
Avgustin Marinov
52912c3cca Optimize G2 subqueries for != and out - remove unused joins in all cases (#1838)
At the moment such unused are removed for "tag!=1 and tag==2" but not for "tag==2 and tag!=1"

Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-09-10 14:48:59 +03:00
Avgustin Marinov
072809be6c Refactor RSQL serach fields related classes (#1834)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-09-09 17:39:45 +03:00
Avgustin Marinov
3e1965a13b Fix sonar finding (#1829)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-08-27 17:06:47 +03:00
Avgustin Marinov
7753f6cb5c Optimize RSQL Visitor G2 (#1828)
Use single join for or of same type as 'tag==tag1 or tag==tag2 or tag==tag3'

Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-08-27 16:17:56 +03:00
Avgustin Marinov
de12d9b3de Return back legacy RSQL visitor until G2 maturity (#1825)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-08-27 13:16:28 +03:00
Avgustin Marinov
d9d4469a95 Fix RSQL filter for no target tag and OR (#1824)
* Fix RSQL filter for no target tag and OR
* add test for such filter
* Clean up the code

keeps the legacy Rsql Visitor which could be used with hawkbit.rsql.legacyRsqlVisitor=true

---------

Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-08-27 10:48:55 +03:00
Avgustin Marinov
55cc600114 Small serach fields refactoring (add lombok & style) (#1823)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-08-23 12:24:29 +03:00
Avgustin Marinov
3002b50807 Improve JpaRolloutHandler logging (#1801)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-08-02 16:17:01 +03:00
Avgustin Marinov
6fd52d4b4a Involve all targets in dynamic rollouts (#1795)
* involve targets into dynamic rollouts eagerly - doesn't wait for dynamic group to become running in order to involve devices
* adds trottling for involving targes into dynamic groups
* small style refactoring

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

Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com
2024-08-01 15:36:29 +03:00
Florian BEZANNIER
0013750f78 feat: allow a target to set offline assigned distribution set (#1620)
* feat: allow a target to set offline assigned distribution set

Signed-off-by: Florian Bezannier <florian.bezannier@hotmail.fr>

* refacto: apply @avgustinmm recommendation

* docs: Mark update offline API as experimental

---------

Signed-off-by: Florian Bezannier <florian.bezannier@hotmail.fr>
2024-08-01 11:51:31 +03:00
Avgustin Marinov
ae09e2fbef [#1778] Prevent deletion of Software Module of locked DS (#1793)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-08-01 08:57:50 +03:00
Avgustin Marinov
3189531162 Add support for target tag retrieval via REST (#1782)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-07-24 14:01:40 +03:00
Avgustin Marinov
06c06bcd8f Fix Sonar findings (#1779)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-07-23 12:06:39 +03:00