Commit Graph

642 Commits

Author SHA1 Message Date
Pascal Fischer
60ee31df3e
[management] Add API of new network concept (#3012) 2024-12-11 12:58:45 +01:00
Bethuel Mmbaga
9f859a240e
Merge pull request #3015 from netbirdio/add-networks-db-support
* Migrate networks, network routers and network resource tables

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* Add account networks

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* Add networks store implementation and tests

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* Add network routers in account object

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* Add network routers store implementation

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* Add network resources store implementation

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* Add missing network resource in account copy

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* Refactor

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* Fix tests

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

---------

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>
2024-12-11 10:58:49 +01:00
bcmmbaga
c7f79085df
Fix tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>
2024-12-10 17:26:23 +01:00
bcmmbaga
7146fd03d1
Refactor
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>
2024-12-10 17:04:16 +01:00
bcmmbaga
a52ef1a066
Add missing network resource in account copy
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>
2024-12-10 16:49:32 +01:00
bcmmbaga
382dba4a85
Add network resources store implementation
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>
2024-12-10 16:42:11 +01:00
Pascal Fischer
3e621b0fef Merge branch 'main' into feature/new-networks-concept 2024-12-10 16:03:07 +01:00
Pascal Fischer
6142828a9c
[management] restructure api files (#3013) 2024-12-10 15:59:25 +01:00
bcmmbaga
6dd6992415
Add network routers store implementation
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>
2024-12-10 15:00:23 +01:00
bcmmbaga
21586acc16
Add network routers in account object
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>
2024-12-10 14:59:55 +01:00
bcmmbaga
f9be8f829e
Add networks store implementation and tests
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>
2024-12-10 11:21:14 +01:00
bcmmbaga
6a1eda1caa
Add account networks
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>
2024-12-10 11:20:48 +01:00
bcmmbaga
21eca7e1d1
Merge branch 'feature/new-networks-concept' into add-networks-db-support 2024-12-10 10:59:28 +01:00
Pascal Fischer
0812cc61b9
[management] Add name attr to network resource (#3011) 2024-12-10 10:51:18 +01:00
bcmmbaga
eb5798e927
Migrate networks, network routers and network resource tables
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>
2024-12-09 19:42:38 +01:00
Pascal Fischer
623fcb0535
[management] Add structs for new networks concept (#3006) 2024-12-09 19:25:58 +01:00
Bethuel Mmbaga
97bb74f824
Remove peer login log (#3005)
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>
2024-12-09 18:40:06 +01:00
M. Essam
713e320c4c
Update account peers on login on meta change (#2991)
* Update account peers on login on meta change

* Factor out LoginPeer peer not found handling
2024-12-05 14:15:23 +01:00
Maycon Santos
b50b89ba14
[client] Cleanup status resources on engine stop (#2981)
cleanup leftovers from status recorder when stopping the engine
2024-12-04 14:09:04 +01:00
Pascal Fischer
d063fbb8b9
[management] merge update account peers in sync call (#2978) 2024-12-03 16:41:19 +01:00
Joakim Nohlgård
7dacd9cb23
[management] Add missing parentheses on iphone hostname generation condition (#2977) 2024-12-03 13:49:02 +01:00
Maycon Santos
f9723c9266
[client] Account different policiy rules for routes firewall rules (#2939)
* Account different policies rules for routes firewall rules

This change ensures that route firewall rules will consider source group peers in the rules generation for access control policies.

This fixes the behavior where multiple policies with different levels of access was being applied to all peers in a distribution group

* split function

* avoid unnecessary allocation

Co-authored-by: Viktor Liu <17948409+lixmal@users.noreply.github.com>

---------

Co-authored-by: Viktor Liu <17948409+lixmal@users.noreply.github.com>
2024-11-29 17:50:35 +01:00
Maycon Santos
8efad1d170
Add guide when signing key is not found (#2942)
Some users face issues with their IdP due to signing key not being refreshed

With this change we advise users to configure key refresh

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

* removing leftover

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2024-11-29 10:06:40 +01:00
Pascal Fischer
c6641be94b
[tests] Enable benchmark tests on github actions (#2961) 2024-11-28 19:22:01 +01:00
Pascal Fischer
89cf8a55e2
[management] Add performance test for login and sync calls (#2960) 2024-11-28 14:59:53 +01:00
Pascal Fischer
00c3b67182
[management] refactor to use account object instead of separate db calls for peer update (#2957) 2024-11-28 11:13:01 +01:00
Bethuel Mmbaga
9683da54b0
[management] Refactor nameserver groups to use store methods (#2888) 2024-11-26 17:39:04 +01:00
Bethuel Mmbaga
0e48a772ff
[management] Refactor DNS settings to use store methods (#2883) 2024-11-26 13:43:05 +01:00
Bethuel Mmbaga
f118d81d32
[management] Refactor policy to use store methods (#2878) 2024-11-26 10:46:05 +01:00
Bethuel Mmbaga
ca12bc6953
[management] Refactor posture check to use store methods (#2874) 2024-11-25 16:26:24 +01:00
Pascal Fischer
9db1932664
[management] Fix getSetupKey call (#2927) 2024-11-22 10:15:51 +01:00
Pascal Fischer
aa575d6f44
[management] Add activity events to group propagation flow (#2916) 2024-11-21 15:10:34 +01:00
Pascal Fischer
f66bbcc54c
[management] Add metric for peer meta update (#2913) 2024-11-19 18:13:26 +01:00
Pascal Fischer
5dd6a08ea6
link peer meta update back to account object (#2911) 2024-11-19 17:25:49 +01:00
Pascal Fischer
52ea2e84e9
[management] Add transaction metrics and exclude getAccount time from peers update (#2904) 2024-11-19 00:04:50 +01:00
İsmail
a1c5287b7c
Fix the Inactivity Expiration problem. (#2865) 2024-11-15 18:21:27 +01:00
Bethuel Mmbaga
12f442439a
[management] Refactor group to use store methods (#2867)
* Refactor setup key handling to use store methods

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* add lock to get account groups

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* add check for regular user

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* get only required groups for auto-group validation

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* add account lock and return auto groups map on validation

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* refactor account peers update

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* Refactor groups to use store methods

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* refactor GetGroupByID and add NewGroupNotFoundError

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* fix tests

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* Add AddPeer and RemovePeer methods to Group struct

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* Preserve store engine in SqlStore transactions

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* Run groups ops in transaction

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* fix missing group removed from setup key activity

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* fix merge

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* fix merge

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* fix sonar

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* Change setup key log level to debug for missing group

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* Retrieve modified peers once for group events

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* Add tests

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* Add account locking and merge group deletion methods

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* Fix tests

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

---------

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>
2024-11-15 20:09:32 +03:00
Pascal Fischer
d9b691b8a5
[management] Limit the setup-key update operation (#2841) 2024-11-15 17:00:06 +01:00
Pascal Fischer
4aee3c9e33
[client/management] add peer lock to peer meta update and fix isEqual func (#2840) 2024-11-15 16:59:03 +01:00
Pascal Fischer
44e799c687
[management] Fix limited peer view groups (#2894) 2024-11-15 11:16:16 +01:00
Viktor Liu
39329e12a1
[client] Improve state write timeout and abort work early on timeout (#2882)
* Improve state write timeout and abort work early on timeout

* Don't block on initial persist state
2024-11-13 13:46:00 +01:00
Pascal Fischer
20a5afc359
[management] Add more logs to the peer update processes (#2881) 2024-11-12 14:19:22 +01:00
Bethuel Mmbaga
6cb697eed6
[management] Refactor setup key to use store methods (#2861)
* Refactor setup key handling to use store methods

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* add lock to get account groups

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* add check for regular user

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* get only required groups for auto-group validation

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* add account lock and return auto groups map on validation

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* fix missing group removed from setup key activity

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* Remove context from DB queries

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* Add user permission check and add setup events into events to store slice

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* Retrieve all groups once during setup key auto-group validation

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* Fix lint

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

* Fix sonar

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>

---------

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>
2024-11-11 19:46:10 +03:00
Viktor Liu
08b6e9d647
[management] Fix api error message typo peers_group (#2862) 2024-11-08 23:28:02 +01:00
Pascal Fischer
67ce14eaea
[management] Add peer lock to grpc server (#2859)
* add peer lock to grpc server

* remove sleep and put db update first

* don't export lock method
2024-11-08 18:47:22 +01:00
Pascal Fischer
669904cd06
[management] Remove context from database calls (#2863) 2024-11-08 15:49:00 +01:00
Maycon Santos
738387f2de
Add benchmark tests to get account with claims (#2761)
* Add benchmark tests to get account with claims

* add users to account objects

* remove hardcoded env
2024-11-07 17:23:35 +01:00
Pascal Fischer
baf0678ceb
[management] Fix potential panic on inactivity expiration log message (#2854) 2024-11-07 16:33:57 +01:00
Pascal Fischer
7fef8f6758
[management] Enforce max conn of 1 for sqlite setups (#2855) 2024-11-07 16:32:35 +01:00
Pascal Fischer
3e88b7c56e
[management] Fix network map update on peer validation (#2849) 2024-11-07 09:50:13 +01:00