From 83ef31fe10061f0d3db0df1bc5e7f208972982eb Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Thu, 10 Dec 2020 11:24:17 +0100 Subject: Save logs on ci failure --- shared/extra-utils/server/servers.ts | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) (limited to 'shared/extra-utils/server') diff --git a/shared/extra-utils/server/servers.ts b/shared/extra-utils/server/servers.ts index e88482e49..fe4ed3e48 100644 --- a/shared/extra-utils/server/servers.ts +++ b/shared/extra-utils/server/servers.ts @@ -2,11 +2,11 @@ import { expect } from 'chai' import { ChildProcess, exec, fork } from 'child_process' -import { copy, pathExists, readdir, readFile, remove } from 'fs-extra' +import { copy, ensureDir, pathExists, readdir, readFile, remove } from 'fs-extra' import { join } from 'path' import { randomInt } from '../../core-utils/miscs/miscs' import { VideoChannel } from '../../models/videos' -import { buildServerDirectory, getFileSize, root, wait } from '../miscs/miscs' +import { buildServerDirectory, getFileSize, isGithubCI, root, wait } from '../miscs/miscs' interface ServerInfo { app: ChildProcess @@ -298,11 +298,23 @@ function killallServers (servers: ServerInfo[]) { } } -function cleanupTests (servers: ServerInfo[]) { +async function cleanupTests (servers: ServerInfo[]) { killallServers(servers) + if (isGithubCI()) { + await ensureDir('artifacts') + } + const p: Promise[] = [] for (const server of servers) { + if (isGithubCI()) { + const origin = await buildServerDirectory(server, 'logs/peertube.log') + const destname = `peertube-${server.internalServerNumber}.log` + console.log('Saving logs %s.', destname) + + await copy(origin, join('artifacts', destname)) + } + if (server.parallel) { p.push(flushTests(server.internalServerNumber)) } -- cgit v1.2.3