diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index ff2bbf7..b392982 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -1,4 +1,4 @@ -name: Build and Deploy TenantApi +name: Build and Deploy TenantApi + SkuWorker on: push: @@ -30,18 +30,34 @@ jobs: - name: Build on host run: | cd /opt/deploy/tenantapi - dotnet restore src/Api/TakeoutSaaS.TenantApi/TakeoutSaaS.TenantApi.csproj + dotnet restore TakeoutSaaS.sln dotnet publish src/Api/TakeoutSaaS.TenantApi/TakeoutSaaS.TenantApi.csproj -c Release -o /opt/deploy/tenantapi/publish --no-restore + dotnet publish src/Worker/TakeoutSaaS.SkuWorker/TakeoutSaaS.SkuWorker.csproj -c Release -o /opt/deploy/tenantapi/publish-worker --no-restore - - name: Build Docker image + - name: Apply database migrations + run: | + cd /opt/deploy/tenantapi + export ASPNETCORE_ENVIRONMENT=Development + export TAKEOUTSAAS_APPSETTINGS_DIR=/opt/deploy/tenantapi/src/Api/TakeoutSaaS.TenantApi + dotnet tool restore + dotnet tool run dotnet-ef database update \ + --context TakeoutAppDbContext \ + --project src/Infrastructure/TakeoutSaaS.Infrastructure \ + --startup-project src/Infrastructure/TakeoutSaaS.Infrastructure + + - name: Build Docker images run: | cd /opt/deploy/tenantapi docker build -t takeoutsaas-tenantapi:latest -f src/Api/TakeoutSaaS.TenantApi/Dockerfile . + docker build -t takeoutsaas-skuworker:latest -f src/Worker/TakeoutSaaS.SkuWorker/Dockerfile . - - name: Deploy container + - name: Deploy containers run: | docker stop tenantapi || true docker rm tenantapi || true + docker stop skuworker || true + docker rm skuworker || true + docker run -d \ --name tenantapi \ --restart unless-stopped \ @@ -49,6 +65,12 @@ jobs: -e ASPNETCORE_ENVIRONMENT=Development \ takeoutsaas-tenantapi:latest + docker run -d \ + --name skuworker \ + --restart unless-stopped \ + -e ASPNETCORE_ENVIRONMENT=Development \ + takeoutsaas-skuworker:latest + - name: Clean up old images run: | docker image prune -f diff --git a/src/Worker/TakeoutSaaS.SkuWorker/Dockerfile b/src/Worker/TakeoutSaaS.SkuWorker/Dockerfile new file mode 100644 index 0000000..db5ff51 --- /dev/null +++ b/src/Worker/TakeoutSaaS.SkuWorker/Dockerfile @@ -0,0 +1,4 @@ +FROM mcr.microsoft.com/dotnet/aspnet:10.0 +WORKDIR /app +COPY publish-worker/ . +ENTRYPOINT ["dotnet", "TakeoutSaaS.SkuWorker.dll"]