MCPcopy Create free account
hub / github.com/adcontextprotocol/adcp / seedDevMemberships

Function seedDevMemberships

server/src/dev-setup.ts:245–274  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

243}
244
245async function seedDevMemberships(): Promise<void> {
246 const pool = getPool();
247 const memberships = [
248 // Admin user in their default org
249 { userId: 'user_dev_admin_001', orgId: 'org_dev_company_001', membershipId: 'mem_dev_admin_001', email: 'admin@test.local', firstName: 'Admin', lastName: 'Tester', role: 'owner' },
250 // Admin user in IPG hierarchy org
251 { userId: 'user_dev_admin_001', orgId: 'org_dev_ipg_um', membershipId: 'mem_dev_admin_ipg', email: 'admin@test.local', firstName: 'Admin', lastName: 'Tester', role: 'owner' },
252 // Member user
253 { userId: 'user_dev_member_001', orgId: 'org_dev_company_001', membershipId: 'mem_dev_member_001', email: 'member@test.local', firstName: 'Member', lastName: 'User', role: 'member' },
254 // Builder user (paid tier org)
255 { userId: 'user_dev_builder_001', orgId: 'org_dev_builder_001', membershipId: 'mem_dev_builder_001', email: 'builder@test.local', firstName: 'Builder', lastName: 'Member', role: 'owner' },
256 // Extra team members for the builder org (to show team dynamics)
257 { userId: 'user_dev_learner_001', orgId: 'org_dev_builder_001', membershipId: 'mem_dev_learner1_builder', email: 'learner1@test.local', firstName: 'Learner', lastName: 'One', role: 'member' },
258 { userId: 'user_dev_learner_002', orgId: 'org_dev_builder_001', membershipId: 'mem_dev_learner2_builder', email: 'learner2@test.local', firstName: 'Learner', lastName: 'Two', role: 'member' },
259 ];
260
261 for (const m of memberships) {
262 try {
263 await pool.query(
264 `INSERT INTO organization_memberships (workos_user_id, workos_organization_id, workos_membership_id, email, first_name, last_name, role, seat_type)
265 VALUES ($1, $2, $3, $4, $5, $6, $7, 'contributor')
266 ON CONFLICT (workos_user_id, workos_organization_id) DO NOTHING`,
267 [m.userId, m.orgId, m.membershipId, m.email, m.firstName, m.lastName, m.role]
268 );
269 } catch (error) {
270 logger.debug({ userId: m.userId, orgId: m.orgId }, 'Dev membership seed skipped');
271 }
272 }
273 logger.info('Seeded dev organization memberships');
274}

Callers 1

seedDevDataFunction · 0.85

Calls 2

getPoolFunction · 0.85
queryMethod · 0.80

Tested by

no test coverage detected