import { exec } from 'child_process'
import { copy, ensureDir, readFile, remove } from 'fs-extra'
import { basename, join } from 'path'
-import { root } from '@shared/core-utils'
+import { isGithubCI, root, wait } from '@shared/core-utils'
+import { getFileSize } from '@shared/extra-utils'
import { HttpStatusCode } from '@shared/models'
-import { getFileSize, isGithubCI, wait } from '../miscs'
import { AbstractCommand, OverrideCommandOptions } from '../shared'
export class ServersCommand extends AbstractCommand {
})
}
- async cleanupTests () {
- const p: Promise<any>[] = []
+ cleanupTests () {
+ const promises: Promise<any>[] = []
+
+ const saveGithubLogsIfNeeded = async () => {
+ if (!isGithubCI()) return
- if (isGithubCI()) {
await ensureDir('artifacts')
const origin = this.buildDirectory('logs/peertube.log')
}
if (this.server.parallel) {
- p.push(ServersCommand.flushTests(this.server.internalServerNumber))
+ const promise = saveGithubLogsIfNeeded()
+ .then(() => ServersCommand.flushTests(this.server.internalServerNumber))
+
+ promises.push(promise)
}
if (this.server.customConfigFile) {
- p.push(remove(this.server.customConfigFile))
+ promises.push(remove(this.server.customConfigFile))
}
- return p
+ return promises
}
async waitUntilLog (str: string, count = 1, strictCount = true) {