n8n/.github/workflows/ci-postgres-mysql.yml

55 lines
1.4 KiB
YAML
Raw Normal View History

name: Test Postgres and MySQL schemas
on:
schedule:
- cron: '0 0 * * *'
workflow_dispatch:
jobs:
test:
runs-on: ubuntu-latest
timeout-minutes: 60
env:
DB_MYSQLDB_PASSWORD: password
DB_POSTGRESDB_PASSWORD: password
steps:
- uses: actions/checkout@v3.5.3
- uses: pnpm/action-setup@v2.4.0
2022-11-09 08:32:05 -08:00
- uses: actions/setup-node@v3.7.0
with:
node-version: 18.x
2022-11-09 08:32:05 -08:00
cache: 'pnpm'
2022-11-09 08:32:05 -08:00
- name: Install dependencies
run: pnpm install --frozen-lockfile
- name: Start MySQL & Postgres
uses: isbang/compose-action@v1.3.2
with:
compose-file: ./.github/docker-compose.yml
- name: Build Core, Workflow, and CLI
run: pnpm --filter @n8n/client-oauth2 --filter n8n-workflow --filter n8n-core --filter n8n build
- name: Test MySQL
working-directory: packages/cli
run: DB_TABLE_PREFIX=test_ pnpm test:mysql
- name: Test Postgres
working-directory: packages/cli
run: DB_POSTGRESDB_SCHEMA=alt_schema DB_TABLE_PREFIX=test_ pnpm test:postgres
- name: Notify Slack on failure
uses: act10ns/slack@v2.0.0
if: failure()
with:
status: ${{ job.status }}
channel: '#updates-build-alerts'
webhook-url: ${{ secrets.SLACK_WEBHOOK_URL }}
message: Postgres or MySQL tests failed (${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }})