From 3a541ee24cf35a0fc2d175c099e24dcb8c2d3b9b Mon Sep 17 00:00:00 2001 From: Max Date: Thu, 9 Jan 2025 07:47:42 +0100 Subject: [PATCH] feat(docker): addUser command Signed-off-by: Max --- lib/docker.ts | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/lib/docker.ts b/lib/docker.ts index ceafe4d6..cc8acaeb 100644 --- a/lib/docker.ts +++ b/lib/docker.ts @@ -274,7 +274,7 @@ export const setupUsers = async function(container?: Container) { console.log('\nCreating test users… 👤') const users = ['test1', 'test2', 'test3', 'test4', 'test5'] for (const user of users) { - await runExec(['php', 'occ', 'user:add', user, '--password-from-env'], { container, verbose: true, env: ['OC_PASS=' + user] }) + await addUser(user, { container, verbose: true }) } console.log('└─ Done') } @@ -436,6 +436,20 @@ export const getSystemConfig = function( return runOcc(['config:system:get', key], { container }) } + +/** + * Add a user to the Nextcloud in the container. + */ +export const addUser = function( + user: string, + { container, env=[], verbose=false }: Partial> = {}, +) { + return runOcc( + ['user:add', user, '--password-from-env'], + { container, verbose, env: ['OC_PASS=' + user, ...env] } + ) +} + const sleep = function(milliseconds: number) { return new Promise((resolve) => setTimeout(resolve, milliseconds)) }