Skip to content

feat: allow to specify read-only replica for SELECTs #1709

feat: allow to specify read-only replica for SELECTs

feat: allow to specify read-only replica for SELECTs #1709

Workflow file for this run

name: Go
on:
workflow_dispatch:
push:
branches: [master]
pull_request:
branches: [master]
jobs:
build:
name: build
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
go-version: [1.22.x, 1.23.x]
services:
postgres:
image: postgres
env:
POSTGRES_PASSWORD: postgres
options: >-
--health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5
ports:
- 5432:5432
mysql8:
image: mysql:8.0
env:
MYSQL_DATABASE: test
MYSQL_USER: user
MYSQL_PASSWORD: pass
MYSQL_ROOT_PASSWORD: pass
ports:
- 3306:3306
options: >-
--health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s
--health-retries=3
mysql5:
image: mysql:5.7
env:
MYSQL_DATABASE: test
MYSQL_USER: user
MYSQL_PASSWORD: pass
MYSQL_ROOT_PASSWORD: pass
ports:
- 53306:3306
options: >-
--health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s
--health-retries=5
mariadb:
image: mariadb:10.6
env:
MARIADB_DATABASE: test
MARIADB_USER: user
MARIADB_PASSWORD: pass
MARIADB_ROOT_PASSWORD: pass
ports:
- 13306:3306
options: >-
--health-cmd="mariadb-admin ping" --health-interval=10s --health-timeout=5s
--health-retries=5
mssql2019:
image: ghcr.io/uptrace/mssql:latest
env:
ACCEPT_EULA: Y
MSSQL_SA_PASSWORD: passWORD1
MSSQL_DB: test
MSSQL_USER: sa
MSSQL_PASSWORD: passWORD1
ports:
- 1433:1433
options: >-
--health-cmd="/opt/mssql-tools18/bin/sqlcmd -S localhost -C -U sa -P passWORD1 -Q
'select 1' -b -o /dev/null" --health-interval=10s --health-timeout=5s --health-retries=5
steps:
- name: Set up ${{ matrix.go-version }}
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go-version }}
- name: Checkout code
uses: actions/checkout@v3
- name: Test
run: make test
env:
PG: postgres://postgres:postgres@localhost/postgres?sslmode=disable
MYSQL: user:pass@/test
MYSQL5: user:pass@tcp(localhost:53306)/test
MARIADB: user:pass@tcp(localhost:13306)/test
MSSQL2019: sqlserver://sa:passWORD1@localhost:1433?database=master