Commit Graph

516 Commits

Author SHA1 Message Date
Avgustin Marinov
444c812bc2 Fix CascadeType.REMOVE on ManyToOne (#2030)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-15 13:11:46 +02:00
Avgustin Marinov
2d0c0a5989 Fix CascadeType.REMOVE on ManyToMany (#2029)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-15 11:59:37 +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
fdd00623b5 Add insertable = false with updateable = false (#2027)
add insertable = false on same places where hibernate validatire requires

the purpose is that code become more less eclipselink bound and to be closer to potentially hibernate supported

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-14 14:30:10 +02:00
Avgustin Marinov
f62f9fa97b Move Flyway into separate artifact (#2025)
Now it is not part of the ddi and dmf starters - only mgmt (where could be excluded on packaging)

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-14 11:51:23 +02:00
Avgustin Marinov
0d40837f9b Fix sonar finding for string duplications (#2023)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-13 09:53:17 +02:00
Avgustin Marinov
17248a1d54 FileSystem implementation of ArtifiactRepository moved in mgmt and ddi starters only (#2020)
* it's not needed for dmf
* also made optional when not needed (e.g. some JpaArtifactManagement)

_release_notes_

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-12 14:56:59 +02:00
Avgustin Marinov
714eb8b6ed ArtifactRepository made optional for JpaSystemManagement (#2019)
- it's needed only when on Mgmt instance

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-12 14:25:14 +02:00
Avgustin Marinov
a9714337e8 Fix sonar findings: JpaRolloutGroup (#1988)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-09 18:48:35 +02:00
Avgustin Marinov
4299377769 Fix sonar findings ... (#1987)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-09 17:58:10 +02:00
Avgustin Marinov
313abf330b Fix sonar findings: Fix artifact file repo tests (#1986)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-09 17:31:59 +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
ee7caa06c7 Fix sonar findings: Removed since added (#1984)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-09 15:22:59 +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
ade5723c8c Remove unused TenantUserPasswordAuthenticationToken (#1966)
Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-08 12:29:19 +02:00
Avgustin Marinov
26e68c9d2c Rollback migration SQL files, accidently formatted (#1956)
This leads to problems with flyway

Signed-off-by: Avgustin Marinov <Avgustin.Marinov@bosch.com>
2024-11-07 10:38:09 +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
8419169d52 Add support for on not found policy in Target REST (un)assignTags (#1905)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-10-17 18:40:56 +03:00
Avgustin Marinov
a976d4733d Add support for on not found policy in TargetManagement.(un)assignTags (#1904)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-10-17 17:43:34 +03:00
Avgustin Marinov
c76a2e2db5 Fix non found exception content of DS management (un)assignTag (#1895)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-10-17 13:07:10 +03:00
Avgustin Marinov
0c6b64221f Fix non found exception content of target management (un)assignTag (#1894)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-10-17 12:42:39 +03:00
Avgustin Marinov
31c4ffafc1 Improve DS Tag REST & management API (#1883)
* added methods to unassign by multiple ds
* deprecated toggle assigments - too complex to undestand
* deprecated unassign (management) of single ds  - in favour of methods with multiple ds

Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-10-16 16:03:39 +03:00
Avgustin Marinov
8d9f076271 Move Target tag deprecations to end of classes (#1882)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-10-16 15:15:10 +03:00
Avgustin Marinov
a5b24cac68 Improve Target Tag REST & management API (#1880)
* added methods to unassign by multiple controller ids
* deprecated toggle assigments - too complex to undestand
* deprecated unassign (management) of single controller id - in favour of methods with controller ids

Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-10-16 14:51:26 +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
d953ec5c7d Remove Deprecations - ActionRepository (#1869)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-10-04 15:21:41 +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
Vasil Ilchev
1edc9574ab Quota for ActionStatus push to be checked only for intermediate statuses. Always allow terminate/final status (#1846) 2024-09-20 15:20:08 +03:00
Avgustin Marinov
aed717df57 Add support for efficient tagging and BIG set of targets (#1844)
Adding a method with:

* optimized payload - just controller ids
* no response payload - not needed for that use-case
* targeting - thousands of targets tagged at once

Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-09-19 13:56:59 +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
f64d6eb04f Slight RSQL code improvements (#1839)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-09-10 15:42:37 +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
62734e936a Refactor RSQL search fields related classes (4) (#1837)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-09-10 12:29:55 +03:00
Avgustin Marinov
dd500b4d53 Refactor RSQL searach fields related classes (3) (#1836)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-09-10 11:38:31 +03:00
Avgustin Marinov
368c18ed5e Refactor RSQL serach fields related classes (2) (#1835)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-09-09 17:44:01 +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
a31028ee19 Slight improvements in RSQL to SQL logic (#1833)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-09-09 16:10:31 +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
ba9013d861 Style-only (no functional changes) refactoring of G2 RSQL Visitor (#1827)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-08-27 13:45:12 +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
12928a5939 Fix/jparolloutshandlerlogging (#1819)
Fix JpaExecutorHandler logging MDC context

Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-08-13 09:30:09 +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
0afd7e8036 Skip involvement into dynamic rollout only when idle (#1800)
Signed-off-by: Marinov Avgustin <Avgustin.Marinov@bosch.com>
2024-08-02 12:40:46 +03:00
Denislav Prinov
dc5b45b94a Refactoring the DDI Offline Distribution set assignment feature (#1798)
* Refactoring the DDI Offline Distribution set assignment feature

Signed-off-by: Denislav Prinov <denislav.prinov@bosch.com>

* Tests refactoring

Signed-off-by: Denislav Prinov <denislav.prinov@bosch.com>

* make it more visible the featyre is experimental

Signed-off-by: Denislav Prinov <denislav.prinov@bosch.com>

---------

Signed-off-by: Denislav Prinov <denislav.prinov@bosch.com>
2024-08-01 16:14:40 +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