mirror of
https://github.com/windmill-labs/windmill.git
synced 2026-08-19 00:02:03 +00:00
66 lines
3.8 KiB
SQL
66 lines
3.8 KiB
SQL
-- Fixture for WM_END_USER_EMAIL tests
|
|
-- Sets up 3 users with different workspace memberships:
|
|
-- 1. test@windmill.dev - in test-workspace (from base.sql)
|
|
-- 2. other-ws@windmill.dev - in other-workspace only
|
|
-- 3. no-ws@windmill.dev - not in any workspace
|
|
|
|
-- Second workspace for cross-workspace user
|
|
INSERT INTO workspace (id, name, owner)
|
|
VALUES ('other-workspace', 'other-workspace', 'other-ws-user');
|
|
|
|
INSERT INTO workspace_key(workspace_id, kind, key)
|
|
VALUES ('other-workspace', 'cloud', 'other-key');
|
|
|
|
INSERT INTO workspace_settings (workspace_id)
|
|
VALUES ('other-workspace');
|
|
|
|
INSERT INTO group_ (workspace_id, name, summary, extra_perms)
|
|
VALUES ('other-workspace', 'all', 'All users', '{}');
|
|
|
|
-- User in other-workspace only (not in test-workspace)
|
|
INSERT INTO password(email, password_hash, login_type, super_admin, verified, name)
|
|
VALUES ('other-ws@windmill.dev', 'hash', 'password', false, true, 'Other WS User');
|
|
|
|
INSERT INTO usr(workspace_id, email, username, is_admin, role)
|
|
VALUES ('other-workspace', 'other-ws@windmill.dev', 'other-ws-user', true, 'Admin');
|
|
|
|
-- NOTE: plaintext `token` column is included for backward compat during transition.
|
|
-- Remove it once the `token` column is dropped from the schema.
|
|
INSERT INTO token(token_hash, token_prefix, token, email, label, super_admin)
|
|
VALUES (encode(sha256('OTHER_WS_TOKEN'::bytea), 'hex'), 'OTHER_WS_T', 'OTHER_WS_TOKEN', 'other-ws@windmill.dev', 'other ws token', false);
|
|
|
|
-- User not in any workspace
|
|
INSERT INTO password(email, password_hash, login_type, super_admin, verified, name)
|
|
VALUES ('no-ws@windmill.dev', 'hash', 'password', false, true, 'No WS User');
|
|
|
|
INSERT INTO token(token_hash, token_prefix, token, email, label, super_admin)
|
|
VALUES (encode(sha256('NO_WS_TOKEN'::bytea), 'hex'), 'NO_WS_TOKE', 'NO_WS_TOKEN', 'no-ws@windmill.dev', 'no ws token', false);
|
|
|
|
-- Script that returns WM_END_USER_EMAIL (public via extra_perms)
|
|
INSERT INTO script (workspace_id, created_by, content, schema, summary, description, path, hash, language, lock, kind, extra_perms)
|
|
VALUES (
|
|
'test-workspace', 'test-user',
|
|
'export function main() { return Deno.env.get("WM_END_USER_EMAIL") || ""; }',
|
|
'{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{},"required":[],"type":"object"}',
|
|
'Returns WM_END_USER_EMAIL', '', 'f/test/get_end_user_email', 900001, 'deno', '', 'script',
|
|
'{"g/all": true}'
|
|
);
|
|
|
|
-- Flow that returns WM_END_USER_EMAIL (public via extra_perms)
|
|
INSERT INTO flow (workspace_id, summary, description, path, versions, schema, value, edited_by, extra_perms)
|
|
VALUES (
|
|
'test-workspace', 'Returns WM_END_USER_EMAIL', '', 'f/test/get_end_user_email_flow', '{900002}',
|
|
'{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{},"required":[],"type":"object"}',
|
|
'{"modules": [{"id": "a", "value": {"type": "rawscript", "language": "deno", "content": "export function main() { return Deno.env.get(\"WM_END_USER_EMAIL\") || \"\"; }", "input_transforms": {}}}, {"id": "b", "value": {"type": "rawscript", "language": "deno", "content": "export function main() { return Deno.env.get(\"WM_END_USER_EMAIL\") || \"\"; }", "input_transforms": {}}}]}',
|
|
'test-user',
|
|
'{"g/all": true}'
|
|
);
|
|
|
|
INSERT INTO flow_version (id, workspace_id, path, schema, value, created_by)
|
|
VALUES (
|
|
900002, 'test-workspace', 'f/test/get_end_user_email_flow',
|
|
'{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{},"required":[],"type":"object"}',
|
|
'{"modules": [{"id": "a", "value": {"type": "rawscript", "language": "deno", "content": "export function main() { return Deno.env.get(\"WM_END_USER_EMAIL\") || \"\"; }", "input_transforms": {}}}, {"id": "b", "value": {"type": "rawscript", "language": "deno", "content": "export function main() { return Deno.env.get(\"WM_END_USER_EMAIL\") || \"\"; }", "input_transforms": {}}}]}',
|
|
'test-user'
|
|
);
|