From e1ce13cc91fb30ad2f49f901d158504944bb53cb Mon Sep 17 00:00:00 2001 From: Inada Naoki Date: Tue, 19 Oct 2021 18:28:23 +0900 Subject: [PATCH 01/11] Add GitHub Actions for running SQLAlchemy tests --- .github/workflows/sqlalchemy.yaml | 45 +++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 .github/workflows/sqlalchemy.yaml diff --git a/.github/workflows/sqlalchemy.yaml b/.github/workflows/sqlalchemy.yaml new file mode 100644 index 00000000..abe2ad5a --- /dev/null +++ b/.github/workflows/sqlalchemy.yaml @@ -0,0 +1,45 @@ +name: SQLAlchemy compat test + +on: + push: + +jobs: + build: + runs-on: ubuntu-20.04 + steps: + - name: Start MySQL + run: | + sudo systemctl start mysql.service + mysql -uroot -proot -e "CREATE USER 'scott'@'%' IDENTIFIED BY 'tiger'; CREATE DATABASE test_schema CHARSET utf8mb4; GRANT ALL ON test_schema.* TO scott;" + + - uses: actions/cache@v2 + with: + path: ~/.cache/pip + key: ${{ runner.os }}-sqla-pip-1 + restore-keys: | + ${{ runner.os }}-sqla-pip- + + - name: Set up Python 3.10 + uses: actions/setup-python@v2 + with: + python-version: "3.10" + + - uses: actions/checkout@v2 + with: + fetch-depth: 2 + + - name: Install mysqlclient + env: + PIP_NO_PYTHON_VERSION_WARNING: 1 + PIP_DISABLE_PIP_VERSION_CHECK: 1 + run: | + pip install -U pytest pytest-cov + python setup.py develop + + - name: Run SQLAlchemy test + run: | + wget https://files.pythonhosted.org/packages/69/2b/f0ee898c3270d965300ec30b0bf06e062c4cc92f35d17ae6046f429c5067/SQLAlchemy-1.4.25.tar.gz + tar xf SQLAlchemy-1.4.25.tar.gz + cd SQLAlchemy-1.4.25 + pip install . + pytest --dburi=mysql://scott:tiger@127.0.0.1:3306/test?charset=utf8mb4 test/ From 1f049dcf176130b32fa49589fa75a16f44dbfbc3 Mon Sep 17 00:00:00 2001 From: Inada Naoki Date: Tue, 19 Oct 2021 18:34:00 +0900 Subject: [PATCH 02/11] fixup --- .github/workflows/sqlalchemy.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/sqlalchemy.yaml b/.github/workflows/sqlalchemy.yaml index abe2ad5a..160f6cd5 100644 --- a/.github/workflows/sqlalchemy.yaml +++ b/.github/workflows/sqlalchemy.yaml @@ -42,4 +42,4 @@ jobs: tar xf SQLAlchemy-1.4.25.tar.gz cd SQLAlchemy-1.4.25 pip install . - pytest --dburi=mysql://scott:tiger@127.0.0.1:3306/test?charset=utf8mb4 test/ + pytest --dburi=mysql://scott:tiger@127.0.0.1:3306/test_schema?charset=utf8mb4 test/ From d6b96dd632d81bcfbee4a1307a25800376654c7c Mon Sep 17 00:00:00 2001 From: Inada Naoki Date: Tue, 19 Oct 2021 18:47:13 +0900 Subject: [PATCH 03/11] try stable version instead of head. --- .github/workflows/sqlalchemy.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/sqlalchemy.yaml b/.github/workflows/sqlalchemy.yaml index 160f6cd5..8cf59ca2 100644 --- a/.github/workflows/sqlalchemy.yaml +++ b/.github/workflows/sqlalchemy.yaml @@ -2,6 +2,7 @@ name: SQLAlchemy compat test on: push: + pull_request: jobs: build: @@ -34,7 +35,8 @@ jobs: PIP_DISABLE_PIP_VERSION_CHECK: 1 run: | pip install -U pytest pytest-cov - python setup.py develop + #python setup.py develop + pip install mysqlclient # Use stable version - name: Run SQLAlchemy test run: | From 66e1a94eb2732cbf13d35d557d8684b29f0f94fc Mon Sep 17 00:00:00 2001 From: Inada Naoki Date: Tue, 19 Oct 2021 21:16:01 +0900 Subject: [PATCH 04/11] Use MySQL 5.7 --- .github/workflows/sqlalchemy.yaml | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/.github/workflows/sqlalchemy.yaml b/.github/workflows/sqlalchemy.yaml index 8cf59ca2..9d263a6b 100644 --- a/.github/workflows/sqlalchemy.yaml +++ b/.github/workflows/sqlalchemy.yaml @@ -8,10 +8,21 @@ jobs: build: runs-on: ubuntu-20.04 steps: - - name: Start MySQL + - uses: shogo82148/actions-setup-mysql@v1 + with: + mysql-version: "5.7" + user: scott + password: tiger + my-cnf: | + innodb_log_file_size=256MB + innodb_buffer_pool_size=512MB + max_allowed_packet=16MB + max_connections=50 + local_infile=1 + + - name: Create database run: | - sudo systemctl start mysql.service - mysql -uroot -proot -e "CREATE USER 'scott'@'%' IDENTIFIED BY 'tiger'; CREATE DATABASE test_schema CHARSET utf8mb4; GRANT ALL ON test_schema.* TO scott;" + mysql -uscott -ptiger -e "CREATE DATABASE test_schema CHARSET utf8mb4;" - uses: actions/cache@v2 with: From c3e028bc3cc585199c7cfeeea3c3ce50dc2996a7 Mon Sep 17 00:00:00 2001 From: Inada Naoki Date: Tue, 19 Oct 2021 21:19:52 +0900 Subject: [PATCH 05/11] fixup --- .github/workflows/sqlalchemy.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/sqlalchemy.yaml b/.github/workflows/sqlalchemy.yaml index 9d263a6b..f71ac59b 100644 --- a/.github/workflows/sqlalchemy.yaml +++ b/.github/workflows/sqlalchemy.yaml @@ -22,7 +22,7 @@ jobs: - name: Create database run: | - mysql -uscott -ptiger -e "CREATE DATABASE test_schema CHARSET utf8mb4;" + mysql -h127.0.0.1 -uscott -ptiger -e "CREATE DATABASE test_schema CHARSET utf8mb4;" - uses: actions/cache@v2 with: From fecd135e47110c664a47d19358264a6ee1df9859 Mon Sep 17 00:00:00 2001 From: Inada Naoki Date: Wed, 20 Oct 2021 16:39:24 +0900 Subject: [PATCH 06/11] Install libmysqlclient-dev --- .github/workflows/sqlalchemy.yaml | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.github/workflows/sqlalchemy.yaml b/.github/workflows/sqlalchemy.yaml index f71ac59b..3625cc5b 100644 --- a/.github/workflows/sqlalchemy.yaml +++ b/.github/workflows/sqlalchemy.yaml @@ -2,6 +2,8 @@ name: SQLAlchemy compat test on: push: + branches: + - main pull_request: jobs: @@ -31,10 +33,10 @@ jobs: restore-keys: | ${{ runner.os }}-sqla-pip- - - name: Set up Python 3.10 + - name: Set up Python uses: actions/setup-python@v2 with: - python-version: "3.10" + python-version: "3.9" - uses: actions/checkout@v2 with: @@ -45,6 +47,8 @@ jobs: PIP_NO_PYTHON_VERSION_WARNING: 1 PIP_DISABLE_PIP_VERSION_CHECK: 1 run: | + sudo apt-get update + sudo apt-get install libmysqlclient-dev pip install -U pytest pytest-cov #python setup.py develop pip install mysqlclient # Use stable version From eff9eb3ffff4bf4542d2ed8d7575bb1820a9e60e Mon Sep 17 00:00:00 2001 From: Inada Naoki Date: Sun, 17 Apr 2022 10:32:21 +0900 Subject: [PATCH 07/11] update sqla version --- .github/workflows/sqlalchemy.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/sqlalchemy.yaml b/.github/workflows/sqlalchemy.yaml index 3625cc5b..bf4c3bb6 100644 --- a/.github/workflows/sqlalchemy.yaml +++ b/.github/workflows/sqlalchemy.yaml @@ -55,8 +55,8 @@ jobs: - name: Run SQLAlchemy test run: | - wget https://files.pythonhosted.org/packages/69/2b/f0ee898c3270d965300ec30b0bf06e062c4cc92f35d17ae6046f429c5067/SQLAlchemy-1.4.25.tar.gz - tar xf SQLAlchemy-1.4.25.tar.gz - cd SQLAlchemy-1.4.25 + wget https://files.pythonhosted.org/packages/f6/d6/fcf14b752daba13a02a6669eccb025bf3ba3f814741cd23253c180a12fff/SQLAlchemy-1.4.35.tar.gz + tar xf SQLAlchemy-1.4.35.tar.gz + cd SQLAlchemy-1.4.35 pip install . pytest --dburi=mysql://scott:tiger@127.0.0.1:3306/test_schema?charset=utf8mb4 test/ From f312b93ce2c5333a5fd0795c27f1323d5dc26a61 Mon Sep 17 00:00:00 2001 From: Inada Naoki Date: Sun, 17 Apr 2022 10:37:30 +0900 Subject: [PATCH 08/11] verbose --- .github/workflows/sqlalchemy.yaml | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/.github/workflows/sqlalchemy.yaml b/.github/workflows/sqlalchemy.yaml index bf4c3bb6..2551bd92 100644 --- a/.github/workflows/sqlalchemy.yaml +++ b/.github/workflows/sqlalchemy.yaml @@ -26,13 +26,6 @@ jobs: run: | mysql -h127.0.0.1 -uscott -ptiger -e "CREATE DATABASE test_schema CHARSET utf8mb4;" - - uses: actions/cache@v2 - with: - path: ~/.cache/pip - key: ${{ runner.os }}-sqla-pip-1 - restore-keys: | - ${{ runner.os }}-sqla-pip- - - name: Set up Python uses: actions/setup-python@v2 with: @@ -51,7 +44,9 @@ jobs: sudo apt-get install libmysqlclient-dev pip install -U pytest pytest-cov #python setup.py develop - pip install mysqlclient # Use stable version + pip install -v mysqlclient # Use stable version + python -VV + python -c 'import MySQLdb' - name: Run SQLAlchemy test run: | From a8165dd2755041cc68fb20720f7e60f45144c47f Mon Sep 17 00:00:00 2001 From: Inada Naoki Date: Sun, 17 Apr 2022 10:54:31 +0900 Subject: [PATCH 09/11] test --- .github/workflows/sqlalchemy.yaml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/workflows/sqlalchemy.yaml b/.github/workflows/sqlalchemy.yaml index 2551bd92..2f5c2e92 100644 --- a/.github/workflows/sqlalchemy.yaml +++ b/.github/workflows/sqlalchemy.yaml @@ -31,15 +31,16 @@ jobs: with: python-version: "3.9" - - uses: actions/checkout@v2 - with: - fetch-depth: 2 + # - uses: actions/checkout@v2 + # with: + # fetch-depth: 2 - name: Install mysqlclient env: PIP_NO_PYTHON_VERSION_WARNING: 1 PIP_DISABLE_PIP_VERSION_CHECK: 1 run: | + pwd sudo apt-get update sudo apt-get install libmysqlclient-dev pip install -U pytest pytest-cov @@ -54,4 +55,6 @@ jobs: tar xf SQLAlchemy-1.4.35.tar.gz cd SQLAlchemy-1.4.35 pip install . + pwd + python -c 'import MySQLdb' pytest --dburi=mysql://scott:tiger@127.0.0.1:3306/test_schema?charset=utf8mb4 test/ From 938276cda5b542bd0a4b8e331a576334841f04c6 Mon Sep 17 00:00:00 2001 From: Inada Naoki Date: Sun, 17 Apr 2022 15:38:17 +0900 Subject: [PATCH 10/11] Use system MySQL --- .github/workflows/sqlalchemy.yaml | 22 ++++------------------ 1 file changed, 4 insertions(+), 18 deletions(-) diff --git a/.github/workflows/sqlalchemy.yaml b/.github/workflows/sqlalchemy.yaml index 2f5c2e92..7a8c5468 100644 --- a/.github/workflows/sqlalchemy.yaml +++ b/.github/workflows/sqlalchemy.yaml @@ -10,31 +10,17 @@ jobs: build: runs-on: ubuntu-20.04 steps: - - uses: shogo82148/actions-setup-mysql@v1 - with: - mysql-version: "5.7" - user: scott - password: tiger - my-cnf: | - innodb_log_file_size=256MB - innodb_buffer_pool_size=512MB - max_allowed_packet=16MB - max_connections=50 - local_infile=1 - - - name: Create database + - name: Start MySQL run: | - mysql -h127.0.0.1 -uscott -ptiger -e "CREATE DATABASE test_schema CHARSET utf8mb4;" + sudo systemctl start mysql.service + mysql -uroot -proot -e "CREATE DATABASE test_schema CHARSET utf8mb4" + mysql -uroot -proot -e "CREATE USER 'scott' IDENTIFIED BY 'tiger'" - name: Set up Python uses: actions/setup-python@v2 with: python-version: "3.9" - # - uses: actions/checkout@v2 - # with: - # fetch-depth: 2 - - name: Install mysqlclient env: PIP_NO_PYTHON_VERSION_WARNING: 1 From bb02b2d864241b679c9e5737656cd967cee6da86 Mon Sep 17 00:00:00 2001 From: Inada Naoki Date: Sun, 17 Apr 2022 15:41:47 +0900 Subject: [PATCH 11/11] test --- .github/workflows/sqlalchemy.yaml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/sqlalchemy.yaml b/.github/workflows/sqlalchemy.yaml index 7a8c5468..f8711776 100644 --- a/.github/workflows/sqlalchemy.yaml +++ b/.github/workflows/sqlalchemy.yaml @@ -15,6 +15,7 @@ jobs: sudo systemctl start mysql.service mysql -uroot -proot -e "CREATE DATABASE test_schema CHARSET utf8mb4" mysql -uroot -proot -e "CREATE USER 'scott' IDENTIFIED BY 'tiger'" + mysql -uroot -proot -e "GRANT ALL ON *.* TO 'scott'" - name: Set up Python uses: actions/setup-python@v2 @@ -26,9 +27,6 @@ jobs: PIP_NO_PYTHON_VERSION_WARNING: 1 PIP_DISABLE_PIP_VERSION_CHECK: 1 run: | - pwd - sudo apt-get update - sudo apt-get install libmysqlclient-dev pip install -U pytest pytest-cov #python setup.py develop pip install -v mysqlclient # Use stable version