From f80e43ed260d288dc2253c7a7246e55f4f27aea7 Mon Sep 17 00:00:00 2001 From: Seth Boyles Date: Thu, 21 May 2020 16:24:43 -0700 Subject: [PATCH] Add script to generate a user with many roles * for performance testing #1618 [#172968474] Co-authored-by: Seth Boyles Co-authored-by: Aakash Shah --- scripts/seed_roles.rb | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 scripts/seed_roles.rb diff --git a/scripts/seed_roles.rb b/scripts/seed_roles.rb new file mode 100644 index 00000000000..1095cd51629 --- /dev/null +++ b/scripts/seed_roles.rb @@ -0,0 +1,31 @@ +# For creating a few users with many roles +# 1 users; 20 orgs; 10 spaces per org +# usage: pipe this script into bin/console on the api vm + +NUM_ORGS = 20 +NUM_SPACES = 10 + +org_roles = %w/manager auditor billing_manager/ +space_roles = %w/developer manager auditor/ + +user = User.find_or_create(guid: 'seed-role-user') + +NUM_ORGS.times do |i| + org = VCAP::CloudController::Organization.find_or_create( + name: "seed-role-org-#{i}", + status: Organization::ACTIVE, + ) + org_roles.each do |org_role| + org.add_user(user) + org.send("add_#{org_role}", user) + end + NUM_SPACES.times do |j| + space = VCAP::CloudController::Space.find_or_create(name: "seed-role-space-#{j}", organization: org) + + space_roles.each do |space_role| + space.send("add_#{space_role}", user) + end + end +end + +# User.where(admin: false).all.map(&:destroy)