60 lines
1.8 KiB
YAML
60 lines
1.8 KiB
YAML
name: Test Import Regressions
|
|
on: [pull_request]
|
|
|
|
concurrency:
|
|
group: test-import-dumps-${{ github.event.pull_request.number || github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
test-import-dumps:
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
platform: [ubuntu-latest, macos-latest, windows-latest]
|
|
runs-on: ${{ matrix.platform }}
|
|
env:
|
|
GITHUB_ACTION_IMPORT_DUMPS: true
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@v6
|
|
- name: Set up Go
|
|
uses: actions/setup-go@v5
|
|
with:
|
|
go-version-file: go.mod
|
|
id: go
|
|
- name: Install ICU4C (MacOS)
|
|
if: ${{ matrix.platform == 'macos-latest' }}
|
|
run: |
|
|
dir=$(brew --cellar icu4c)
|
|
dir="$dir"/$(ls "$dir")
|
|
echo CGO_CPPFLAGS=-I$dir/include >> $GITHUB_ENV
|
|
echo CGO_LDFLAGS=-L$dir/lib >> $GITHUB_ENV
|
|
- name: Install ICU4C (Windows)
|
|
if: ${{ matrix.platform == 'windows-latest' }}
|
|
uses: msys2/setup-msys2@v2
|
|
with:
|
|
path-type: inherit
|
|
msystem: UCRT64
|
|
pacboy: icu:p toolchain:p pkg-config:p
|
|
- name: Build SQL Syntax
|
|
run: ./build.sh
|
|
working-directory: ./postgres/parser
|
|
shell: bash
|
|
- name: Setup PostgreSQL
|
|
uses: tj-actions/install-postgresql@v3
|
|
with:
|
|
postgresql-version: 15
|
|
- name: Test (MacOS)
|
|
if: ${{ matrix.platform == 'macos-latest' }}
|
|
working-directory: ./testing/go
|
|
run: go test --timeout=30m -run TestImportingDumps .
|
|
- name: Test (Windows)
|
|
if: ${{ matrix.platform == 'windows-latest' }}
|
|
working-directory: ./testing/go
|
|
shell: msys2 {0}
|
|
run: go.exe test --timeout=30m -run TestImportingDumps .
|
|
- name: Test (Linux)
|
|
if: ${{ matrix.platform == 'ubuntu-latest' }}
|
|
working-directory: ./testing/go
|
|
run: go test --timeout=30m -run TestImportingDumps .
|