1
0

adding TestFiles to artifact config, transfers extra test files to VM

This commit is contained in:
Bradley Landherr 2020-09-13 03:31:00 +00:00 committed by Mikhail Klementev
parent 90829e2409
commit e43993c6e5
3 changed files with 26 additions and 0 deletions

View File

@ -108,10 +108,18 @@ type PreloadModule struct {
TimeoutAfterLoad Duration TimeoutAfterLoad Duration
} }
// Extra test files to copy over
type FileTransfer struct {
User string
Local string
Remote string
}
// Artifact is for .out-of-tree.toml // Artifact is for .out-of-tree.toml
type Artifact struct { type Artifact struct {
Name string Name string
Type ArtifactType Type ArtifactType
TestFiles []FileTransfer
SourcePath string SourcePath string
SupportedKernels []KernelMask SupportedKernels []KernelMask

View File

@ -201,6 +201,15 @@ func debugHandler(kcfg config.KernelConfig, workPath, kernRegex, gdb string,
return return
} }
// Copy all test files to the remote machine
for _,f := range ka.TestFiles {
err = q.CopyFile(f.User,f.Local,f.Remote)
if err != nil {
log.Println("error copy err:", err, f.Local, f.Remote)
return
}
}
coloredRemoteFile := aurora.BgGreen(aurora.Black(remoteFile)) coloredRemoteFile := aurora.BgGreen(aurora.Black(remoteFile))
fmt.Printf("[*] build result copied to %s\n", coloredRemoteFile) fmt.Printf("[*] build result copied to %s\n", coloredRemoteFile)

9
pew.go
View File

@ -251,6 +251,15 @@ func copyArtifactAndTest(q *qemu.System, ka config.Artifact,
} }
res.Run.Ok = true res.Run.Ok = true
// Copy all test files to the remote machine
for _,f := range ka.TestFiles {
err = q.CopyFile(f.User,f.Local,f.Remote)
if err != nil {
log.Println("error copy err:", err, f.Local, f.Remote)
return
}
}
res.Test.Output, err = testKernelModule(q, ka, remoteTest) res.Test.Output, err = testKernelModule(q, ka, remoteTest)
if err != nil { if err != nil {
log.Println(res.Test.Output, err) log.Println(res.Test.Output, err)