Support schema in custom postgres type names, generate PgHasArrayType impls for enums #3
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Examples | |
on: | |
pull_request: | |
push: | |
branches: | |
- main | |
- '*-dev' | |
jobs: | |
sqlx-cli: | |
name: Build SQLx CLI | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- uses: actions-rs/toolchain@v1 | |
with: | |
profile: minimal | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v1 | |
with: | |
key: sqlx-cli | |
- uses: actions-rs/cargo@v1 | |
with: | |
command: build | |
args: > | |
-p sqlx-cli | |
--bin sqlx | |
--release | |
--no-default-features | |
--features mysql,postgres,sqlite | |
- uses: actions/upload-artifact@v3 | |
with: | |
name: sqlx-cli | |
path: target/release/sqlx | |
mysql: | |
name: MySQL Examples | |
runs-on: ubuntu-latest | |
needs: sqlx-cli | |
services: | |
mysql: | |
image: mysql:latest | |
env: | |
MYSQL_ROOT_PASSWORD: password | |
ports: | |
- 3306:3306 | |
steps: | |
- name: Get SQLx-CLI | |
uses: actions/download-artifact@v3 | |
with: | |
name: sqlx-cli | |
# $HOME is interpreted differently by the shell | |
path: /home/runner/.local/bin | |
- run: | | |
ls -R /home/runner/.local/bin | |
chmod +x /home/runner/.local/bin/sqlx | |
echo /home/runner/.local/bin >> $GITHUB_PATH | |
sleep 10 | |
- uses: actions/checkout@v2 | |
- uses: actions-rs/toolchain@v1 | |
with: | |
profile: minimal | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v1 | |
with: | |
key: mysql-examples | |
- name: Todos (Setup) | |
working-directory: examples/mysql/todos | |
env: | |
DATABASE_URL: mysql://root:password@localhost:3306/todos?ssl-mode=disabled | |
run: sqlx db setup | |
- name: Todos (Run) | |
uses: actions-rs/cargo@v1 | |
env: | |
DATABASE_URL: mysql://root:password@localhost:3306/todos?ssl-mode=disabled | |
with: | |
# TODO: test full CLI | |
command: run | |
args: -p sqlx-example-mysql-todos | |
postgres: | |
name: PostgreSQL Examples | |
runs-on: ubuntu-latest | |
needs: sqlx-cli | |
services: | |
postgres: | |
image: postgres:latest | |
env: | |
POSTGRES_PASSWORD: password | |
ports: | |
- 5432:5432 | |
steps: | |
- name: Get SQLx-CLI | |
uses: actions/download-artifact@v3 | |
with: | |
name: sqlx-cli | |
path: /home/runner/.local/bin | |
- run: | | |
ls -R /home/runner/.local/bin | |
chmod +x $HOME/.local/bin/sqlx | |
echo $HOME/.local/bin >> $GITHUB_PATH | |
sleep 10 | |
- uses: actions/checkout@v2 | |
- uses: actions-rs/toolchain@v1 | |
with: | |
profile: minimal | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v1 | |
with: | |
key: pg-examples | |
- name: Axum Social with Tests (Setup) | |
working-directory: examples/postgres/axum-social-with-tests | |
env: | |
DATABASE_URL: postgres://postgres:password@localhost:5432/axum-social | |
run: sqlx db setup | |
- name: Axum Social with Tests (Check) | |
uses: actions-rs/cargo@v1 | |
env: | |
DATABASE_URL: postgres://postgres:password@localhost:5432/axum-social | |
with: | |
command: check | |
args: -p sqlx-example-postgres-axum-social | |
- name: Axum Social with Tests (Test) | |
uses: actions-rs/cargo@v1 | |
env: | |
DATABASE_URL: postgres://postgres:password@localhost:5432/axum-social | |
with: | |
command: test | |
args: -p sqlx-example-postgres-axum-social | |
- name: Files (Setup) | |
working-directory: examples/postgres/files | |
env: | |
DATABASE_URL: postgres://postgres:password@localhost:5432/files | |
run: sqlx db setup | |
- name: Files (Run) | |
uses: actions-rs/cargo@v1 | |
env: | |
DATABASE_URL: postgres://postgres:password@localhost:5432/files | |
with: | |
command: run | |
args: -p sqlx-example-postgres-files | |
- name: JSON (Setup) | |
working-directory: examples/postgres/json | |
env: | |
DATABASE_URL: postgres://postgres:password@localhost:5432/json | |
run: sqlx db setup | |
- name: JSON (Run) | |
uses: actions-rs/cargo@v1 | |
env: | |
DATABASE_URL: postgres://postgres:password@localhost:5432/json | |
with: | |
command: run | |
args: -p sqlx-example-postgres-json | |
- name: Listen (Setup) | |
working-directory: examples/postgres/listen | |
env: | |
DATABASE_URL: postgres://postgres:password@localhost:5432/listen | |
run: sqlx db create | |
- name: Listen (Run) | |
uses: actions-rs/cargo@v1 | |
env: | |
DATABASE_URL: postgres://postgres:password@localhost:5432/listen | |
with: | |
command: run | |
args: -p sqlx-example-postgres-listen | |
- name: Mockable TODOs (Setup) | |
working-directory: examples/postgres/mockable-todos | |
env: | |
DATABASE_URL: postgres://postgres:password@localhost:5432/mockable-todos | |
run: sqlx db setup | |
- name: Mockable TODOs (Run) | |
uses: actions-rs/cargo@v1 | |
env: | |
DATABASE_URL: postgres://postgres:password@localhost:5432/mockable-todos | |
with: | |
# TODO: test full CLI | |
command: run | |
args: -p sqlx-example-postgres-mockable-todos | |
- name: TODOs (Setup) | |
working-directory: examples/postgres/todos | |
env: | |
DATABASE_URL: postgres://postgres:password@localhost:5432/todos | |
run: sqlx db setup | |
- name: TODOs (Run) | |
uses: actions-rs/cargo@v1 | |
env: | |
DATABASE_URL: postgres://postgres:password@localhost:5432/todos | |
with: | |
# TODO: test full CLI | |
command: run | |
args: -p sqlx-example-postgres-todos | |
- name: Transaction (Setup) | |
working-directory: examples/postgres/transaction | |
env: | |
DATABASE_URL: postgres://postgres:password@localhost:5432/txn | |
run: sqlx db setup | |
- name: Transaction (Run) | |
uses: actions-rs/cargo@v1 | |
env: | |
DATABASE_URL: postgres://postgres:password@localhost:5432/txn | |
with: | |
command: run | |
args: -p sqlx-example-postgres-transaction | |
sqlite: | |
name: SQLite Examples | |
runs-on: ubuntu-latest | |
needs: sqlx-cli | |
steps: | |
- name: Get SQLx-CLI | |
uses: actions/download-artifact@v3 | |
with: | |
name: sqlx-cli | |
path: /home/runner/.local/bin | |
- run: | | |
ls -R /home/runner/.local/bin | |
chmod +x /home/runner/.local/bin/sqlx | |
echo /home/runner/.local/bin >> $GITHUB_PATH | |
- uses: actions/checkout@v2 | |
- uses: actions-rs/toolchain@v1 | |
with: | |
profile: minimal | |
toolchain: stable | |
override: true | |
- uses: Swatinem/rust-cache@v1 | |
with: | |
key: sqlite-examples | |
- name: TODOs (Setup) | |
env: | |
DATABASE_URL: sqlite://todos.sqlite | |
run: sqlx db setup --source=examples/sqlite/todos/migrations | |
- name: TODOs (Run) | |
uses: actions-rs/cargo@v1 | |
env: | |
DATABASE_URL: sqlite://todos.sqlite | |
with: | |
command: run | |
args: -p sqlx-example-sqlite-todos |