diff options
author | skjnldsv <skjnldsv@protonmail.com> | 2024-08-22 08:59:19 +0200 |
---|---|---|
committer | John Molakvoæ <skjnldsv@users.noreply.github.com> | 2024-08-22 13:32:59 +0200 |
commit | d3a0e8308bdc6937fa455800d02c496ab62450c4 (patch) | |
tree | d63e454e951cc97def367b092de0917852cbeba3 | |
parent | c0781f524f15553891553977848376d672949e7e (diff) | |
download | nextcloud-server-d3a0e8308bdc6937fa455800d02c496ab62450c4.tar.gz nextcloud-server-d3a0e8308bdc6937fa455800d02c496ab62450c4.zip |
chore(cypress): enable apcu
Signed-off-by: skjnldsv <skjnldsv@protonmail.com>
-rw-r--r-- | cypress/dockerNode.ts | 30 |
1 files changed, 24 insertions, 6 deletions
diff --git a/cypress/dockerNode.ts b/cypress/dockerNode.ts index 14ca7b936b1..2c8aa6c5109 100644 --- a/cypress/dockerNode.ts +++ b/cypress/dockerNode.ts @@ -41,10 +41,6 @@ export const startNextcloud = async function(branch: string = getCurrentGitBranc // https://github.com/apocas/dockerode/issues/357 docker.modem.followProgress(stream, onFinished) - /** - * - * @param err - */ function onFinished(err) { if (!err) { resolve(true) @@ -91,6 +87,7 @@ export const startNextcloud = async function(branch: string = getCurrentGitBranc }, Env: [ `BRANCH=${branch}`, + 'APCU=1', ], }) await container.start() @@ -129,9 +126,28 @@ export const configureNextcloud = async function() { await runExec(container, ['php', 'occ', 'config:system:set', 'default_locale', '--value', 'en_US'], true) await runExec(container, ['php', 'occ', 'config:system:set', 'force_locale', '--value', 'en_US'], true) await runExec(container, ['php', 'occ', 'config:system:set', 'enforce_theme', '--value', 'light'], true) + // Speed up test and make them less flaky. If a cron execution is needed, it can be triggered manually. await runExec(container, ['php', 'occ', 'background:cron'], true) + // Checking apcu + const distributed = await runExec(container, ['php', 'occ', 'config:system:get', 'memcache.distributed']) + const local = await runExec(container, ['php', 'occ', 'config:system:get', 'memcache.local']) + const hashing = await runExec(container, ['php', 'occ', 'config:system:get', 'hashing_default_password']) + + console.log('ββ Checking APCu configuration... π') + if (!distributed.trim().includes('\\OC\\Memcache\\APCu') + || !local.trim().includes('\\OC\\Memcache\\APCu') + || !hashing.trim().includes('true')) { + console.log('ββ APCu is not properly configured π') + throw new Error('APCu is not properly configured') + } + console.log('β ββ OK !') + + // Saving DB state + console.log('ββ Creating init DB snapshot...') + await runExec(container, ['cp', '/var/www/html/data/owncloud.db', '/var/www/html/data/owncloud.db-init'], true) + console.log('ββ Nextcloud is now ready to use π') } @@ -261,7 +277,7 @@ const runExec = async function( command: string[], verbose = false, user = 'www-data', -) { +): Promise<string> { const exec = await container.exec({ Cmd: command, AttachStdout: true, @@ -270,6 +286,7 @@ const runExec = async function( }) return new Promise((resolve, reject) => { + let output = '' exec.start({}, (err, stream) => { if (err) { reject(err) @@ -277,11 +294,12 @@ const runExec = async function( if (stream) { stream.setEncoding('utf-8') stream.on('data', str => { + output += str if (verbose && str.trim() !== '') { console.log(`ββ ${str.trim().replace(/\n/gi, '\nββ ')}`) } }) - stream.on('end', resolve) + stream.on('end', () => resolve(output)) } }) }) |