From 6326e54a9a1b225a30e59fede6f3c5f7b516cdd3 Mon Sep 17 00:00:00 2001
From: ValueOn AG
Date: Mon, 8 Sep 2025 23:55:44 +0200
Subject: [PATCH] build prod
---
.../workflows/main_poweron-gateway-prod.yml | 75 +++++++++++++++++++
1 file changed, 75 insertions(+)
create mode 100644 .github/workflows/main_poweron-gateway-prod.yml
diff --git a/.github/workflows/main_poweron-gateway-prod.yml b/.github/workflows/main_poweron-gateway-prod.yml
new file mode 100644
index 00000000..9dc86510
--- /dev/null
+++ b/.github/workflows/main_poweron-gateway-prod.yml
@@ -0,0 +1,75 @@
+# Docs for the Azure Web Apps Deploy action: https://github.com/Azure/webapps-deploy
+# More GitHub Actions for Azure: https://github.com/Azure/actions
+# More info on Python, GitHub Actions, and Azure App Service: https://aka.ms/python-webapps-actions
+
+name: Build and deploy Python app to Azure Web App - poweron-gateway-prod
+
+on:
+ push:
+ branches:
+ - main
+ workflow_dispatch:
+
+jobs:
+ build:
+ runs-on: ubuntu-latest
+ permissions:
+ contents: read #This is required for actions/checkout
+
+ steps:
+ - uses: actions/checkout@v4
+
+ - name: Set up Python version
+ uses: actions/setup-python@v5
+ with:
+ python-version: '3.11'
+
+ - name: Create and start virtual environment
+ run: |
+ python -m venv venv
+ source venv/bin/activate
+
+ - name: Install dependencies
+ run: |
+ python -m pip install --upgrade pip
+ pip install -r requirements.txt --no-cache-dir
+
+ # Optional: Add step to run tests here (PyTest, Django test suites, etc.)
+
+ - name: Zip artifact for deployment
+ run: zip release.zip ./* -r
+
+ - name: Upload artifact for deployment jobs
+ uses: actions/upload-artifact@v4
+ with:
+ name: python-app
+ path: |
+ release.zip
+ !venv/
+
+ deploy:
+ runs-on: ubuntu-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: python-app
+
+ - name: Unzip artifact for deployment
+ run: unzip release.zip
+
+ - name: Set productive environment
+ run: cp env_prod.env .env
+
+ - name: 'Deploy to Azure Web App'
+ uses: azure/webapps-deploy@v3
+ id: deploy-to-webapp
+ with:
+ app-name: 'poweron-gateway-prod'
+ slot-name: 'Production'
+ publish-profile: ${{ secrets.AZUREAPPSERVICE_PUBLISHPROFILE_A0393566625E447EAD8EB1C489BA06A2 }}
\ No newline at end of file