fix e2e and deploy to prod
This commit is contained in:
@@ -47,6 +47,19 @@ jobs:
|
||||
- name: Install Dependencies
|
||||
run: npm ci
|
||||
|
||||
- name: Bump Minor Version and Push
|
||||
run: |
|
||||
# Configure git for the commit.
|
||||
git config --global user.name 'Gitea Actions'
|
||||
git config --global user.email 'actions@gitea.projectium.com'
|
||||
|
||||
# Bump the minor version number. This creates a new commit and a new tag.
|
||||
# The commit message includes [skip ci] to prevent this push from triggering another workflow run.
|
||||
npm version minor -m "ci: Bump version to %s for production release [skip ci]"
|
||||
|
||||
# Push the new commit and the new tag back to the main branch.
|
||||
git push --follow-tags
|
||||
|
||||
- name: Check for Production Database Schema Changes
|
||||
env:
|
||||
DB_HOST: ${{ secrets.DB_HOST }}
|
||||
@@ -61,9 +74,10 @@ jobs:
|
||||
echo "--- Checking for production schema changes ---"
|
||||
CURRENT_HASH=$(cat sql/master_schema_rollup.sql | dos2unix | sha256sum | awk '{ print $1 }')
|
||||
echo "Current Git Schema Hash: $CURRENT_HASH"
|
||||
DEPLOYED_HASH=$(PGPASSWORD="$DB_PASSWORD" psql -v ON_ERROR_STOP=1 -h "$DB_HOST" -p 5432 -U "$DB_USER" -d "$DB_NAME" -c "SELECT schema_hash FROM public.schema_info WHERE environment = 'production';" -t -A || echo "none")
|
||||
# The psql command will now fail the step if the query errors (e.g., column missing), preventing deployment on a bad schema.
|
||||
DEPLOYED_HASH=$(PGPASSWORD="$DB_PASSWORD" psql -v ON_ERROR_STOP=1 -h "$DB_HOST" -p 5432 -U "$DB_USER" -d "$DB_NAME" -c "SELECT schema_hash FROM public.schema_info WHERE environment = 'production';" -t -A)
|
||||
echo "Deployed DB Schema Hash: $DEPLOYED_HASH"
|
||||
if [ "$DEPLOYED_HASH" = "none" ] || [ -z "$DEPLOYED_HASH" ]; then
|
||||
if [ -z "$DEPLOYED_HASH" ]; then
|
||||
echo "WARNING: No schema hash found in the production database. This is expected for a first-time deployment."
|
||||
elif [ "$CURRENT_HASH" != "$DEPLOYED_HASH" ]; then
|
||||
echo "ERROR: Database schema mismatch detected! A manual database migration is required."
|
||||
|
||||
Reference in New Issue
Block a user