Merge pull request #150 from DoWhile-UOM/dev #40
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build, test, and deploy ASP.Net Core app to Azure Web App - firststepdowhile | |
on: | |
push: | |
branches: | |
- production | |
workflow_dispatch: | |
jobs: | |
build: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up .NET Core | |
uses: actions/setup-dotnet@v4 | |
with: | |
dotnet-version: '8.x' | |
- name: Build with dotnet | |
run: dotnet build FirstStep/Firststep.csproj --configuration Release | |
- name: Publish with dotnet | |
run: dotnet publish FirstStep/Firststep.csproj --configuration Release --output ./published | |
- name: Restore test projects | |
run: dotnet restore FirstStepTest/FirstStepTest.csproj | |
- name: Build test projects | |
run: dotnet build FirstStepTest/FirstStepTest.csproj --configuration Release | |
- name: Run tests | |
run: dotnet test FirstStepTest/FirstStepTest.csproj --logger trx --results-directory ./TestResults | |
- name: Upload test results | |
uses: actions/upload-artifact@v4 | |
if: always() | |
with: | |
name: test-results | |
path: ./TestResults | |
- name: Upload artifact for deployment job | |
uses: actions/upload-artifact@v4 | |
with: | |
name: .net-app | |
path: ./published | |
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@v4 | |
with: | |
name: .net-app | |
path: ./published | |
- name: Deploy to Azure Web App | |
id: deploy-to-webapp | |
uses: azure/webapps-deploy@v2 | |
with: | |
app-name: 'firststepdowhile' | |
slot-name: 'Production' | |
publish-profile: ${{ secrets.AZUREAPPSERVICE_PUBLISHPROFILE_D30400F869564A889270825B210BE0D7 }} | |
package: ./published |