Skip to content

cleanup & tweaks the code #64

cleanup & tweaks the code

cleanup & tweaks the code #64

Workflow file for this run

name: SQLDef Preview
on:
pull_request:
permissions:
contents: read
pull-requests: write
jobs:
psqldef-preview:
runs-on: ubuntu-latest
services:
postgres:
image: postgres:17
env:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: testdb
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
ports:
- 5432:5432
steps:
- name: Checkout code
uses: actions/checkout@v5
with:
fetch-depth: 0
- name: Preview PostgreSQL schema changes
uses: ./
with:
command: psqldef
version: latest
config-file: examples/psqldef.yaml
baseline-schema-file: examples/psqldef-current.sql
schema-file: examples/psqldef-desired.sql
pg-user: postgres
pg-password: postgres
pg-host: localhost
pg-port: 5432
pg-database: testdb
github-token: ${{ secrets.GITHUB_TOKEN }}
mysqldef-preview:
runs-on: ubuntu-latest
services:
mysql:
image: mysql:8.0
env:
MYSQL_ROOT_PASSWORD: testpass
MYSQL_DATABASE: testdb
options: >-
--health-cmd "mysqladmin ping -h localhost -u root -ptestpass"
--health-interval 10s
--health-timeout 5s
--health-retries 10
ports:
- 3306:3306
steps:
- name: Checkout code
uses: actions/checkout@v5
with:
fetch-depth: 0
- name: Preview MySQL schema changes
uses: ./
with:
command: mysqldef
version: latest
config-file: examples/mysqldef.yaml
baseline-schema-file: examples/mysqldef-current.sql
schema-file: examples/mysqldef-desired.sql
mysql-user: root
mysql-password: testpass
mysql-host: 127.0.0.1
mysql-port: 3306
mysql-database: testdb
github-token: ${{ secrets.GITHUB_TOKEN }}
sqlite3def-preview:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v5
with:
fetch-depth: 0
- name: Preview SQLite schema changes
uses: ./
with:
command: sqlite3def
version: latest
config-file: examples/sqlite3def.yaml
baseline-schema-file: examples/sqlite3def-current.sql
schema-file: examples/sqlite3def-desired.sql
sqlite-database: test.db
github-token: ${{ secrets.GITHUB_TOKEN }}
mssqldef-preview:
runs-on: ubuntu-latest
services:
mssql:
image: mcr.microsoft.com/mssql/server:2022-latest
env:
ACCEPT_EULA: Y
SA_PASSWORD: Passw0rd
options: >-
--health-cmd "/opt/mssql-tools18/bin/sqlcmd -S localhost -U SA -P Passw0rd -Q 'SELECT 1' -C || /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P Passw0rd -Q 'SELECT 1'"
--health-interval 10s
--health-timeout 5s
--health-retries 10
--health-start-period 20s
ports:
- 1433:1433
steps:
- uses: actions/checkout@v5
with:
fetch-depth: 0
- name: Setup MSSQL database
run: |
# Install sqlcmd tools
sudo apt-get update && sudo apt-get install -y curl gnupg
curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
curl https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/prod.list | sudo tee /etc/apt/sources.list.d/mssql-release.list
sudo apt-get update
sudo ACCEPT_EULA=Y apt-get install -y mssql-tools18
# Create the test database
/opt/mssql-tools18/bin/sqlcmd -S localhost -U SA -P "Passw0rd" -Q "CREATE DATABASE testdb;" -C
- name: Preview MSSQL schema changes
uses: ./
with:
command: mssqldef
version: latest
config-file: examples/mssql.yaml
baseline-schema-file: examples/mssqldef-current.sql
schema-file: examples/mssqldef-desired.sql
mssql-user: SA
mssql-password: Passw0rd
mssql-host: localhost
mssql-port: 1433
mssql-database: testdb
github-token: ${{ secrets.GITHUB_TOKEN }}