From 6302ea96e4e427ea9e02a186cc58edd841b7e060 Mon Sep 17 00:00:00 2001 From: silverqx Date: Mon, 23 May 2022 16:48:21 +0200 Subject: [PATCH] workflows added tom PostgreSQL migrations Enabled for linux and mingw workflows. --- .github/workflows/linux.yml | 54 ++++++++++++++++++++++-------------- .github/workflows/mingw.yml | 55 +++++++++++++++++++++++-------------- .github/workflows/msvc.yml | 4 +-- 3 files changed, 69 insertions(+), 44 deletions(-) diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index 50609488c..7f893ca9b 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -181,24 +181,12 @@ jobs: cmake --build ../TinyORM-builds-cmake/build-${{ matrix.compiler.key }}-cmake-debug --target all --parallel 2 - - name: Create and Seed tables for unit tests 🎉 (MySQL) + - name: Create and Seed tables for unit tests 🎉 (MySQL, PostgreSQL) working-directory: ../TinyORM-builds-cmake/build-${{ matrix.compiler.key }}-cmake-debug/tests/testdata_tom run: | export LD_LIBRARY_PATH=../..${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH - ./tom_testdata migrate --seed --no-ansi - env: - DB_MYSQL_CHARSET: utf8mb4 - DB_MYSQL_COLLATION: utf8mb4_0900_ai_ci - DB_MYSQL_DATABASE: ${{ secrets.DB_MYSQL_DATABASE }} - DB_MYSQL_HOST: ${{ secrets.DB_MYSQL_HOST }} - DB_MYSQL_PASSWORD: ${{ secrets.DB_MYSQL_PASSWORD }} - DB_MYSQL_USERNAME: ${{ secrets.DB_MYSQL_USERNAME }} - TOM_TESTDATA_ENV: testing - - - name: Create and Seed tables for unit tests (PostgreSQL, SQLite) - working-directory: tests/testdata - run: | - php ./create_and_seed_database.php --skip-mysql-migrate + ./tom_testdata migrate --database=tinyorm_testdata_tom_mysql --seed --no-ansi + ./tom_testdata migrate --database=tinyorm_testdata_tom_postgres --seed --no-ansi env: DB_MYSQL_CHARSET: utf8mb4 DB_MYSQL_COLLATION: utf8mb4_0900_ai_ci @@ -211,6 +199,13 @@ jobs: DB_PGSQL_HOST: ${{ secrets.DB_PGSQL_HOST }} DB_PGSQL_PASSWORD: ${{ secrets.DB_PGSQL_PASSWORD }} DB_PGSQL_USERNAME: ${{ secrets.DB_PGSQL_USERNAME }} + TOM_TESTDATA_ENV: testing + + - name: Create and Seed tables for unit tests (SQLite) + working-directory: tests/testdata + run: | + php ./create_and_seed_database.php --skip-mysql-migrate --skip-postgres-migrate + env: DB_SQLITE_DATABASE: ${{ runner.temp }}/${{ secrets.DB_SQLITE_DATABASE }} - name: TinyORM execute ctest 🔥 @@ -231,15 +226,15 @@ jobs: DB_SQLITE_DATABASE: ${{ runner.temp }}/${{ secrets.DB_SQLITE_DATABASE }} TOM_TESTS_ENV: testing - - name: Tom example execute migrate:status 🚀 + - name: Tom example test some commands (MySQL) 🚀 working-directory: ../TinyORM-builds-cmake/build-${{ matrix.compiler.key }}-cmake-debug/examples/tom run: | export LD_LIBRARY_PATH=../..${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH - ./tom migrate:install --no-ansi - ./tom migrate:status --no-ansi - ./tom migrate --seed --no-ansi - ./tom migrate:refresh --seed --no-ansi - ./tom migrate:status --no-ansi + ./tom migrate:install --database=tinyorm_tom_mysql --no-ansi + ./tom migrate:status --database=tinyorm_tom_mysql --no-ansi + ./tom migrate --database=tinyorm_tom_mysql --seed --no-ansi + ./tom migrate:refresh --database=tinyorm_tom_mysql --seed --no-ansi + ./tom migrate:status --database=tinyorm_tom_mysql --no-ansi env: DB_MYSQL_CHARSET: utf8mb4 DB_MYSQL_COLLATION: utf8mb4_0900_ai_ci @@ -248,3 +243,20 @@ jobs: DB_MYSQL_PASSWORD: ${{ secrets.DB_MYSQL_PASSWORD }} DB_MYSQL_USERNAME: ${{ secrets.DB_MYSQL_USERNAME }} TOM_EXAMPLE_ENV: testing + + - name: Tom example test some commands (PostgreSQL) 🚀 + working-directory: ../TinyORM-builds-cmake/build-${{ matrix.compiler.key }}-cmake-debug/examples/tom + run: | + export LD_LIBRARY_PATH=../..${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH + ./tom migrate:install --database=tinyorm_tom_postgres --no-ansi + ./tom migrate:status --database=tinyorm_tom_postgres --no-ansi + ./tom migrate --database=tinyorm_tom_postgres --seed --no-ansi + ./tom migrate:refresh --database=tinyorm_tom_postgres --seed --no-ansi + ./tom migrate:status --database=tinyorm_tom_postgres --no-ansi + env: + DB_PGSQL_CHARSET: utf8 + DB_PGSQL_DATABASE: ${{ secrets.DB_PGSQL_DATABASE }} + DB_PGSQL_HOST: ${{ secrets.DB_PGSQL_HOST }} + DB_PGSQL_PASSWORD: ${{ secrets.DB_PGSQL_PASSWORD }} + DB_PGSQL_USERNAME: ${{ secrets.DB_PGSQL_USERNAME }} + TOM_EXAMPLE_ENV: testing diff --git a/.github/workflows/mingw.yml b/.github/workflows/mingw.yml index a979d9198..dc8dc206f 100644 --- a/.github/workflows/mingw.yml +++ b/.github/workflows/mingw.yml @@ -195,25 +195,13 @@ jobs: cmake --build ../TinyORM-builds-cmake/build-${{ matrix.compiler.key }}-cmake-debug --target all --parallel ${{ matrix.compiler.key == 'gcc' && 1 || 2 }} - - name: Create and Seed tables for unit tests 🎉 (MySQL) + - name: Create and Seed tables for unit tests 🎉 (MySQL, PostgreSQL) shell: msys2 {0} working-directory: ../TinyORM-builds-cmake/build-${{ matrix.compiler.key }}-cmake-debug/tests/testdata_tom run: | export PATH=../..${PATH:+:}$PATH - ./tom_testdata.exe migrate --seed --no-ansi - env: - DB_MYSQL_CHARSET: utf8mb4 - DB_MYSQL_COLLATION: utf8mb4_0900_ai_ci - DB_MYSQL_DATABASE: ${{ secrets.DB_MYSQL_DATABASE }} - DB_MYSQL_HOST: ${{ secrets.DB_MYSQL_HOST }} - DB_MYSQL_PASSWORD: ${{ secrets.DB_MYSQL_PASSWORD }} - DB_MYSQL_USERNAME: ${{ secrets.DB_MYSQL_USERNAME }} - TOM_TESTDATA_ENV: testing - - - name: Create and Seed tables for unit tests (PostgreSQL, SQLite) - working-directory: tests/testdata - run: | - php.exe ./create_and_seed_database.php --skip-mysql-migrate + ./tom_testdata.exe migrate --database=tinyorm_testdata_tom_mysql --seed --no-ansi + ./tom_testdata.exe migrate --database=tinyorm_testdata_tom_postgres --seed --no-ansi env: DB_MYSQL_CHARSET: utf8mb4 DB_MYSQL_COLLATION: utf8mb4_0900_ai_ci @@ -226,6 +214,13 @@ jobs: DB_PGSQL_HOST: ${{ secrets.DB_PGSQL_HOST }} DB_PGSQL_PASSWORD: ${{ secrets.DB_PGSQL_PASSWORD }} DB_PGSQL_USERNAME: ${{ secrets.DB_PGSQL_USERNAME }} + TOM_TESTDATA_ENV: testing + + - name: Create and Seed tables for unit tests (SQLite) + working-directory: tests/testdata + run: | + php.exe ./create_and_seed_database.php --skip-mysql-migrate --skip-postgres-migrate + env: DB_SQLITE_DATABASE: ${{ runner.temp }}/${{ secrets.DB_SQLITE_DATABASE }} - name: TinyORM execute ctest 🔥 @@ -247,16 +242,16 @@ jobs: DB_SQLITE_DATABASE: ${{ runner.temp }}/${{ secrets.DB_SQLITE_DATABASE }} TOM_TESTS_ENV: testing - - name: Tom example execute migrate:status 🚀 + - name: Tom example test some commands (MySQL) 🚀 shell: msys2 {0} working-directory: ../TinyORM-builds-cmake/build-${{ matrix.compiler.key }}-cmake-debug/examples/tom run: | export PATH=../..${PATH:+:}$PATH - ./tom.exe migrate:install --no-ansi - ./tom.exe migrate:status --no-ansi - ./tom.exe migrate --seed --no-ansi - ./tom.exe migrate:refresh --seed --no-ansi - ./tom.exe migrate:status --no-ansi + ./tom.exe migrate:install --database=tinyorm_tom_mysql --no-ansi + ./tom.exe migrate:status --database=tinyorm_tom_mysql --no-ansi + ./tom.exe migrate --database=tinyorm_tom_mysql --seed --no-ansi + ./tom.exe migrate:refresh --database=tinyorm_tom_mysql --seed --no-ansi + ./tom.exe migrate:status --database=tinyorm_tom_mysql --no-ansi env: DB_MYSQL_CHARSET: utf8mb4 DB_MYSQL_COLLATION: utf8mb4_0900_ai_ci @@ -265,3 +260,21 @@ jobs: DB_MYSQL_PASSWORD: ${{ secrets.DB_MYSQL_PASSWORD }} DB_MYSQL_USERNAME: ${{ secrets.DB_MYSQL_USERNAME }} TOM_EXAMPLE_ENV: testing + + - name: Tom example test some commands (PostgreSQL) 🚀 + shell: msys2 {0} + working-directory: ../TinyORM-builds-cmake/build-${{ matrix.compiler.key }}-cmake-debug/examples/tom + run: | + export PATH=../..${PATH:+:}$PATH + ./tom.exe migrate:install --database=tinyorm_tom_postgres --no-ansi + ./tom.exe migrate:status --database=tinyorm_tom_postgres --no-ansi + ./tom.exe migrate --database=tinyorm_tom_postgres --seed --no-ansi + ./tom.exe migrate:refresh --database=tinyorm_tom_postgres --seed --no-ansi + ./tom.exe migrate:status --database=tinyorm_tom_postgres --no-ansi + env: + DB_PGSQL_CHARSET: utf8 + DB_PGSQL_DATABASE: ${{ secrets.DB_PGSQL_DATABASE }} + DB_PGSQL_HOST: ${{ secrets.DB_PGSQL_HOST }} + DB_PGSQL_PASSWORD: ${{ secrets.DB_PGSQL_PASSWORD }} + DB_PGSQL_USERNAME: ${{ secrets.DB_PGSQL_USERNAME }} + TOM_EXAMPLE_ENV: testing diff --git a/.github/workflows/msvc.yml b/.github/workflows/msvc.yml index d1871fd29..e3c366e75 100644 --- a/.github/workflows/msvc.yml +++ b/.github/workflows/msvc.yml @@ -243,7 +243,7 @@ jobs: $env:Path = '..\..;' + $env:Path .\tom.exe migrate:install --database=tinyorm_tom_mysql --no-ansi .\tom.exe migrate:status --database=tinyorm_tom_mysql --no-ansi - .\tom.exe migrate --seed --database=tinyorm_tom_mysql --no-ansi + .\tom.exe migrate --database=tinyorm_tom_mysql --seed --no-ansi .\tom.exe migrate:refresh --database=tinyorm_tom_mysql --seed --no-ansi .\tom.exe migrate:status --database=tinyorm_tom_mysql --no-ansi env: @@ -261,7 +261,7 @@ jobs: $env:Path = '..\..;' + $env:Path .\tom.exe migrate:install --database=tinyorm_tom_postgres --no-ansi .\tom.exe migrate:status --database=tinyorm_tom_postgres --no-ansi - .\tom.exe migrate --seed --database=tinyorm_tom_postgres --no-ansi + .\tom.exe migrate --database=tinyorm_tom_postgres --seed --no-ansi .\tom.exe migrate:refresh --database=tinyorm_tom_postgres --seed --no-ansi .\tom.exe migrate:status --database=tinyorm_tom_postgres --no-ansi env: