name: Build and deploy .NET Core application to Web App tetriscloneapp on: push: branches: - main env: AZURE_WEBAPP_NAME: tetriscloneapp AZURE_WEBAPP_PACKAGE_PATH: TetrisClone.WebApi/publish CONFIGURATION: Release DOTNET_CORE_VERSION: 6.0.x WORKING_DIRECTORY: TetrisClone.WebApi jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: actions/setup-dotnet@v1.8.0 with: include-prerelease: True dotnet-version: ${{ env.DOTNET_CORE_VERSION }} - name: Restore run: dotnet restore "${{ env.WORKING_DIRECTORY }}" - name: Build run: dotnet build "${{ env.WORKING_DIRECTORY }}" --configuration ${{ env.CONFIGURATION }} --no-restore - name: Test run: dotnet test "${{ env.WORKING_DIRECTORY }}" --no-build - name: Publish run: dotnet publish "${{ env.WORKING_DIRECTORY }}" --configuration ${{ env.CONFIGURATION }} --no-build --output "${{ env.AZURE_WEBAPP_PACKAGE_PATH }}" - name: Deploy to Azure WebApp uses: azure/webapps-deploy@v2 with: app-name: ${{ env.AZURE_WEBAPP_NAME }} publish-profile: ${{ secrets.TETRISCLONEAPP_FFFF }} package: ${{ env.AZURE_WEBAPP_PACKAGE_PATH }} - name: Publish Artifacts uses: actions/upload-artifact@v1.0.0 with: name: webapp path: ${{ env.AZURE_WEBAPP_PACKAGE_PATH }}