我目前有一个Asp.Net(4.6版本)项目,我的公司刚刚迁移到Github上。我们目前使用Jenkins来处理我们的CICD管道,但希望能迁移到github动作。我想创建一个github动作来构建项目并运行单元测试。测试项目是自己的DLL,使用NUnit作为测试运行器。
我目前的计划是尝试将项目容器化,并使用github action的容器动作来尝试构建它。我知道github actions只构建基于linux的容器,所以我不确定这种方法是否可行。我已经找到了Asp.Net应用程序容器化的资源,但是对于如何将容器化的应用程序与github actions集成在一起,我还没有找到什么好办法。如果有任何帮助,我将感激不尽
如果你的单元测试是在dockerfile里面运行的,那么你需要做的就是触发一次 docker build
从github行动,它将运行docker文件中的一切,包括运行测试。
ASP.NET Core在linux容器上运行良好,可能是最流行的容器化运行方式。
steps:
- uses: actions/checkout@v1
‐ name: build-push
uses: docker/build-push-action@v1
with:
username: ${{ DOCKER_USERNAME }}
password: ${{ DOCKER_PASSWORD }}
registry: myregistry
repository: myorg/myrepo
tags: v1
请看其他关于如何在dockerfiles里面运行nunit测试的资源,我相信那是一个单独的问题,如 在docker容器内运行dotnet测试