mirror of
https://github.com/pocoproject/poco.git
synced 2025-03-31 07:58:24 +02:00
4249 separate ci odbc tests into separate job (#4251)
* feat(CI): separate odbc tests into separate job #4249 * fix(CI): fix ODBC test server address #4249 * fix(CI): disable MySQL ODBC tests #4249 * chore(ci): remove unneeded sql server and oracle jobs #4249 * fix(CI): disable Oracle ODBC tests #4249 * fix(CI): disable Postgres ODBC tests #4249 * Update ci.yml (add newline) --------- Co-authored-by: Aleksandar Fabijanic <aleks-f@users.noreply.github.com>
This commit is contained in:
parent
90dd3821ed
commit
83d50284e0
169
.github/workflows/ci.yml
vendored
169
.github/workflows/ci.yml
vendored
@ -379,7 +379,7 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v3
|
||||||
- run: sudo apt -y update && sudo apt -y install libssl-dev unixodbc-dev libmysqlclient-dev mysql-client
|
- run: sudo apt -y update && sudo apt -y install libssl-dev unixodbc-dev libmysqlclient-dev mysql-client
|
||||||
- run: ./configure --everything --no-samples --omit=ActiveRecord,ApacheConnector,CppParser,Crypto,Data/PostgreSQL,Data/SQLite,Encodings,JSON,JWT,MongoDB,Net,NetSSL_OpenSSL,NetSSL_Win,PDF,PageCompiler,PocoDoc,ProGen,Prometheus,Redis,SevenZip,Util,XML,Zip && make all -s -j4 && sudo make install
|
- run: ./configure --everything --no-samples --omit=ActiveRecord,ApacheConnector,CppParser,Crypto,Data/PostgreSQL,Data/SQLite,Data/ODBC,Encodings,JSON,JWT,MongoDB,Net,NetSSL_OpenSSL,NetSSL_Win,PDF,PageCompiler,PocoDoc,ProGen,Prometheus,Redis,SevenZip,Util,XML,Zip && make all -s -j4 && sudo make install
|
||||||
- uses: ./.github/actions/retry-action
|
- uses: ./.github/actions/retry-action
|
||||||
with:
|
with:
|
||||||
timeout_minutes: 90
|
timeout_minutes: 90
|
||||||
@ -389,21 +389,6 @@ jobs:
|
|||||||
sudo -s
|
sudo -s
|
||||||
EXCLUDE_TESTS="ActiveRecord ApacheConnector CppParser CppUnit Crypto Data Data/PostgreSQL Data/ODBC Data/SQLite Encodings Foundation JSON JWT MongoDB Net NetSSL_OpenSSL NetSSL_Win PDF PageCompiler PocoDoc ProGen Prometheus Redis SevenZip Util XML Zip"
|
EXCLUDE_TESTS="ActiveRecord ApacheConnector CppParser CppUnit Crypto Data Data/PostgreSQL Data/ODBC Data/SQLite Encodings Foundation JSON JWT MongoDB Net NetSSL_OpenSSL NetSSL_Win PDF PageCompiler PocoDoc ProGen Prometheus Redis SevenZip Util XML Zip"
|
||||||
./ci/runtests.sh
|
./ci/runtests.sh
|
||||||
# TODO ODBC tests connect to database and hang
|
|
||||||
# - run: |
|
|
||||||
# wget https://dev.mysql.com/get/Downloads/Connector-ODBC/8.2/mysql-connector-odbc_8.2.0-1ubuntu22.04_amd64.deb
|
|
||||||
# wget https://dev.mysql.com/get/Downloads/MySQL-8.2/mysql-community-client-plugins_8.2.0-1ubuntu22.04_amd64.deb
|
|
||||||
# sudo dpkg -i mysql-community-client-plugins_8.2.0-1ubuntu22.04_amd64.deb mysql-connector-odbc_8.2.0-1ubuntu22.04_amd64.deb
|
|
||||||
# - run: mysql -h 127.0.0.1 -u pocotest --password=pocotest -e "DROP DATABASE pocotest; CREATE DATABASE pocotest"
|
|
||||||
# - uses: ./.github/actions/retry-action
|
|
||||||
# with:
|
|
||||||
# timeout_minutes: 90
|
|
||||||
# max_attempts: 3
|
|
||||||
# retry_on: any
|
|
||||||
# command: >-
|
|
||||||
# sudo -s
|
|
||||||
# EXCLUDE_TESTS="ActiveRecord ApacheConnector CppParser CppUnit Crypto Data Data/PostgreSQL Data/MySQL Data/SQLite Encodings Foundation JSON JWT MongoDB Net NetSSL_OpenSSL NetSSL_Win PDF PageCompiler PocoDoc ProGen Prometheus Redis SevenZip Util XML Zip"
|
|
||||||
# ./ci/runtests.sh
|
|
||||||
|
|
||||||
# TODO tests sometimes failling on testTransaction and testReconnect
|
# TODO tests sometimes failling on testTransaction and testReconnect
|
||||||
# linux-gcc-make-postgres:
|
# linux-gcc-make-postgres:
|
||||||
@ -418,7 +403,7 @@ jobs:
|
|||||||
# steps:
|
# steps:
|
||||||
# - uses: actions/checkout@v3
|
# - uses: actions/checkout@v3
|
||||||
# - run: sudo apt -y update && sudo apt -y install libssl-dev unixodbc-dev libmysqlclient-dev odbc-postgresql
|
# - run: sudo apt -y update && sudo apt -y install libssl-dev unixodbc-dev libmysqlclient-dev odbc-postgresql
|
||||||
# - run: ./configure --everything --no-samples --omit=ActiveRecord,ApacheConnector,CppParser,Crypto,Data/MySQL,Data/SQLite,Encodings,JSON,JWT,MongoDB,Net,NetSSL_OpenSSL,NetSSL_Win,PDF,PageCompiler,PocoDoc,ProGen,Prometheus,Redis,SevenZip,Util,XML,Zip && make all -s -j4 && sudo make install
|
# - run: ./configure --everything --no-samples --omit=ActiveRecord,ApacheConnector,CppParser,Crypto,Data/MySQL,Data/ODBC,Data/SQLite,Encodings,JSON,JWT,MongoDB,Net,NetSSL_OpenSSL,NetSSL_Win,PDF,PageCompiler,PocoDoc,ProGen,Prometheus,Redis,SevenZip,Util,XML,Zip && make all -s -j4 && sudo make install
|
||||||
# - uses: ./.github/actions/retry-action
|
# - uses: ./.github/actions/retry-action
|
||||||
# with:
|
# with:
|
||||||
# timeout_minutes: 90
|
# timeout_minutes: 90
|
||||||
@ -427,21 +412,6 @@ jobs:
|
|||||||
# command: >-
|
# command: >-
|
||||||
# sudo -s
|
# sudo -s
|
||||||
# EXCLUDE_TESTS="ActiveRecord ApacheConnector CppParser CppUnit Crypto Data Data/ODBC Data/MySQL Data/SQLite Encodings Foundation JSON JWT MongoDB Net NetSSL_OpenSSL NetSSL_Win PDF PageCompiler PocoDoc ProGen Prometheus Redis SevenZip Util XML Zip"
|
# EXCLUDE_TESTS="ActiveRecord ApacheConnector CppParser CppUnit Crypto Data Data/ODBC Data/MySQL Data/SQLite Encodings Foundation JSON JWT MongoDB Net NetSSL_OpenSSL NetSSL_Win PDF PageCompiler PocoDoc ProGen Prometheus Redis SevenZip Util XML Zip"
|
||||||
# ./ci/runtests.sh
|
|
||||||
# - run: |
|
|
||||||
# sudo sh -c 'echo "deb https://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
|
|
||||||
# wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
|
|
||||||
# sudo apt -y update
|
|
||||||
# sudo apt -y install postgresql-client-12
|
|
||||||
# - run: PGPASSWORD=postgres psql -h localhost --username=postgres -d template1 -c 'DROP DATABASE postgres' -c 'CREATE DATABASE postgres'
|
|
||||||
# - uses: ./.github/actions/retry-action
|
|
||||||
# with:
|
|
||||||
# timeout_minutes: 90
|
|
||||||
# max_attempts: 3
|
|
||||||
# retry_on: any
|
|
||||||
# command: >-
|
|
||||||
# sudo -s
|
|
||||||
# EXCLUDE_TESTS="ActiveRecord ApacheConnector CppParser CppUnit Crypto Data Data/PostgreSQL Data/MySQL Data/SQLite Encodings Foundation JSON JWT MongoDB Net NetSSL_OpenSSL NetSSL_Win PDF PageCompiler PocoDoc ProGen Prometheus Redis SevenZip Util XML Zip"
|
|
||||||
# ./ci/runtests.sh
|
# ./ci/runtests.sh
|
||||||
|
|
||||||
linux-gcc-make-redis:
|
linux-gcc-make-redis:
|
||||||
@ -481,69 +451,72 @@ jobs:
|
|||||||
sudo -s
|
sudo -s
|
||||||
EXCLUDE_TESTS="ActiveRecord ApacheConnector CppParser CppUnit Crypto Data Data/ODBC Data/MySQL Data/SQLite Data/PostgreSQL Encodings Foundation JSON JWT Net NetSSL_OpenSSL NetSSL_Win PDF PageCompiler PocoDoc ProGen Prometheus Redis SevenZip Util XML Zip"
|
EXCLUDE_TESTS="ActiveRecord ApacheConnector CppParser CppUnit Crypto Data Data/ODBC Data/MySQL Data/SQLite Data/PostgreSQL Encodings Foundation JSON JWT Net NetSSL_OpenSSL NetSSL_Win PDF PageCompiler PocoDoc ProGen Prometheus Redis SevenZip Util XML Zip"
|
||||||
./ci/runtests.sh
|
./ci/runtests.sh
|
||||||
|
|
||||||
# TODO Tests keep failing at testCursorStoredProcedure
|
linux-gcc-make-odbc:
|
||||||
# linux-gcc-make-oracle:
|
runs-on: ubuntu-22.04
|
||||||
# runs-on: ubuntu-22.04
|
services:
|
||||||
# services:
|
mysql:
|
||||||
# oracle:
|
image: mysql:8.1.0
|
||||||
# image: container-registry.oracle.com/database/express:21.3.0-xe
|
env:
|
||||||
# env:
|
MYSQL_ALLOW_EMPTY_PASSWORD: yes
|
||||||
# ORACLE_PWD: poco
|
MYSQL_USER: pocotest
|
||||||
# ports:
|
MYSQL_PASSWORD: pocotest
|
||||||
# - 1521:1521
|
MYSQL_DATABASE: pocotest
|
||||||
# steps:
|
ports:
|
||||||
# - uses: actions/checkout@v3
|
- 3306:3306
|
||||||
# - run: sudo apt -y update && sudo apt -y install libssl-dev unixodbc-dev libmysqlclient-dev alien libaio1
|
postgres:
|
||||||
# - run: |
|
image: postgres:16.0
|
||||||
# wget https://download.oracle.com/otn_software/linux/instantclient/2112000/oracle-instantclient-basic-21.12.0.0.0-1.x86_64.rpm
|
env:
|
||||||
# wget https://download.oracle.com/otn_software/linux/instantclient/2112000/oracle-instantclient-sqlplus-21.12.0.0.0-1.x86_64.rpm
|
POSTGRES_PASSWORD: postgres
|
||||||
# wget https://download.oracle.com/otn_software/linux/instantclient/2112000/oracle-instantclient-odbc-21.12.0.0.0-1.x86_64.rpm
|
ports:
|
||||||
# sudo alien --scripts ./oracle-instantclient-basic-21.12.0.0.0-1.x86_64.rpm
|
- 5432:5432
|
||||||
# sudo alien --scripts ./oracle-instantclient-sqlplus-21.12.0.0.0-1.x86_64.rpm
|
oracle:
|
||||||
# sudo alien --scripts ./oracle-instantclient-odbc-21.12.0.0.0-1.x86_64.rpm
|
image: container-registry.oracle.com/database/express:21.3.0-xe
|
||||||
# sudo apt install ./oracle-instantclient-basic_21.12.0.0.0-2_amd64.deb
|
env:
|
||||||
# sudo apt install ./oracle-instantclient-sqlplus_21.12.0.0.0-2_amd64.deb
|
ORACLE_PWD: poco
|
||||||
# sudo apt install ./oracle-instantclient-odbc_21.12.0.0.0-2_amd64.deb
|
ports:
|
||||||
# sudo /usr/lib/oracle/21/client64/bin/odbc_update_ini.sh / "/usr/lib/oracle/21/client64/lib" "" "" "/etc/odbc.ini"
|
- 1521:1521
|
||||||
# - run: ./configure --everything --no-samples --omit=ActiveRecord,ApacheConnector,CppParser,Crypto,Data/MySQL,Data/SQLite,Data/PostgreSQL,Encodings,JSON,JWT,MongoDB,Net,NetSSL_OpenSSL,NetSSL_Win,PDF,PageCompiler,PocoDoc,ProGen,Prometheus,Redis,SevenZip,Util,XML,Zip && make all -s -j4 && sudo make install
|
sqlserver:
|
||||||
# - uses: ./.github/actions/retry-action
|
image: mcr.microsoft.com/mssql/server:2022-latest
|
||||||
# with:
|
env:
|
||||||
# timeout_minutes: 90
|
MSSQL_PID: Express
|
||||||
# max_attempts: 3
|
ACCEPT_EULA: Y
|
||||||
# retry_on: any
|
MSSQL_SA_PASSWORD: Pocopoco1
|
||||||
# command: >-
|
ports:
|
||||||
# sudo -s
|
- 1433:1433
|
||||||
# EXCLUDE_TESTS="ActiveRecord ApacheConnector CppParser CppUnit Crypto Data Data/MySQL Data/SQLite Data/PostgreSQL Encodings Foundation JSON JWT MongoDB Net NetSSL_OpenSSL NetSSL_Win PDF PageCompiler PocoDoc ProGen Prometheus Redis SevenZip Util XML Zip"
|
steps:
|
||||||
# ./ci/runtests.sh
|
- uses: actions/checkout@v3
|
||||||
# TODO multiple tests are failling(testStoredProcedure, testBulkPerformance, testBulk,testBareboneODBC)
|
- run: sudo apt -y update && sudo apt -y install libssl-dev unixodbc-dev libmysqlclient-dev mysql-client alien libaio1 gnupg2 curl #odbc-postgresql
|
||||||
# linux-gcc-make-sqlserver:
|
- run: ./configure --everything --no-samples --omit=ActiveRecord,ApacheConnector,CppParser,Crypto,Data/MySQL,Data/PostgreSQL,Data/SQLite,Encodings,JSON,JWT,MongoDB,Net,NetSSL_OpenSSL,NetSSL_Win,PDF,PageCompiler,PocoDoc,ProGen,Prometheus,Redis,SevenZip,Util,XML,Zip && make all -s -j4 && sudo make install
|
||||||
# runs-on: ubuntu-22.04
|
# - name: Setup MySQL ODBC connector
|
||||||
# services:
|
# run: |
|
||||||
# sqlserver:
|
# wget https://dev.mysql.com/get/Downloads/Connector-ODBC/8.2/mysql-connector-odbc_8.2.0-1ubuntu22.04_amd64.deb
|
||||||
# image: mcr.microsoft.com/mssql/server:2022-latest
|
# wget https://dev.mysql.com/get/Downloads/MySQL-8.2/mysql-community-client-plugins_8.2.0-1ubuntu22.04_amd64.deb
|
||||||
# env:
|
# sudo dpkg -i mysql-community-client-plugins_8.2.0-1ubuntu22.04_amd64.deb mysql-connector-odbc_8.2.0-1ubuntu22.04_amd64.deb
|
||||||
# MSSQL_PID: Express
|
# - name: Setup Oracle ODBC connector
|
||||||
# ACCEPT_EULA: Y
|
# run: |
|
||||||
# MSSQL_SA_PASSWORD: Pocopoco1
|
# wget https://download.oracle.com/otn_software/linux/instantclient/2112000/oracle-instantclient-basic-21.12.0.0.0-1.x86_64.rpm
|
||||||
# ports:
|
# wget https://download.oracle.com/otn_software/linux/instantclient/2112000/oracle-instantclient-sqlplus-21.12.0.0.0-1.x86_64.rpm
|
||||||
# - 1433:1433
|
# wget https://download.oracle.com/otn_software/linux/instantclient/2112000/oracle-instantclient-odbc-21.12.0.0.0-1.x86_64.rpm
|
||||||
# steps:
|
# sudo alien --scripts ./oracle-instantclient-basic-21.12.0.0.0-1.x86_64.rpm
|
||||||
# - uses: actions/checkout@v3
|
# sudo alien --scripts ./oracle-instantclient-sqlplus-21.12.0.0.0-1.x86_64.rpm
|
||||||
# - run: sudo apt -y update && sudo apt -y install libssl-dev unixodbc-dev libmysqlclient-dev gnupg2 curl
|
# sudo alien --scripts ./oracle-instantclient-odbc-21.12.0.0.0-1.x86_64.rpm
|
||||||
# - run: |
|
# sudo apt install ./oracle-instantclient-basic_21.12.0.0.0-2_amd64.deb
|
||||||
# curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
|
# sudo apt install ./oracle-instantclient-sqlplus_21.12.0.0.0-2_amd64.deb
|
||||||
# curl https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/prod.list | sudo tee /etc/apt/sources.list.d/mssql-release.list
|
# sudo apt install ./oracle-instantclient-odbc_21.12.0.0.0-2_amd64.deb
|
||||||
# sudo apt-get update
|
# sudo /usr/lib/oracle/21/client64/bin/odbc_update_ini.sh / "/usr/lib/oracle/21/client64/lib" "" "" "/etc/odbc.ini"
|
||||||
# sudo ACCEPT_EULA=Y apt-get install -y msodbcsql18
|
- name: Setup SQL Server ODBC connector
|
||||||
# - run: ./configure --everything --no-samples --omit=ActiveRecord,ApacheConnector,CppParser,Crypto,Data/MySQL,Data/SQLite,Data/PostgreSQL,Encodings,JSON,JWT,MongoDB,Net,NetSSL_OpenSSL,NetSSL_Win,PDF,PageCompiler,PocoDoc,ProGen,Prometheus,Redis,SevenZip,Util,XML,Zip && make all -s -j4 && sudo make install
|
run: |
|
||||||
# - uses: ./.github/actions/retry-action
|
curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
|
||||||
# with:
|
curl https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/prod.list | sudo tee /etc/apt/sources.list.d/mssql-release.list
|
||||||
# timeout_minutes: 90
|
sudo apt-get update
|
||||||
# max_attempts: 3
|
sudo ACCEPT_EULA=Y apt-get install -y msodbcsql18
|
||||||
# retry_on: any
|
- uses: ./.github/actions/retry-action
|
||||||
# command: >-
|
with:
|
||||||
# sudo -s
|
timeout_minutes: 90
|
||||||
# EXCLUDE_TESTS="ActiveRecord ApacheConnector CppParser CppUnit Crypto Data Data/MySQL Data/SQLite Data/PostgreSQL Encodings Foundation JSON JWT MongoDB Net NetSSL_OpenSSL NetSSL_Win PDF PageCompiler PocoDoc ProGen Prometheus Redis SevenZip Util XML Zip"
|
max_attempts: 3
|
||||||
# ./ci/runtests.sh
|
retry_on: any
|
||||||
|
command: >-
|
||||||
|
sudo -s
|
||||||
|
EXCLUDE_TESTS="ActiveRecord ApacheConnector CppParser CppUnit Crypto Data Data/MySQL Data/PostgreSQL Data/SQLite Encodings Foundation JSON JWT MongoDB Net NetSSL_OpenSSL NetSSL_Win PDF PageCompiler PocoDoc ProGen Prometheus Redis SevenZip Util XML Zip"
|
||||||
|
./ci/runtests.sh
|
||||||
|
@ -23,7 +23,7 @@
|
|||||||
#include "SQLExecutor.h"
|
#include "SQLExecutor.h"
|
||||||
|
|
||||||
|
|
||||||
#define POCO_ODBC_TEST_DATABASE_SERVER "10.211.55.5"//"localhost"
|
#define POCO_ODBC_TEST_DATABASE_SERVER "localhost"
|
||||||
|
|
||||||
|
|
||||||
class ODBCTest: public CppUnit::TestCase
|
class ODBCTest: public CppUnit::TestCase
|
||||||
|
Loading…
x
Reference in New Issue
Block a user