Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
5d21404
links and validation
carlos-r-l-rodrigues Dec 15, 2025
c7b2da5
validate user permission
carlos-r-l-rodrigues Dec 16, 2025
c013991
has-permission
carlos-r-l-rodrigues Dec 16, 2025
8911a8a
wip
carlos-r-l-rodrigues Dec 17, 2025
62764f5
sync define policies
carlos-r-l-rodrigues Dec 17, 2025
7cbf6f6
FF
carlos-r-l-rodrigues Dec 18, 2025
7595b10
Merge branch 'develop' of https://github.com/medusajs/medusa into cho…
carlos-r-l-rodrigues Dec 18, 2025
fb4d7ba
merge
carlos-r-l-rodrigues Dec 18, 2025
42e7da3
cache tags
carlos-r-l-rodrigues Dec 18, 2025
bba812f
policy loader
carlos-r-l-rodrigues Dec 18, 2025
e94a5b3
Merge branch 'develop' of https://github.com/medusajs/medusa into cho…
carlos-r-l-rodrigues Dec 18, 2025
e698c76
Merge branch 'feat/rbac-module' of https://github.com/medusajs/medusa…
carlos-r-l-rodrigues Dec 19, 2025
325d4f5
Merge branch 'feat/rbac-module' of https://github.com/medusajs/medusa…
carlos-r-l-rodrigues Dec 19, 2025
c4bec09
merge
carlos-r-l-rodrigues Dec 19, 2025
48a2541
wip
carlos-r-l-rodrigues Dec 19, 2025
9509759
Merge branch 'feat/rbac-module' of https://github.com/medusajs/medusa…
carlos-r-l-rodrigues Dec 19, 2025
b81a765
rename and prevent circular reference
carlos-r-l-rodrigues Dec 19, 2025
4c3f101
enable rbac tests
carlos-r-l-rodrigues Dec 19, 2025
b816ed3
relation endpoints
carlos-r-l-rodrigues Dec 19, 2025
787265c
Merge branch 'feat/rbac-module' into chore/rbac-user
carlos-r-l-rodrigues Dec 22, 2025
2a2b34e
update params
carlos-r-l-rodrigues Dec 22, 2025
5d3d54b
Merge branch 'feat/rbac-module' into chore/rbac-user
carlos-r-l-rodrigues Dec 22, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,7 @@ The code snippets in this section assume that your forked Medusa project and the
"@medusajs/pricing": "file:../medusa/packages/modules/pricing",
"@medusajs/product": "file:../medusa/packages/modules/product",
"@medusajs/promotion": "file:../medusa/packages/modules/promotion",
"@medusajs/rbac": "file:../medusa/packages/modules/rbac",
"@medusajs/region": "file:../medusa/packages/modules/region",
"@medusajs/sales-channel": "file:../medusa/packages/modules/sales-channel",
"@medusajs/stock-location": "file:../medusa/packages/modules/stock-location",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ import {

jest.setTimeout(60000)

process.env.MEDUSA_FF_RBAC = "true"

medusaIntegrationTestRunner({
testSuite: ({ dbConnection, api, getContainer }) => {
let container
Expand All @@ -15,6 +17,10 @@ medusaIntegrationTestRunner({
await createAdminUser(dbConnection, adminHeaders, container)
})

afterAll(async () => {
delete process.env.MEDUSA_FF_RBAC
})

describe("RBAC Policies - Admin API", () => {
describe("POST /admin/rbac/policies", () => {
it("should create a policy", async () => {
Expand Down
20 changes: 13 additions & 7 deletions integration-tests/http/__tests__/rbac/admin/rbac-roles.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ import {

jest.setTimeout(60000)

process.env.MEDUSA_FF_RBAC = "true"

medusaIntegrationTestRunner({
testSuite: ({ dbConnection, api, getContainer }) => {
let container
Expand All @@ -15,6 +17,10 @@ medusaIntegrationTestRunner({
await createAdminUser(dbConnection, adminHeaders, container)
})

afterAll(async () => {
delete process.env.MEDUSA_FF_RBAC
})

describe("RBAC Roles - Admin API", () => {
describe("POST /admin/rbac/roles", () => {
it("should create a role", async () => {
Expand Down Expand Up @@ -292,7 +298,7 @@ medusaIntegrationTestRunner({
"/admin/rbac/role-policies",
{
role_id: viewerRole.id,
scope_id: policies[0].id,
policy_id: policies[0].id,
},
adminHeaders
)
Expand All @@ -301,7 +307,7 @@ medusaIntegrationTestRunner({
expect(response.data.role_policy).toEqual(
expect.objectContaining({
role_id: viewerRole.id,
scope_id: policies[0].id,
policy_id: policies[0].id,
})
)
})
Expand All @@ -311,7 +317,7 @@ medusaIntegrationTestRunner({
"/admin/rbac/role-policies",
{
role_id: viewerRole.id,
scope_id: policies[0].id,
policy_id: policies[0].id,
},
adminHeaders
)
Expand All @@ -320,7 +326,7 @@ medusaIntegrationTestRunner({
"/admin/rbac/role-policies",
{
role_id: viewerRole.id,
scope_id: policies[1].id,
policy_id: policies[1].id,
},
adminHeaders
)
Expand All @@ -336,11 +342,11 @@ medusaIntegrationTestRunner({
expect.arrayContaining([
expect.objectContaining({
role_id: viewerRole.id,
scope_id: policies[0].id,
policy_id: policies[0].id,
}),
expect.objectContaining({
role_id: viewerRole.id,
scope_id: policies[1].id,
policy_id: policies[1].id,
}),
])
)
Expand All @@ -351,7 +357,7 @@ medusaIntegrationTestRunner({
"/admin/rbac/role-policies",
{
role_id: editorRole.id,
scope_id: policies[2].id,
policy_id: policies[2].id,
},
adminHeaders
)
Expand Down
2 changes: 2 additions & 0 deletions integration-tests/http/medusa-config.js
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@ const modules = {
},
[Modules.RBAC]: {
resolve: "@medusajs/rbac",
disable: process.env.MEDUSA_FF_RBAC !== "true",
},
}

Expand All @@ -89,6 +90,7 @@ module.exports = defineConfig({
featureFlags: {
index_engine: process.env.ENABLE_INDEX_MODULE === "true",
translation: process.env.MEDUSA_FF_TRANSLATION === "true",
rbac: process.env.MEDUSA_FF_RBAC === "true",
},
modules,
})
Loading
Loading