8 Commits

Author SHA1 Message Date
36333bad42 Merge branch 'main' into feature/deploy-to-server
All checks were successful
Game Ideas build for PR / build_blazor_app (pull_request) Successful in 38s
2025-04-27 23:30:29 +02:00
8592ecf0f0 restore branch
All checks were successful
Game Ideas build for PR / build_blazor_app (pull_request) Successful in 1m4s
2025-04-27 23:28:50 +02:00
844228ae4d correct fix branch 2025-04-27 23:28:21 +02:00
13b20903d7 correct for both workflow
All checks were successful
Game Ideas build for PR / build_blazor_app (pull_request) Successful in 38s
2025-04-27 22:46:19 +02:00
9aba2e48ea fix restore
Some checks failed
Game Ideas build for PR / build_blazor_app (pull_request) Failing after 11s
2025-04-27 22:44:55 +02:00
f006dd5b4c fix path
Some checks failed
Game Ideas build for PR / build_blazor_app (pull_request) Failing after 12s
2025-04-27 22:43:18 +02:00
eba9dfa4cf fix restore dependency
Some checks failed
Game Ideas build for PR / build_blazor_app (pull_request) Failing after 32s
2025-04-27 22:42:12 +02:00
4f37760688 Update build and add deploy pipeline
Some checks failed
Game Ideas build for PR / build_blazor_app (pull_request) Failing after 12s
2025-04-27 22:40:33 +02:00
2 changed files with 116 additions and 19 deletions

View File

@@ -1,25 +1,30 @@
name: Game Ideas build for PR
on:
pull_request:
types: [ opened, edited, reopened, synchronize ]
branches:
- 'feature/**'
- main
pull_request:
types: [ opened, edited, reopened, synchronize ]
branches:
- main
jobs:
build_blazor_app:
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@v4
build_blazor_app:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup DotNet
uses: actions/setup-dotnet@v4
with:
dotnet-version: '9'
- name: Setup .NET 9
uses: actions/setup-dotnet@v4
with:
dotnet-version: '9.0.x'
- name: Build Blazor App
run: dotnet build ./src/GameIdeas/Client/GameIdeas.BlazorApp/GameIdeas.BlazorApp.csproj
- name: Build API App
run: dotnet build ./src/GameIdeas/Server/GameIdeas.WebAPI/GameIdeas.WebAPI.csproj
- name: Restore dependencies
run: dotnet restore ./src/GameIdeas/GameIdeas.sln
- name: Build API
run: dotnet build ./src/GameIdeas/Server/GameIdeas.WebAPI/GameIdeas.WebAPI.csproj --configuration Release
- name: Build Blazor App
run: dotnet build ./src/GameIdeas/Client/GameIdeas.BlazorApp/GameIdeas.BlazorApp.csproj --configuration Release
- name: Test API
run: dotnet test ./src/GameIdeas/Server/GameIdeas.WebAPI.Tests/GameIdeas.WebAPI.Tests.csproj --configuration Release

View File

@@ -0,0 +1,92 @@
name: Game Ideas deploy
on:
push:
branches: [main] # Déclenchement sur push sur main
workflow_dispatch: # Lancer manuellement
jobs:
build-test-deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup .NET 9
uses: actions/setup-dotnet@v4
with:
dotnet-version: '9.0.x'
- name: Restore dependencies
run: dotnet restore ./src/GameIdeas/GameIdeas.sln
- name: Build API
run: dotnet build ./src/GameIdeas/Server/GameIdeas.WebAPI/GameIdeas.WebAPI.csproj --configuration Release
- name: Build Blazor App
run: dotnet build ./src/GameIdeas/Client/GameIdeas.BlazorApp/GameIdeas.BlazorApp.csproj --configuration Release
- name: Test API
run: dotnet test ./src/GameIdeas/Server/GameIdeas.WebAPI.Tests/GameIdeas.WebAPI.Tests.csproj --configuration Release
- name: Publish API
run: dotnet publish ./src/GameIdeas/Server/GameIdeas.WebAPI/GameIdeas.WebAPI.csproj --configuration Release --output ./publish/api
- name: Publish Blazor App
run: dotnet publish ./src/GameIdeas/Client/GameIdeas.BlazorApp/GameIdeas.BlazorApp.csproj --configuration Release --output ./publish/blazor
- name: Copy API to Server
uses: appleboy/scp-action@v1
with:
host: ${{ secrets.DEV_HOST }}
username: ${{ secrets.DEV_USERNAME }}
password: ${{ secrets.DEV_PASSWORD }}
port: ${{ secrets.DEV_PORT }}
source: "./publish/api/*"
target: "/home/gameideas/api"
- name: Copy Blazor App to Server
uses: appleboy/scp-action@v1
with:
host: ${{ secrets.DEV_HOST }}
username: ${{ secrets.DEV_USERNAME }}
password: ${{ secrets.DEV_PASSWORD }}
port: ${{ secrets.DEV_PORT }}
source: "./publish/blazor/*"
target: "/home/gameideas/blazor"
- name: Update Entity Framework API on server
uses: appleboy/ssh-action@v1
with:
host: ${{ secrets.DEV_HOST }}
username: ${{ secrets.DEV_USERNAME }}
password: ${{ secrets.DEV_PASSWORD }}
port: ${{ secrets.DEV_PORT }}
script: |
cd /home/gameideas/api
dotnet ef database update --no-build
- name: Start API on server
uses: appleboy/ssh-action@v1
with:
host: ${{ secrets.DEV_HOST }}
username: ${{ secrets.DEV_USERNAME }}
password: ${{ secrets.DEV_PASSWORD }}
port: ${{ secrets.DEV_PORT }}
script: |
pkill -f "GameIdeas.WebAPI" || true
cd /home/gameideas/api
nohup dotnet GameIdeas.WebAPI.dll > api.log 2>&1 &
- name: Start Blazor App on server
uses: appleboy/ssh-action@v1
with:
host: ${{ secrets.DEV_HOST }}
username: ${{ secrets.DEV_USERNAME }}
password: ${{ secrets.DEV_PASSWORD }}
port: ${{ secrets.DEV_PORT }}
script: |
pkill -f "GameIdeas.BlazorApp" || true
cd /home/gameideas/blazor
nohup dotnet GameIdeas.BlazorApp.dll > blazor.log 2>&1 &