Reference
Arcane.provisioning.plan()
Creates a current read-only provisioning plan without applying it. Provisioner-only; requires provisioning.manage.
This focused page is derived from the mechanically checked full member inventory.
Syntax
Arcane.provisioning.plan(usernames)
Parameters
Username or array
Return value
Promise<{ok, version, installation, requirements, users, usernamePolicy, elevated, simulation, blocked, steps}>
Description
Creates a current read-only provisioning plan without applying it. Provisioner-only; requires provisioning.manage.
Overview
Builds a read-only plan for provisioning one or more local Arcane users. It validates host-specific username policy, inspects current installation and requirements, and describes the work that a later privileged operation would perform. It does not create users, change passwords, assign shells, or install Arcane.
Input and result
Pass one username or an array. The frontend normalizes a single value to an array; Core applies the native username policy and rejects the whole request when validation fails.
The Provisioner-only method requires provisioning.manage and resolves to:
{
ok, version, installation, requirements,
users: [{username, exists, action}],
usernamePolicy, elevated, simulation, blocked, steps
}
Treat the returned plan as a current snapshot. Re-read it before presenting a later mutation because accounts, elevation, requirements, or installation state may have changed.
Example
async function previewProvisioning(usernames) {
const plan = await Arcane.provisioning.plan(usernames);
for (const user of plan.users) {
console.log(`${user.username}: ${user.action}`);
}
return plan;
}
await previewProvisioning(['arcane-demo-user']);