Commit graph

6002 commits

Author SHA1 Message Date
abhishek9686
ddb8f6fa06 fix role and groups command 2024-08-24 18:12:19 +05:30
abhishek9686
a5c66f1b87 user groups commands 2024-08-24 13:40:41 +05:30
abhishek9686
d67fecf27f user role nmtcl cmds 2024-08-24 12:27:16 +05:30
abhishek9686
d02e2a5f8c check user role on CE 2024-08-23 19:44:43 +05:30
abhishek9686
3032b5f2fe Merge branch 'NET-1227-v1' of https://github.com/gravitl/netmaker into NET-1227-v1 2024-08-23 19:36:46 +05:30
abhishek9686
0a43b83948 user mgmt commands 2024-08-23 19:36:31 +05:30
Abhishek K
e0de65259a
Merge branch 'develop' into NET-1227-v1 2024-08-22 13:02:11 +05:30
abhishek9686
e29b4e080b remove email sender type 2024-08-22 13:01:38 +05:30
Abhishek K
fe57a6a42d
Net 1227 v1 (#3062)
* generalise smtp config

* copy over smtp vars

* env new line

* fix master key api access

* comment user tests

* fix network and user invite for master key access
2024-08-22 11:55:08 +05:30
abhishek9686
64c9ba24a3 Merge branch 'develop' of https://github.com/gravitl/netmaker into NET-1227-v1 2024-08-22 11:48:35 +05:30
abhishek9686
e90ad2634f fix network and user invite for master key access 2024-08-22 11:48:20 +05:30
Abhishek K
d41521607f
Net 1227 v1 (#3061)
* generalise smtp config

* copy over smtp vars

* env new line

* fix master key api access

* comment user tests
2024-08-22 11:44:16 +05:30
abhishek9686
2e945fa7e6 comment user tests 2024-08-22 11:32:38 +05:30
abhishek9686
e6ed92cbd4 Merge branch 'NET-1227-v1' of https://github.com/gravitl/netmaker into NET-1227-v1 2024-08-22 11:29:30 +05:30
abhishek9686
54e605493d fix master key api access 2024-08-22 11:29:11 +05:30
Abhishek K
2a13694043
Merge branch 'develop' into NET-1227-v1 2024-08-22 10:51:52 +05:30
Abhishek K
aa64e50374
Net 1227 (#3060)
* generalise smtp config

* copy over smtp vars

* env new line
2024-08-22 08:36:38 +05:30
abhishek9686
6135a7756c Merge branch 'develop' of https://github.com/gravitl/netmaker into NET-1227-v1 2024-08-22 08:35:54 +05:30
abhishek9686
c8eec1ed04 env new line 2024-08-22 08:35:37 +05:30
abhishek9686
82eecf5666 copy over smtp vars 2024-08-22 08:34:31 +05:30
Abhishek K
14bdb4fb43
generalise smtp config (#3059) 2024-08-22 08:05:05 +05:30
abhishek9686
3377844ddd generalise smtp config 2024-08-22 08:03:04 +05:30
Sayan Mallick
a5bff96b83
Fix go.mod versions (#3058)
* updated go.mod

* updated go.mod
2024-08-20 20:01:10 +05:30
Abhishek K
2e8d95e80e
NET-1227: User Mgmt V2 (#3055)
* user mgmt models

* define user roles

* define models for new user mgmt and groups

* oauth debug log

* initialize user role after db conn

* print oauth token in debug log

* user roles CRUD apis

* user groups CRUD Apis

* additional api checks

* add additional scopes

* add additional scopes url

* add additional scopes url

* rm additional scopes url

* setup middlleware permission checks

* integrate permission check into middleware

* integrate permission check into middleware

* check for headers for subjects

* refactor user role models

* refactor user groups models

* add new user to pending user via RAC login

* untracked

* allow multiple groups for an user

* change json tag

* add debug headers

* refer network controls form roles, add debug headers

* refer network controls form roles, add debug headers

* replace auth checks, add network id to role model

* nodes handler

* migration funcs

* invoke sync users migration func

* add debug logs

* comment middleware

* fix get all nodes api

* add debug logs

* fix middleware error nil check

* add new func to get username from jwt

* fix jwt parsing

* abort on error

* allow multiple network roles

* allow multiple network roles

* add migration func

* return err if jwt parsing fails

* set global check to true when accessing user apis

* set netid for acls api calls

* set netid for acls api calls

* update role and groups routes

* add validation checks

* add invite flow apis and magic links

* add invited user via oauth signup automatically

* create invited user on oauth signup, with groups in the invite

* add group validation for user invite

* update create user handler with new role mgmt

* add validation checks

* create user invites tables

* add error logging for email invite

* fix invite singup url

* debug log

* get query params from url

* get query params from url

* add query escape

* debug log

* debug log

* fix user signup via invite api

* set admin field for backward compatbility

* use new role id for user apis

* deprecate use of old admin fields

* deprecate usage of old user fields

* add user role as service user if empty

* setup email sender

* delete invite after user singup

* add plaform user role

* redirect on invite verification link

* fix invite redirect

* temporary redirect

* fix invite redirect

* point invite link to frontend

* fix query params lookup

* add resend support, configure email interface types

* fix groups and user creation

* validate user groups, add check for metrics api in middleware

* add invite url to invite model

* migrate rac apis to new user mgmt

* handle network nodes

* add platform user to default role

* fix user role migration

* add default on rag creation and cleanup after deletion

* fix rac apis

* change to invite code param

* filter nodes and hosts based on user network access

* extend create user group req to accomodate users

* filter network based on user access

* format oauth error

* move user roles and groups

* fix get user v1 api

* move user mgmt func to pro

* add user auth type to user model

* fix roles init

* remove platform role from group object

* list only platform roles

* add network roles to invite req

* create default groups and roles

* fix middleware for global access

* create default role

* fix nodes filter with global network roles

* block selfupdate of groups and network roles

* delete netID if net roles are empty

* validate user roles nd groups on update

* set extclient permission scope when rag vpn access is set

* allow deletion of roles and groups

* replace _ with - in role naming convention

* fix failover middleware mgmt

* format oauth templates

* fetch route temaplate

* return err if user wrong login type

* check user groups on rac apis

* fix rac apis

* fix resp msg

* add validation checks for admin invite

* return oauth type

* format group err msg

* fix html tag

* clean up default groups

* create default rag role

* add UI name to roles

* remove default net group from user when deleted

* reorder migration funcs

* fix duplicacy of hosts

* check old field for migration

* from pro to ce make all secondary users admins

* from pro to ce make all secondary users admins

* revert: from pro to ce make all secondary users admins

* make sure downgrades work

* fix pending users approval

* fix duplicate hosts

* fix duplicate hosts entries

* fix cache reference issue

* feat: configure FRONTEND_URL during installation

* disable user vpn access when network roles are modified

* rm vpn acces when roles or groups are deleted

* add http to frontend url

* revert crypto version

* downgrade crytpo version

* add platform id check on user invites

---------

Co-authored-by: the_aceix <aceixsmartx@gmail.com>
2024-08-20 17:08:56 +05:30
abhishek9686
fb40cd7d56 resolve merge conflicts 2024-08-20 16:51:22 +05:30
abhishek9686
916942e7cc resolve merge conflicts 2024-08-20 16:49:27 +05:30
dependabot[bot]
4324efe2ea
Bump golang.org/x/oauth2 from 0.21.0 to 0.22.0 (#3029)
Bumps [golang.org/x/oauth2](https://github.com/golang/oauth2) from 0.21.0 to 0.22.0.
- [Commits](https://github.com/golang/oauth2/compare/v0.21.0...v0.22.0)

---
updated-dependencies:
- dependency-name: golang.org/x/oauth2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-20 13:47:48 +05:30
dependabot[bot]
2a98f82463
Bump alpine from 3.20.0 to 3.20.2 (#3010)
Bumps alpine from 3.20.0 to 3.20.2.

---
updated-dependencies:
- dependency-name: alpine
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-20 13:47:29 +05:30
dependabot[bot]
053c75e281
Bump golang.org/x/crypto from 0.23.0 to 0.26.0 (#3036)
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.23.0 to 0.26.0.
- [Commits](https://github.com/golang/crypto/compare/v0.23.0...v0.26.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-20 13:46:40 +05:30
dependabot[bot]
b47510ca33
Bump peter-evans/create-pull-request from 5 to 6 (#3052)
Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 5 to 6.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/v5...v6)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-20 13:46:06 +05:30
dependabot[bot]
285064c679
Bump github.com/posthog/posthog-go (#3054)
Bumps [github.com/posthog/posthog-go](https://github.com/posthog/posthog-go) from 0.0.0-20211028072449-93c17c49e2b0 to 1.2.18.
- [Release notes](https://github.com/posthog/posthog-go/releases)
- [Changelog](https://github.com/PostHog/posthog-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/posthog/posthog-go/commits/v1.2.18)

---
updated-dependencies:
- dependency-name: github.com/posthog/posthog-go
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-20 13:45:01 +05:30
dependabot[bot]
b700fea1ec
Bump github.com/eclipse/paho.mqtt.golang from 1.4.3 to 1.5.0 (#3028)
Bumps [github.com/eclipse/paho.mqtt.golang](https://github.com/eclipse/paho.mqtt.golang) from 1.4.3 to 1.5.0.
- [Release notes](https://github.com/eclipse/paho.mqtt.golang/releases)
- [Commits](https://github.com/eclipse/paho.mqtt.golang/compare/v1.4.3...v1.5.0)

---
updated-dependencies:
- dependency-name: github.com/eclipse/paho.mqtt.golang
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-20 13:44:37 +05:30
Abhishek K
2c3046de59
Merge pull request #3048 from gravitl/master
Master
2024-08-19 12:13:51 +05:30
Abhishek K
fe9f6df457
Merge pull request #3047 from gravitl/staticcheck-update
staticcheck pinned to v0.4.7
2024-08-19 12:13:19 +05:30
Sayan Mallick
4fd5250a7f staticcheck pinned to v0.4.7 2024-08-19 12:01:35 +05:30
Abhishek K
5a561b3835
Net 1440 batchpeerupdate (#3042)
* NET-1440 scale test changes

* fix UT error and add error info

* load metric data into cacha in startup

* remove debug info for metric

* add server telemetry and hasSuperAdmin to cache

* fix user UT case

* update sqlite connection string for performance

* update check-in TS in cache only if cache enabled

* update metric data in cache only if cache enabled and write to DB once in stop

* update server status in mq topic

* add failover existed to server status update

* only send mq messsage when there is server status change

* batch peerUpdate

* code changes for scale for review

* update UT case

* update mq client check

* mq connection code change

* revert server status update changes

* revert batch peerUpdate

* remove server status update info

* batch peerUpdate

* code changes based on review and setupmqtt in keepalive

* set the mq message order to false for PIN

* remove setupmqtt in keepalive

* add peerUpdate batch size to config

* update batch peerUpdate

* recycle ip in node deletion

* update ip allocation logic

* remove ip addr cap

* remove ippool file

* update get extClient func

* remove ip from cache map when extClient is removed

* add batch peerUpdate switch

* set batch peerUpdate to true by default

---------

Co-authored-by: Max Ma <mayabin@gmail.com>
2024-08-16 15:35:43 +05:30
Abhishek K
22cd0ae446
Revert "Bump github.com/coreos/go-oidc/v3 from 3.9.0 to 3.11.0 (#3002)" (#3041)
This reverts commit 5fbe7cb58d.
2024-08-16 10:59:36 +05:30
dependabot[bot]
5fbe7cb58d
Bump github.com/coreos/go-oidc/v3 from 3.9.0 to 3.11.0 (#3002)
Bumps [github.com/coreos/go-oidc/v3](https://github.com/coreos/go-oidc) from 3.9.0 to 3.11.0.
- [Release notes](https://github.com/coreos/go-oidc/releases)
- [Commits](https://github.com/coreos/go-oidc/compare/v3.9.0...v3.11.0)

---
updated-dependencies:
- dependency-name: github.com/coreos/go-oidc/v3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-15 12:00:34 +05:30
Max Ma
46b8fd21c8
NET-1440: scale test changes (#3014)
* NET-1440 scale test changes

* fix UT error and add error info

* load metric data into cacha in startup

* remove debug info for metric

* add server telemetry and hasSuperAdmin to cache

* fix user UT case

* update sqlite connection string for performance

* update check-in TS in cache only if cache enabled

* update metric data in cache only if cache enabled and write to DB once in stop

* update server status in mq topic

* add failover existed to server status update

* only send mq messsage when there is server status change

* batch peerUpdate

* code changes for scale for review

* update UT case

* update mq client check

* mq connection code change

* revert server status update changes

* revert batch peerUpdate

* remove server status update info

* code changes based on review and setupmqtt in keepalive

* set the mq message order to false for PIN

* remove setupmqtt in keepalive

* recycle ip in node deletion

* update ip allocation logic

* remove ip addr cap

* remove ippool file

* update get extClient func

* remove ip from cache map when extClient is removed
2024-08-15 11:59:00 +05:30
Sayan Mallick
c551c487ca
New Docs (#3034)
* New Docs

CSS update and Dockerfile to include docs folder

flash of unrendered text fix

markdown docs

ignore docs/docs.go

improving the docs generation

github actions for docs generation

go runner version fix

updated docs.yml

update repo action updated

updated actions and dns docs

dns complete

More docs update

Complete docs and updated workflow

Update documentation Tue Aug  6 11:17:42 UTC 2024

Update documentation Thu Aug  8 12:26:57 UTC 2024

clean up

clean up

Dockerfile clean up

Updated workflow

Updated workflow

Update docs.yml

Update docs.yml

* requested changes

* changed ingress gateway to remote access gateway
2024-08-15 11:55:01 +05:30
Sayan Mallick
7786c106f7
Updated Dockerfile-go-builder to golang:1.20.13-alpine3.19 (#3017)
Co-authored-by: Abhishek K <32607604+abhishek9686@users.noreply.github.com>
2024-07-25 10:20:43 +05:30
Christopher Blaha
66dbaf1bc2
update develop to v0.25.0 (#3009)
* update develop to v0.24.4

* update develop to v0.25.0
2024-07-25 10:19:31 +05:30
Abhishek K
3a99c397c1
Merge pull request #3008 from gravitl/release-v0.24.3
v0.24.3
2024-07-22 09:18:18 +05:30
Abhishek K
0807bd0dd0
v0.24.3 release notes (#3007) 2024-07-18 22:11:14 +05:30
Max Ma
3dce62a7b6
add peerUpdate when calling hostupdate api (#3005) 2024-07-17 13:07:07 +05:30
Max Ma
023956d361
NET-1288:Fix egress node id issue (#3004)
* add egress range check with netmaker network address

* add egerssrange check for delete egressGW and extClientGW

* remove egress range check for delete

* fix egress nodeid issue
2024-07-10 15:03:25 +05:30
Max Ma
65faf73fe9
NET-1226: Scalability Improvements (#2987)
* add api to check if failover node existed

* remove 5 minute peerUpdate

* update peerUpdate to trigger pull

* update Action name to SignalPull

* revert the peerUpdate from SignalPull

* fix getfailover error issue

* rm acls creation for on-prem emqx

* remove use of acls

* add additional broker status field on status api

* NET-1165: Remove creation of acls on emqx (#2996)

* rm acls creation for on-prem emqx

* remove use of acls

* add additional broker status field on status api

* comment out mq reconnect logic

* configure mq conn params

* add metric_interval in ENV for publishing metrics

* add metric_interval in ENV for publishing metrics

* update PUBLISH_METRIC_INTERVAL env name

* revert the mq setttings back

* fix error nil issue

---------

Co-authored-by: abhishek9686 <abhi281342@gmail.com>
Co-authored-by: Abhishek K <32607604+abhishek9686@users.noreply.github.com>
2024-07-09 18:56:55 +05:30
Max Ma
5b9ccb74a9
improve message for create egressGW (#3001) 2024-07-09 18:56:36 +05:30
Aceix
2de3fde872
fix(NET-1280): remove RAG metadata length restriction (#2990) 2024-07-05 15:54:05 +05:30
Max Ma
f63dfaf4b5
NET-1288:add egress range check with netmaker network address (#2978)
* add egress range check with netmaker network address

* add egerssrange check for delete egressGW and extClientGW

* remove egress range check for delete
2024-07-05 15:53:46 +05:30