Skip to content

API route config and updated workflow #5

API route config and updated workflow

API route config and updated workflow #5

name: Azure Static Web Apps CI/CD
on:
push:
branches:
- main
pull_request:
types: [opened, synchronize, reopened, closed]
branches:
- main
jobs:
build_and_deploy_job:
if: github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.action != 'closed')
runs-on: ubuntu-latest
name: Build and Deploy Job
steps:
- uses: actions/checkout@v3
with:
submodules: true
lfs: false
# Set up .NET
- name: Set up .NET
uses: actions/setup-dotnet@v3
with:
dotnet-version: '8.0.x'
# Restore .NET dependencies
- name: Restore .NET dependencies
working-directory: ./Gallery.API
run: dotnet restore
# Build .NET API
- name: Build .NET API
working-directory: ./Gallery.API
run: dotnet build --configuration Release
# Publish .NET API
- name: Publish .NET API
working-directory: ./Gallery.API
run: dotnet publish --configuration Release --output ./publish
# Set up Node.js
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: '20.x'
# Install and build Vue.js app
- name: Install and build Vue.js app
working-directory: ./Gallery.Web
run: |
npm install
npm run build
# Deploy both frontend and backend
- name: Build And Deploy
id: builddeploy
uses: Azure/static-web-apps-deploy@v1
with:
azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN_MANGO_GROUND_0DCB75603 }}
repo_token: ${{ secrets.GITHUB_TOKEN }} # Used for Github integrations (i.e. PR comments)
action: "upload"
app_location: "./Gallery.Web/dist" # Built app content directory
api_location: "./Gallery.API/publish" # API source code path
output_location: "" # Leave empty as we're specifying exact locations
close_pull_request_job:
if: github.event_name == 'pull_request' && github.event.action == 'closed'
runs-on: ubuntu-latest
name: Close Pull Request Job
steps:
- name: Close Pull Request
id: closepullrequest
uses: Azure/static-web-apps-deploy@v1
with:
azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN_MANGO_GROUND_0DCB75603 }}
action: "close"