Files
windmill/backend/windmill-common/tests/fixtures/instance_group_auto_add.sql
2026-02-11 14:04:54 +00:00

77 lines
2.8 KiB
SQL

-- Fixture for instance group auto-add tests
-- Sets up test data for testing the interaction between instance groups and workspace auto-add
-- Create additional workspaces for testing
INSERT INTO workspace (id, name, owner)
VALUES
('ws-with-auto-add', 'Workspace with Auto Add', 'admin'),
('ws-no-auto-add', 'Workspace without Auto Add', 'admin'),
('ws-multi-group', 'Workspace with Multiple Groups', 'admin')
ON CONFLICT DO NOTHING;
INSERT INTO workspace_settings (workspace_id)
VALUES
('ws-with-auto-add'),
('ws-no-auto-add'),
('ws-multi-group')
ON CONFLICT DO NOTHING;
INSERT INTO workspace_key(workspace_id, kind, key)
VALUES
('ws-with-auto-add', 'cloud', 'key-auto-add'),
('ws-no-auto-add', 'cloud', 'key-no-auto'),
('ws-multi-group', 'cloud', 'key-multi')
ON CONFLICT DO NOTHING;
-- Create instance groups
INSERT INTO instance_group (name, summary, id)
VALUES
('engineering', 'Engineering team', 'eng-uuid-001'),
('sales', 'Sales team', 'sales-uuid-002'),
('admins', 'Admin group', 'admin-uuid-003')
ON CONFLICT DO NOTHING;
-- Create users in the password table (required for auto-add eligibility)
INSERT INTO password (email, password_hash, login_type, super_admin, verified, name)
VALUES
('alice@example.com', 'hash1', 'password', false, true, 'Alice'),
('bob@example.com', 'hash2', 'password', false, true, 'Bob'),
('charlie@example.com', 'hash3', 'password', false, true, 'Charlie'),
('dave@example.com', 'hash4', 'password', false, true, 'Dave'),
('admin@windmill.dev', 'hash5', 'password', true, true, 'Admin')
ON CONFLICT DO NOTHING;
-- Add users to instance groups
INSERT INTO email_to_igroup (email, igroup)
VALUES
('alice@example.com', 'engineering'),
('bob@example.com', 'engineering'),
('bob@example.com', 'sales'),
('charlie@example.com', 'sales'),
('dave@example.com', 'admins')
ON CONFLICT DO NOTHING;
-- Create admin user in workspaces for running tests
INSERT INTO usr (workspace_id, username, email, is_admin, operator)
VALUES
('ws-with-auto-add', 'admin', 'admin@windmill.dev', true, false),
('ws-no-auto-add', 'admin', 'admin@windmill.dev', true, false),
('ws-multi-group', 'admin', 'admin@windmill.dev', true, false)
ON CONFLICT DO NOTHING;
-- Create the 'all' group for each workspace (required for user auto-add)
INSERT INTO group_ (workspace_id, name, summary, extra_perms)
VALUES
('ws-with-auto-add', 'all', 'All users', '{}'),
('ws-no-auto-add', 'all', 'All users', '{}'),
('ws-multi-group', 'all', 'All users', '{}')
ON CONFLICT DO NOTHING;
-- Add admin to the 'all' group
INSERT INTO usr_to_group (workspace_id, usr, group_)
VALUES
('ws-with-auto-add', 'admin', 'all'),
('ws-no-auto-add', 'admin', 'all'),
('ws-multi-group', 'admin', 'all')
ON CONFLICT DO NOTHING;