Skip to content

Add validation for queries #250

Add validation for queries

Add validation for queries #250

Workflow file for this run

name: ci
on:
pull_request:
types: [opened, reopened, synchronize]
push:
branches:
- main
jobs:
go-lint:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Install Go
uses: actions/setup-go@v5
with:
go-version-file: go.mod
- name: Run linters
uses: golangci/golangci-lint-action@v8
with:
version: latest
args: --timeout=3m
go-test:
strategy:
matrix:
platform: [ubuntu-latest]
runs-on: ${{ matrix.platform }}
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Install Go
if: success()
uses: actions/setup-go@v5
with:
go-version-file: go.mod
- name: go tests
run: (set -o pipefail && go test -v -covermode=atomic -json -race ./... | tee test.json)
- name: annotate go tests
if: always()
uses: guyarb/golang-test-annotations@v0.8.0
with:
test-results: test.json
test:
runs-on: ubuntu-latest
services:
postgres:
image: postgres:16
ports:
- "5432:5432"
env:
POSTGRES_PASSWORD: secretpassword
POSTGRES_DB: batondb
env:
BATON_LOG_LEVEL: debug
BATON_CONFIG_PATH: ./examples/postgres-test.yml
DB_USER: postgres
DB_PASSWORD: secretpassword
DB_HOST: localhost
DB_PORT: 5432
DB_DATABASE: batondb
BATON_PROVISIONING: true
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Install Go
uses: actions/setup-go@v5
with:
go-version-file: go.mod
- name: Install postgres client
run: sudo apt install postgresql-client
- name: Import sql into postgres
run: psql -h localhost --user postgres -d batondb -f ./test/postgres-init.sql
env:
PGPASSWORD: secretpassword
- name: Build baton-sql
run: go build ./cmd/baton-sql
- name: Run sync tests
uses: ConductorOne/github-workflows/actions/sync-test@v2
with:
connector: ./baton-sql
baton-entitlement: 'role:admin:member'
baton-principal: john.smith
baton-principal-type: user
- name: Run account provisioning tests
uses: ConductorOne/github-workflows/actions/account-provisioning@v3
with:
connector: ./baton-sql
account-email: robert.tables2@example.com
account-login: "robert'); drop table users; --"