-
Notifications
You must be signed in to change notification settings - Fork 6.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: SCIM 2.0 Automatic User provisioning #11169
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
@devkiran is attempting to deploy a commit to the cal Team on Vercel. A member of the Team first needs to authorize it. |
Thank you for following the naming conventions! 🙏 Feel free to join our discord and post your PR link. |
📦 Next.js Bundle Analysis for @calcom/webThis analysis was generated by the Next.js Bundle Analysis action. 🤖 New Page AddedThe following page was added to the bundle from the code in this PR:
Fourteen Pages Changed SizeThe following pages changed size from the code in this PR compared to its base branch:
DetailsOnly the gzipped size is provided here based on an expert tip. First Load is the size of the global bundle plus the bundle for the individual page. If a user were to show up to your website and land on a given page, the first load size represents the amount of javascript that user would need to download. If Any third party scripts you have added directly to your app using the The "Budget %" column shows what percentage of your performance budget the First Load total takes up. For example, if your budget was 100kb, and a given page's first load size was 10kb, it would be 10% of your budget. You can also see how much this has increased or decreased compared to the base branch of your PR. If this percentage has increased by 20% or more, there will be a red status indicator applied, indicating that special attention should be given to this. If you see "+/- <0.01%" it means that there was a change in bundle size, but it is a trivial enough amount that it can be ignored. |
whats missing to leave draft? |
@PeerRich Currently, the app receives the users/group events from the identity provider; the next step is to update the database based on the directory sync events. For example, on the |
@leog I would Appreciate it if you could take a look at this PR, no rush. Let me know if you have any questions. Thanks! |
Hey @devkiran. Great job so far. Found some things in the front-end, let me know if I should help you with any of these. Front-end issues (cc our Head of Product @ciaranha):
Back-end notes
Thanks. |
@leog Thanks for reviewing the PR, I have added the changes you suggested. Please see my comments below.
|
@devkiran Thank you for replying. Understood the flows. I will see now who should be tackling the mapping with each event. |
Hey there, there is a merge conflict, can you take a look? |
Hey there, there is a merge conflict, can you take a look? |
* Rename .env variables * Remove instances of old variable names * Add credential sync secret to request for new token * Update invalid secret message Co-authored-by: Keith Williams <keithwillcode@gmail.com> --------- Co-authored-by: Keith Williams <keithwillcode@gmail.com>
5178241
to
1ba9172
Compare
04f572f
to
921cf3c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It looks good to me now 🙏 As it has the high-risk label I am waiting with my approval until someone from @calcom/foundation looks over it first
if (tab.name === "security" && !HOSTED_CAL_FEATURES) { | ||
tab.children?.push({ name: "sso_configuration", href: "/settings/security/sso" }); | ||
// TODO: Enable dsync for self hosters | ||
// tab.children?.push({ name: "directory_sync", href: "/settings/security/dsync" }); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we need these comments? Since we already have it on line 103?
|
||
const UNSTABLE_HANDLER_CACHE: DsyncRouterHandlerCache = {}; | ||
|
||
export const dsyncRouter = router({ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we use the current desired boilerplate as done here? https://github.com/calcom/cal.com/pull/10849/files
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Dsync routes shouldn't be public. I noticed that PR only made changes to the public router. I looked at the event type _router
file and it's following the same convention.
packages/trpc/server/routers/viewer/teams/inviteMember/inviteMember.handler.ts
Show resolved
Hide resolved
input, | ||
}: { | ||
usernameOrEmail: string; | ||
team: Awaited<ReturnType<typeof getTeamOrThrow>>; | ||
translation: TFunction; | ||
ctx: { user: NonNullable<TrpcSessionUser> }; | ||
inviterName: string; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Some code quality comments in there. Still need to test locally.
628846f
to
129bcb3
Compare
What does this PR do?
Fixes #83
Requirement/Documentation
Type of change
How should this be tested?
NEXT_PUBLIC_HOSTED_CAL_FEATURES=1
andSAML_DATABASE_URL
is setMandatory Tasks