Github Action DotNetCore sln和项目位于同一文件夹中


name: .NET Core

日期:推送:分支:[主控形状]pull_request:分支:[主]

作业:构建:

runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Setup .NET Core
uses: actions/setup-dotnet@v1
with:
dotnet-version: 3.1.101
- name: Install dependencies
run: dotnet restore
- name: Build
run: dotnet build --configuration Release --no-restore
- name: Test
run: dotnet test --no-restore --verbosity normal

这是我的yml代码。它显示错误MSBUILD:error MSB1003:指定项目或解决方案文件。当前工作目录不包含项目或解决方案文件。

[error]进程已完成,退出代码为1

dotnet restore步骤中,因为项目文件夹中的sln。如何解决这个问题

只需定义具有解决方案或项目文件的目录的路径。假设项目文件位置为src/MyProject/MyProject.csproj,则Install dependencies步骤应为:

- name: Install dependencies
run: dotnet restore
working-directory: src/MyProject

指定解决方案名称

- name: Build with dotnet
run: dotnet build Document.Approval.sln --configuration Release
- name: dotnet publish
run: dotnet publish Document.Approval.sln -c Release -o ${{env.DOTNET_ROOT}}/myapp

您也可以使用"默认值";为所有任务设置如下:

jobs:
job1:
runs-on: ubuntu-latest
defaults:
run:
working-directory: scripts

来源:https://github.community/t/use-working-directory-for-entire-job/16747/16

相关内容

最新更新