Skip to content

Deployment updates + search bar examples update. #16

Deployment updates + search bar examples update.

Deployment updates + search bar examples update. #16

name: Deploy the pre-prod branch code to an Azure Virtual Machine
on:
push:
branches: [ pre-prod ]
jobs:
deployment:
runs-on: ubuntu-24.04
steps:
- name: Checkout code
uses: actions/checkout@v4
persist-credentials: false

Check failure on line 14 in .github/workflows/deploy-preprod-to-azurevm.yml

View workflow run for this annotation

GitHub Actions / Deploy the pre-prod branch code to an Azure Virtual Machine

Invalid workflow file

The workflow is not valid. .github/workflows/deploy-preprod-to-azurevm.yml (Line: 14, Col: 9): Unexpected value 'persist-credentials'
- name: Copy files using SCP
uses: appleboy/[email protected]
with:
host: ${{ secrets.PANKB_PREPROD_HOST }}
username: ${{ secrets.PANKB_PREPROD_SSH_USERNAME }}
key: ${{ secrets.PANKB_PREPROD_PRIVATE_SSH_KEY }}
source: "."
target: "/projects/pankb_web/django_project"
- name: Create the .env file and (re-)start containers over SSH
uses: appleboy/[email protected]
with:
host: ${{ secrets.PANKB_PREPROD_HOST }}
username: ${{ secrets.PANKB_PREPROD_SSH_USERNAME }}
key: ${{ secrets.PANKB_PREPROD_PRIVATE_SSH_KEY }}
port: 22
script: |
cd /projects/pankb_web/django_project
touch .env
echo $"## Do not put this file under version control!" > .env
echo "" >> .env
echo "## Server type, where the web project is located, values = ('dev' for the DEV server, 'prod' for the both PRE-PROD and PROD servers)" >> .env
echo PROJECT_SERVER="prod" >> .env
echo "" >> .env
echo "## MongoDB type. Only two possible values:" >> .env
echo "# - 'self_deployed' (standalone, deployed on the DEV server in a docker container)" >> .env
echo "# or" >> .env
echo "# - 'cloud' (MongoDB Atlas or Azure CosmosDB for MongoDB)" >> .env
echo DB_TYPE="cloud" >> .env
echo "" >> .env
echo "## Django: The secret key" >> .env
echo SECRET_KEY="${{secrets.PANKB_PREPROD_DJANGO_SECRET_KEY}}" >> .env
echo "" >> .env
echo "## Django: Super-User Credentials" >> .env
echo SUPER_USER_NAME="${{secrets.PANKB_PREPROD_DJANGO_SUPER_USER_NAME}}" >> .env
echo SUPER_USER_PASSWORD="${{secrets.PANKB_PREPROD_DJANGO_SUPER_USER_PASSWORD}}" >> .env
echo SUPER_USER_EMAIL="${{secrets.PANKB_PREPROD_DJANGO_SUPER_USER_EMAIL}}" >> .env
echo "" >> .env
echo "## Mongo database name - same both for the PROD and DEV servers" >> .env
echo MONGODB_NAME="${{secrets.PANKB_PREPROD_MONGODB_NAME}}" >> .env
echo "" >> .env
echo "## MongoDB-PROD (Azure CosmosDB for MongoDB) Connection String" >> .env
echo MONGODB_CONN_STRING="${{secrets.PANKB_PREPROD_MONGODB_CONN_STRING}}" >> .env
echo "" >> .env
echo "## URL address of the separately deployed AI Assistant Web Application" >> .env
echo AI_ASSISTANT_APP_URL="${{vars.PANKB_PREPROD_AI_ASSISTANT_APP_URL}}" >> .env
cat .env
docker compose --profile dev down
docker compose --profile dev up -d --build --force-recreate --remove-orphans
docker system prune --all --force