Files
threshold-ui/e2e-tests/helpers/boundary-cli/roles.js
T

30 lines
665 B
JavaScript
Raw Normal View History

/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: BUSL-1.1
*/
import { execSync } from 'node:child_process';
import { nanoid } from 'nanoid';
/**
* Creates a new role
* @param {string} scopeId ID of the scope under which the role will be created.
* @returns {Promise<string>} new role's ID
*/
export async function createRole(scopeId) {
const roleName = 'role-' + nanoid();
let role;
try {
role = JSON.parse(
execSync(
`boundary roles create \
-scope-id ${scopeId} \
-name ${roleName} \
-format json`,
),
).item;
} catch (e) {
console.log(`${e.stderr}`);
}
return role.id;
}