| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, |
| # software distributed under the License is distributed on an |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| # KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations |
| # under the License. |
| |
| name: Postgresql Script Check |
| |
| on: [push, pull_request] |
| |
| jobs: |
| sql-check: |
| runs-on: ubuntu-latest |
| services: |
| postgres: |
| image: postgres:14 |
| env: |
| POSTGRES_USER: postgres |
| POSTGRES_PASSWORD: postgres |
| POSTGRES_DB: linkis_test |
| POSTGRES_PORT: 5432 |
| ports: |
| - 35432:5432 |
| options: --health-cmd pg_isready --health-interval 10s --health-timeout 5s --health-retries 5 |
| steps: |
| - name: Checkout source |
| uses: actions/checkout@v4 |
| |
| - name: Verify linkis init pg sql |
| run: | |
| create_db_cmd=`PGPASSWORD=postgres psql -h 127.0.0.1 -p 35432 -U postgres -tc "SELECT 'CREATE DATABASE linkis_test;' WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'linkis_test');"` |
| PGPASSWORD=postgres psql -h 127.0.0.1 -p 35432 -U postgres -d linkis_test -tc "${create_db_cmd}" |
| PGPASSWORD=postgres psql -h 127.0.0.1 -p 35432 -U postgres -d linkis_test -tc "CREATE SCHEMA IF NOT EXISTS linkis_test;" |
| PGPASSWORD=postgres PGOPTIONS="--search_path=linkis_test" psql -h 127.0.0.1 -p 35432 -U postgres -d linkis_test -f ./linkis-dist/package/db/linkis_ddl_pg.sql |
| PGPASSWORD=postgres PGOPTIONS="--search_path=linkis_test" psql -h 127.0.0.1 -p 35432 -U postgres -d linkis_test -f ./linkis-dist/package/db/linkis_dml_pg.sql |
| PGPASSWORD=postgres PGOPTIONS="--search_path=linkis_test" psql -h 127.0.0.1 -p 35432 -U postgres -d linkis_test -tc "\dt" |