Commit Graph

592 Commits

Author SHA1 Message Date
5dbdeff77a Simplify peer update condition in DNS management
Refactor the condition for updating account peers to remove redundant checks

Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>
2024-09-05 21:29:14 +03:00
7523a9e7be Refactor posture check policy linking logic
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>
2024-09-05 19:36:20 +03:00
75ab35563a Update route check by checking if group has peers
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>
2024-09-05 19:20:09 +03:00
c6650705a1 Refactor policy group handling and update logic.
Signed-off-by: bcmmbaga <bethuelmbaga12@gmail.com>
2024-09-05 16:36:11 +03:00
f29f8c009f fix tests 2024-08-16 12:24:06 +03:00
8826196503 fix linter 2024-08-15 11:19:10 +03:00
ca8565de1f Refactor duplicate diff handling logic 2024-08-15 10:57:45 +03:00
ac06346f5c Add tests 2024-08-15 10:50:03 +03:00
151969bdd7 Update network map diff logic with custom comparators 2024-08-15 10:49:45 +03:00
441136e2c6 Add NameServer and Route comparators 2024-08-15 10:49:11 +03:00
c918bab09a Merge branch 'main' into feature/validate-group-association
# Conflicts:
#	go.sum
2024-08-14 13:30:54 +03:00
6016d2f7ce Fix lint (#2427) 2024-08-14 13:30:10 +03:00
7fa71419cd Fix tests 2024-08-14 10:27:07 +03:00
226dc95afa fix merge 2024-08-13 22:03:46 +03:00
1548542df3 Merge branch 'feature/optimize-network-map-updates' into feature/validate-group-association
# Conflicts:
#	management/server/dns_test.go
#	management/server/group.go
#	management/server/nameserver.go
#	management/server/peer.go
#	management/server/peer_test.go
#	management/server/user.go
2024-08-13 16:30:04 +03:00
34114d4a55 Fix peers update by including NetworkMap and posture Checks 2024-08-12 18:01:07 +03:00
f3ec200985 Merge branch 'main' into feature/optimize-network-map-updates 2024-08-12 13:49:02 +03:00
539480a713 [management] Prevent removal of All group from peers during user groups propagation (#2410)
* Prevent removal of "All" group from peers

* Prevent adding "All" group to users and setup keys

* Refactor setup key group validation
2024-08-12 13:48:05 +03:00
8ecbe675a1 Merge branch 'main' into feature/optimize-network-map-updates
# Conflicts:
#	management/server/peer.go
2024-08-09 10:55:31 +03:00
0911163146 Add batch delete for groups and users (#2370)
* Refactor user deletion logic and introduce batch delete

* Prevent self-deletion for users

* Add delete multiple groups

* Refactor group deletion with validation

* Fix tests

* Add bulk delete functions for Users and Groups in account manager interface and mocks

* Add tests for DeleteGroups method in group management

* Add tests for DeleteUsers method in users management
2024-08-08 18:01:38 +03:00
ac0d5ff9f3 [management] Improve mgmt sync performance (#2363) 2024-08-07 10:52:31 +02:00
54d896846b Skip network map check if not regular user (#2402)
when getting all peers we don't need to calculate network map when not a regular user
2024-08-07 10:22:12 +02:00
f84b606506 add extra auth audience (#2350) 2024-08-01 18:52:50 +02:00
216d9f2ee8 Adding geolocation download log message. (#2085)
* Adding geolocation download prompt message.

* import log file and remove unnecessary else

---------

Co-authored-by: Maycon Santos <mlsmaycon@gmail.com>
2024-08-01 18:52:38 +02:00
3506ac4234 When creating new setup key, "revoked" field doesn't do anything (#2357)
Remove unused field from API
2024-08-01 17:13:58 +02:00
cbf9f2058e Use accountID retrieved from the sync call to acquire read lock sooner (#2369)
Use accountID retrieved from the sync call to acquire read lock sooner and avoiding extra DB calls.
- Use the account ID across sync calls
- Moved account read lock
- Renamed CancelPeerRoutines to OnPeerDisconnected
- Added race tests
2024-08-01 16:21:43 +02:00
5ee9c77e90 Move write peer lock (#2364)
Moved the write peer lock to avoid latency caused by disk access

Updated the method CancelPeerRoutines to use the peer public key
2024-07-31 21:51:45 +02:00
c832cef44c Update SaveUsers and SaveGroups to SaveAccount (#2362)
Changed SaveUsers and SaveGroups method calls to SaveAccount for consistency in data persistence operations.
2024-07-31 19:48:12 +03:00
165988429c Add write lock for peer when saving its connection status (#2359) 2024-07-31 14:53:32 +02:00
f0d91bcfc4 Add tests for peer update behavior on peers changes 2024-07-31 02:45:09 +03:00
eb9aadfd38 Add tests for peer update behavior on setup key changes 2024-07-31 01:31:05 +03:00
8bab9dc3c0 fix tests 2024-07-31 01:24:02 +03:00
02c0a9b1da Add tests for peer update behavior on route changes 2024-07-31 01:18:37 +03:00
c76cd1d86e Add tests for peer update behavior on user changes 2024-07-31 01:18:14 +03:00
d990d95236 Add tests for peer update behavior on name server changes 2024-07-30 18:36:33 +03:00
cf211f6337 Refactor 2024-07-30 17:15:47 +03:00
8d9ea40bf1 Add tests for peer update behavior on dns settings changes 2024-07-30 16:38:32 +03:00
7647701898 Add tests for peer update behavior on group changes 2024-07-30 16:01:11 +03:00
6554b26600 Add tests for peer update behavior on policy changes 2024-07-30 14:56:23 +03:00
8455455142 Add tests for peer update behavior on posture check changes 2024-07-29 21:46:50 +03:00
da39c8bbca Refactor login with store.SavePeer (#2334)
This pull request refactors the login functionality by integrating store.SavePeer. The changes aim to improve the handling of peer login processes, particularly focusing on synchronization and error handling.

Changes:
- Refactored login logic to use store.SavePeer.
- Added checks for login without lock for login necessary checks from the client and utilized write lock for full login flow.
- Updated error handling with status.NewPeerLoginExpiredError().
- Moved geoIP check logic to a more appropriate place.
- Removed redundant calls and improved documentation.
- Moved the code to smaller methods to improve readability.
2024-07-29 13:30:27 +02:00
c48f244bee Remove unused isPolicyRuleGroupsEmpty 2024-07-26 17:47:02 +03:00
7321046cd6 Remove redundant check for empty JWT groups (#2323)
* Remove redundant check for empty group names in SetJWTGroups

* add test
2024-07-26 16:33:54 +02:00
1f48fdf6ca Add SavePeer method to prevent a possible account inconsistency (#2296)
SyncPeer was storing the account with a simple read lock

This change introduces the SavePeer method to the store to be used in these cases
2024-07-26 07:49:05 +02:00
45fd1e9c21 add save peer status test for connected peers (#2321) 2024-07-25 16:22:04 +02:00
b7fcd0d753 Remove UpdatePeerSSHKey method 2024-07-23 21:16:25 +03:00
a19c2f660c Merge branch 'refs/heads/feature/optimize-network-map-updates' into feature/validate-group-association 2024-07-22 15:24:30 +03:00
936215b395 Optimize account peers updates on route changes 2024-07-22 13:51:18 +03:00
bb08adcbac Remove condition check for network serial update 2024-07-20 20:36:36 +03:00
f5ec234f09 Optimize peer update on user deletion and changes 2024-07-20 20:08:29 +03:00