我想使用特定的跑步者(在我的电脑上工作,而不是“共享跑步者”)在CI测试中制作我的应用的屏幕截图。
它是一个基本的码头运动员。
我尝试将/home/myuser/mybuilds
传递给带有完整路径app.browserWindow.capturePage().then(function (imageBuffer) {
fs.writeFile('/home/myuser/mybuilds/page-full-path.png', imageBuffer)
})
的转轮配置,但在成功测试后,该文件夹为空。 (它似乎与构建有关,而不是linux路径)
可能会拍摄截图,但路径似乎是相对的。:
artifacts
那么如何在docker中构建后访问build文件夹?
修改
我可以像这样使用app.browserWindow.capturePage().then(function (imageBuffer) {
console.log("This test path");
console.log(path.join(__dirname));
var mypath = path.join(__dirname, '../..', 'testimgages', "test.png");
fs.writeFile(mypath, imageBuffer)
})
:
mytest
script:
- mytests
artifacts:
paths:
-testimages
然后在gitlab-ci.yml
{{1}}
然后从gitlab.com下载图片,但有没有办法让它更快或本地观看而无需访问gitlab.com?
答案 0 :(得分:1)
如果它在您的服务器上,那么您可以添加如下内容:
-v /some/local/path:/data/screenshots:rw
你的docker run命令。它会将服务器上的mount local dir绑定到容器中的/ data / screenshots。然后你在那里保存的所有内容都将显示在本地目录中。
答案 1 :(得分:0)
如果您不想添加音量,可以使用docker cp
复制文件:
docker cp <containerId>:/data/screenshots /local/path
您可以使用docker ps
找到您的容器ID。