如何在GitHub YML文件中指定多项目解决方案的Api项目进行部署?
如何指定仅部署解决方案中的Api项目到Azure App Service
你需要修改YML文件中的dotnet build和dotnet publish命令,明确指定Api项目的.csproj文件路径,而非默认构建整个解决方案。具体修改如下:
修改后的完整YML配置
build: runs-on: windows-latest steps: - uses: actions/checkout@v2 - name: Set up .NET Core uses: actions/setup-dotnet@v1 with: dotnet-version: '7.x' include-prerelease: true # 修改此处:替换为你Api项目的实际.csproj路径 - name: Build with dotnet run: dotnet build ./src/YourApiProject/YourApiProject.csproj --configuration Release # 修改此处:同样指定Api项目路径,确保仅发布Api项目 - name: dotnet publish run: dotnet publish ./src/YourApiProject/YourApiProject.csproj -c Release -o ${{env.DOTNET_ROOT}}/myapp - name: Upload artifact for deployment job uses: actions/upload-artifact@v2 with: name: .net-app path: ${{env.DOTNET_ROOT}}/myapp deploy: runs-on: windows-latest needs: build environment: name: 'Production' url: ${{ steps.deploy-to-webapp.outputs.webapp-url }} steps: - name: Download artifact from build job uses: actions/download-artifact@v2 with: name: .net-app - name: Deploy to Azure Web App id: deploy-to-webapp uses: azure/webapps-deploy@v2 with: app-name: 'popupshop' slot-name: 'Production' publish-profile: ${{ secrets.somesecret}} package: .
关键说明
- 把
./src/YourApiProject/YourApiProject.csproj替换成你解决方案中Api项目的真实相对路径,比如Api项目在根目录Api文件夹下的话,路径就是./Api/Api.csproj。 - 调整后,GitHub Actions只会构建和发布指定的Api项目,后续上传产物、部署环节都只会处理Api项目的发布文件,不会包含另外3个项目的内容。
内容的提问来源于stack exchange,提问作者Cef
相关产品推荐
相关产品推荐

