Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否可以通过gitlab-ci.yml将文件从docker容器复制到gitlab存储库_Docker_Automated Tests_Gitlab_Gitlab Ci - Fatal编程技术网

是否可以通过gitlab-ci.yml将文件从docker容器复制到gitlab存储库

是否可以通过gitlab-ci.yml将文件从docker容器复制到gitlab存储库,docker,automated-tests,gitlab,gitlab-ci,Docker,Automated Tests,Gitlab,Gitlab Ci,我用自动测试创建了一个docker映像,生成了一个报告XML文件。测试运行后,将生成此文件。我想将此文件复制到存储库,因为管道需要此文件来显示结果测试: 我的gitlab脚本: 阶段: -试验 测试: 图片:docker:最新 服务: -姓名:docker:dind 入口点:[“env”、“-u”、“DOCKER\u主机”] 命令:[“dockerd entrypoint.sh”] 变量: DOCKER_主机:tcp://docker:2375/ DOCKER_驱动程序:覆盖2 DOCKER_

我用自动测试创建了一个docker映像,生成了一个报告XML文件。测试运行后,将生成此文件。我想将此文件复制到存储库,因为管道需要此文件来显示结果测试:

我的gitlab脚本:

阶段:
-试验
测试:
图片:docker:最新
服务:
-姓名:docker:dind
入口点:[“env”、“-u”、“DOCKER\u主机”]
命令:[“dockerd entrypoint.sh”]
变量:
DOCKER_主机:tcp://docker:2375/
DOCKER_驱动程序:覆盖2
DOCKER_TLS_CERTDIR:“
阶段:测试
在脚本之前:
-docker登录-u“xxxx”-p“yyyy”docker.io
脚本:
-docker运行--名称authContainer“xxxx/dockerImage:0.0.1”
在脚本之后:
-docker cp authContainer:/artifacts/test-result.xml。
人工产品:
时间:总是
路径:
-test-result.xml
报告:
朱尼特:
-test-result.xml
Dockerfile:

    FROM mcr.microsoft.com/dotnet/core/sdk:2.1
    
    COPY /publish  /AutomaticTests
    WORKDIR /Spinelle.AutomaticTests
    
    RUN apt-get update -y
    RUN apt install unzip
    
    RUN wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
    RUN dpkg -i google-chrome-stable_current_amd64.deb; apt-get -fy install
    
    RUN curl https://chromedriver.storage.googleapis.com/84.0.4147.30/chromedriver_linux64.zip -o /usr/local/bin/chromedriver
    RUN unzip -o /usr/local/bin/chromedriver -d /Spinelle.AutomaticTests
    RUN chmod 777 /Spinelle.AutomaticTests
     
    CMD dotnet vstest /Parallel AutomaticTests.dll --TestAdapterPath:. --logger:"nunit;LogFilePath=/artifacts/test-result.xml;MethodFormat=Class;FailureBodyFormat=Verbose"

你是。gitlab ci文件看起来不错。您可以将XML报告作为工件,gitlab将从中填充结果。下面是我使用过的脚本,可以看到结果

  script:
    - pytest -o junit_family=xunit2 --junitxml=report.xml --cov=. --cov-report html
    - coverage report
  coverage: '/^TOTAL.+?(\d+\%)$/'
  artifacts:
    paths:
      - coverage
    reports:
      junit: report.xml
    when: always

您在提供的CI作业中遇到了哪些错误?