From 23d0bdc87869ea8ea298f04b063b7444e826efa1 Mon Sep 17 00:00:00 2001 From: yitam Date: Mon, 8 May 2017 11:18:29 -0700 Subject: [PATCH 01/26] investigating Authentication=SqlPassword issue on appveyor --- test/sqlsrv/sqlsrv_azure_ad_authentication.phpt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/sqlsrv/sqlsrv_azure_ad_authentication.phpt b/test/sqlsrv/sqlsrv_azure_ad_authentication.phpt index af22278a..6afa68e1 100644 --- a/test/sqlsrv/sqlsrv_azure_ad_authentication.phpt +++ b/test/sqlsrv/sqlsrv_azure_ad_authentication.phpt @@ -6,7 +6,7 @@ Test the Authentication keyword with options SqlPassword and ActiveDirectoryInte $username, "PWD"=>$password, "Authentication"=>"SqlPassword", "TrustServerCertificate"=>true ); From 4f1a6cbf8a6a718e10f94b9a01f0554657d951f3 Mon Sep 17 00:00:00 2001 From: yitam Date: Mon, 8 May 2017 11:41:09 -0700 Subject: [PATCH 02/26] switching the order of tests --- appveyor.yml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index c2141367..ca14ff11 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -160,17 +160,17 @@ test_script: - cd %PHP_INSTALL_DIR% - php --ini - php -i - - python -V - - Echo setup test database for SQLSRV tests - %SQLSRV_DBNAME% - - python %APPVEYOR_BUILD_FOLDER%\test\setup\setup_dbs.py -dbname %SQLSRV_DBNAME% - - Echo setup test database for PDO_SQLSRV tests - %PDOSQLSRV_DBNAME% - - python %APPVEYOR_BUILD_FOLDER%\test\setup\setup_dbs.py -dbname %PDOSQLSRV_DBNAME% - - php run-tests.php -p php.exe %APPVEYOR_BUILD_FOLDER%\test\sqlsrv\*.phpt > %APPVEYOR_BUILD_FOLDER%\test\sqlsrv.log 2>&1 - - type %APPVEYOR_BUILD_FOLDER%\test\sqlsrv.log + #- python -V + #- Echo setup test database for SQLSRV tests - %SQLSRV_DBNAME% + #- python %APPVEYOR_BUILD_FOLDER%\test\setup\setup_dbs.py -dbname %SQLSRV_DBNAME% + #- Echo setup test database for PDO_SQLSRV tests - %PDOSQLSRV_DBNAME% + #- python %APPVEYOR_BUILD_FOLDER%\test\setup\setup_dbs.py -dbname %PDOSQLSRV_DBNAME% - php run-tests.php -p php.exe %APPVEYOR_BUILD_FOLDER%\test\pdo_sqlsrv\*.phpt > %APPVEYOR_BUILD_FOLDER%\test\pdo_sqlsrv.log 2>&1 - type %APPVEYOR_BUILD_FOLDER%\test\pdo_sqlsrv.log - - python %APPVEYOR_BUILD_FOLDER%\test\setup\cleanup_dbs.py -dbname %SQLSRV_DBNAME% - - python %APPVEYOR_BUILD_FOLDER%\test\setup\cleanup_dbs.py -dbname %PDOSQLSRV_DBNAME% + - php run-tests.php -p php.exe %APPVEYOR_BUILD_FOLDER%\test\sqlsrv\*.phpt > %APPVEYOR_BUILD_FOLDER%\test\sqlsrv.log 2>&1 + - type %APPVEYOR_BUILD_FOLDER%\test\sqlsrv.log + #- python %APPVEYOR_BUILD_FOLDER%\test\setup\cleanup_dbs.py -dbname %SQLSRV_DBNAME% + #- python %APPVEYOR_BUILD_FOLDER%\test\setup\cleanup_dbs.py -dbname %PDOSQLSRV_DBNAME% after_test: - cd %APPVEYOR_BUILD_FOLDER%\test\ From 04fde120f4a0fb95ad6b4ac76f96c6a62bd17065 Mon Sep 17 00:00:00 2001 From: yitam Date: Mon, 8 May 2017 12:35:41 -0700 Subject: [PATCH 03/26] start with a diff platform with 7.1 first --- appveyor.yml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index ca14ff11..47ce81b9 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -18,6 +18,15 @@ environment: PHP_DEPSVER: 7.0 PHP_SDK: c:\projects\php matrix: + - BUILD_PLATFORM: x86 + TEST_PHP_SQL_SERVER: (local)\SQL2014 + SQL_INSTANCE: SQL2014 + PHP_VC: 14 + PHP_MAJOR_VER: 7.0 + PHP_MINOR_VER: latest + PHP_SDK_DIR: c:\projects\php\x86 + PHP_INSTALL_DIR: c:\projects\php\x86\bin + platform: x86 - BUILD_PLATFORM: x64 TEST_PHP_SQL_SERVER: (local)\SQL2012SP1 SQL_INSTANCE: SQL2012SP1 @@ -28,15 +37,6 @@ environment: PHP_INSTALL_DIR: c:\projects\php\x64\bin PHP_ZTS: --disable-zts platform: x64 - - BUILD_PLATFORM: x86 - TEST_PHP_SQL_SERVER: (local)\SQL2014 - SQL_INSTANCE: SQL2014 - PHP_VC: 14 - PHP_MAJOR_VER: 7.0 - PHP_MINOR_VER: latest - PHP_SDK_DIR: c:\projects\php\x86 - PHP_INSTALL_DIR: c:\projects\php\x86\bin - platform: x86 - BUILD_PLATFORM: x64 TEST_PHP_SQL_SERVER: (local)\SQL2016 SQL_INSTANCE: SQL2016 From 645ff1e2655668aa0adbf430030b2bf43ad409b5 Mon Sep 17 00:00:00 2001 From: yitam Date: Mon, 8 May 2017 12:45:06 -0700 Subject: [PATCH 04/26] try simpler connection tests --- appveyor.yml | 38 +++++++++---------- .../sqlsrv_azure_ad_authentication.phpt | 21 ++++++++++ 2 files changed, 40 insertions(+), 19 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 47ce81b9..ffede5dd 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -18,25 +18,6 @@ environment: PHP_DEPSVER: 7.0 PHP_SDK: c:\projects\php matrix: - - BUILD_PLATFORM: x86 - TEST_PHP_SQL_SERVER: (local)\SQL2014 - SQL_INSTANCE: SQL2014 - PHP_VC: 14 - PHP_MAJOR_VER: 7.0 - PHP_MINOR_VER: latest - PHP_SDK_DIR: c:\projects\php\x86 - PHP_INSTALL_DIR: c:\projects\php\x86\bin - platform: x86 - - BUILD_PLATFORM: x64 - TEST_PHP_SQL_SERVER: (local)\SQL2012SP1 - SQL_INSTANCE: SQL2012SP1 - PHP_VC: 14 - PHP_MAJOR_VER: 7.0 - PHP_MINOR_VER: latest - PHP_SDK_DIR: c:\projects\php\x64 - PHP_INSTALL_DIR: c:\projects\php\x64\bin - PHP_ZTS: --disable-zts - platform: x64 - BUILD_PLATFORM: x64 TEST_PHP_SQL_SERVER: (local)\SQL2016 SQL_INSTANCE: SQL2016 @@ -56,6 +37,25 @@ environment: PHP_INSTALL_DIR: c:\projects\php\x86\bin PHP_ZTS: --disable-zts platform: x86 + - BUILD_PLATFORM: x64 + TEST_PHP_SQL_SERVER: (local)\SQL2012SP1 + SQL_INSTANCE: SQL2012SP1 + PHP_VC: 14 + PHP_MAJOR_VER: 7.0 + PHP_MINOR_VER: latest + PHP_SDK_DIR: c:\projects\php\x64 + PHP_INSTALL_DIR: c:\projects\php\x64\bin + PHP_ZTS: --disable-zts + platform: x64 + - BUILD_PLATFORM: x86 + TEST_PHP_SQL_SERVER: (local)\SQL2014 + SQL_INSTANCE: SQL2014 + PHP_VC: 14 + PHP_MAJOR_VER: 7.0 + PHP_MINOR_VER: latest + PHP_SDK_DIR: c:\projects\php\x86 + PHP_INSTALL_DIR: c:\projects\php\x86\bin + platform: x86 # PHP_MAJOR_VER is PHP major version to build (7.0, 7.1) diff --git a/test/sqlsrv/sqlsrv_azure_ad_authentication.phpt b/test/sqlsrv/sqlsrv_azure_ad_authentication.phpt index 6afa68e1..51d93a08 100644 --- a/test/sqlsrv/sqlsrv_azure_ad_authentication.phpt +++ b/test/sqlsrv/sqlsrv_azure_ad_authentication.phpt @@ -6,6 +6,27 @@ Test the Authentication keyword with options SqlPassword and ActiveDirectoryInte $username, "PWD"=>$password ); + +$conn = sqlsrv_connect( $serverName, $connectionInfo ); + +if( $conn === false ) +{ + echo "Could not connect.\n"; + print_r( sqlsrv_errors() ); +} + +$connectionInfo = array( "UID"=>$username, "PWD"=>$password, + "TrustServerCertificate"=>true ); + +$conn = sqlsrv_connect( $serverName, $connectionInfo ); + +if( $conn === false ) +{ + echo "Could not connect with TrustServerCertificate.\n"; + print_r( sqlsrv_errors() ); +} + //if (strtoupper(substr(PHP_OS, 0, 3)) != 'WIN') { $connectionInfo = array( "UID"=>$username, "PWD"=>$password, From 971352c31644f94440dbaee1729e5c4593c691d9 Mon Sep 17 00:00:00 2001 From: yitam Date: Mon, 8 May 2017 13:53:28 -0700 Subject: [PATCH 05/26] another try --- test/sqlsrv/sqlsrv_azure_ad_authentication.phpt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/test/sqlsrv/sqlsrv_azure_ad_authentication.phpt b/test/sqlsrv/sqlsrv_azure_ad_authentication.phpt index 51d93a08..c0593771 100644 --- a/test/sqlsrv/sqlsrv_azure_ad_authentication.phpt +++ b/test/sqlsrv/sqlsrv_azure_ad_authentication.phpt @@ -5,7 +5,7 @@ Test the Authentication keyword with options SqlPassword and ActiveDirectoryInte --FILE-- $username, "PWD"=>$password ); $conn = sqlsrv_connect( $serverName, $connectionInfo ); @@ -26,10 +26,10 @@ if( $conn === false ) echo "Could not connect with TrustServerCertificate.\n"; print_r( sqlsrv_errors() ); } - +*/ //if (strtoupper(substr(PHP_OS, 0, 3)) != 'WIN') { - $connectionInfo = array( "UID"=>$username, "PWD"=>$password, + $connectionInfo = array( "Database"=>"master", "UID"=>$username, "PWD"=>$password, "Authentication"=>"SqlPassword", "TrustServerCertificate"=>true ); $conn = sqlsrv_connect( $serverName, $connectionInfo ); @@ -37,7 +37,7 @@ if( $conn === false ) if( $conn === false ) { echo "Could not connect with Authentication=SqlPassword.\n"; - print_r( sqlsrv_errors() ); + var_dump( sqlsrv_errors() ); } // else // { From 425bcfabed957556a05a8bc2a8c52d38115f043a Mon Sep 17 00:00:00 2001 From: yitam Date: Mon, 8 May 2017 14:53:47 -0700 Subject: [PATCH 06/26] add checks for odbc version --- appveyor.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/appveyor.yml b/appveyor.yml index ffede5dd..14be651a 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -117,6 +117,9 @@ install: - echo Downloading MSODBCSQL 13.1 - ps: (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/' + ${env:BUILD_PLATFORM} + '/msodbcsql.msi', 'msodbcsql.msi') - ps: msiexec /i msodbcsql.msi /quiet /qn + - echo Checking the versions of MSODBCSQL + - reg query "HKLM\SOFTWARE\ODBC\odbcinst.ini\ODBC Driver 13 for SQL Server" + - dir C:\Windows\System32\msodbcsql13.dll - cd .. - cd - 7z x -y php-sdk-binary-tools-20110915.zip -o%PHP_SDK% From 46e1eb877a9455c6c90eb96e7d1bff4a177c46e6 Mon Sep 17 00:00:00 2001 From: yitam Date: Mon, 8 May 2017 15:25:34 -0700 Subject: [PATCH 07/26] another check for odbc --- appveyor.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 14be651a..024df8e1 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -114,10 +114,11 @@ install: - ps: (new-object net.webclient).DownloadFile('http://windows.php.net/downloads/releases/php-' + ${env:PHP_VERSION} + '-src.zip', ${env:APPVEYOR_BUILD_FOLDER} + '\..\php.zip') #- echo Downloading PHP deps [%PHP_DEPSVER%] #- ps: (new-object net.webclient).DownloadFile('http://windows.php.net/downloads/php-sdk/deps-' + ${env:PHP_DEPSVER} + '-vc' + ${env:PHP_VC} + '-' + ${env:BUILD_PLATFORM} + '.7z', ${env:APPVEYOR_BUILD_FOLDER} + '\..\deps.7z') + - dir C:\Windows\System32\msodbcsql13.dll - echo Downloading MSODBCSQL 13.1 - ps: (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/' + ${env:BUILD_PLATFORM} + '/msodbcsql.msi', 'msodbcsql.msi') - - ps: msiexec /i msodbcsql.msi /quiet /qn - - echo Checking the versions of MSODBCSQL + - ps: msiexec /i msodbcsql.msi /quiet /qn /norestart + - echo Checking the version of MSODBCSQL - reg query "HKLM\SOFTWARE\ODBC\odbcinst.ini\ODBC Driver 13 for SQL Server" - dir C:\Windows\System32\msodbcsql13.dll - cd .. From d5677b8a18b787b990ccb3ccaeb639417a2c02e3 Mon Sep 17 00:00:00 2001 From: yitam Date: Mon, 8 May 2017 15:32:47 -0700 Subject: [PATCH 08/26] administrative install --- appveyor.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 024df8e1..f18a3b31 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -116,8 +116,8 @@ install: #- ps: (new-object net.webclient).DownloadFile('http://windows.php.net/downloads/php-sdk/deps-' + ${env:PHP_DEPSVER} + '-vc' + ${env:PHP_VC} + '-' + ${env:BUILD_PLATFORM} + '.7z', ${env:APPVEYOR_BUILD_FOLDER} + '\..\deps.7z') - dir C:\Windows\System32\msodbcsql13.dll - echo Downloading MSODBCSQL 13.1 - - ps: (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/' + ${env:BUILD_PLATFORM} + '/msodbcsql.msi', 'msodbcsql.msi') - - ps: msiexec /i msodbcsql.msi /quiet /qn /norestart + - ps: (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/' + ${env:BUILD_PLATFORM} + '/msodbcsql.msi', 'msodbcsql1.msi') + - ps: msiexec /a msodbcsql1.msi /quiet /qn /norestart - echo Checking the version of MSODBCSQL - reg query "HKLM\SOFTWARE\ODBC\odbcinst.ini\ODBC Driver 13 for SQL Server" - dir C:\Windows\System32\msodbcsql13.dll From 10cc8800f2aebd5ba9fadce99c5ecb3782632922 Mon Sep 17 00:00:00 2001 From: yitam Date: Mon, 8 May 2017 16:01:47 -0700 Subject: [PATCH 09/26] install odbc as passive --- appveyor.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index f18a3b31..60b22323 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -116,8 +116,8 @@ install: #- ps: (new-object net.webclient).DownloadFile('http://windows.php.net/downloads/php-sdk/deps-' + ${env:PHP_DEPSVER} + '-vc' + ${env:PHP_VC} + '-' + ${env:BUILD_PLATFORM} + '.7z', ${env:APPVEYOR_BUILD_FOLDER} + '\..\deps.7z') - dir C:\Windows\System32\msodbcsql13.dll - echo Downloading MSODBCSQL 13.1 - - ps: (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/' + ${env:BUILD_PLATFORM} + '/msodbcsql.msi', 'msodbcsql1.msi') - - ps: msiexec /a msodbcsql1.msi /quiet /qn /norestart + - ps: (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/' + ${env:BUILD_PLATFORM} + '/msodbcsql.msi', 'msodbcsql.msi') + - ps: msiexec /quiet /passive /qn msodbcsql.msi IACCEPTMSODBCSQLLICENSETERMS=YES ADDLOCAL=ALL /norestart - echo Checking the version of MSODBCSQL - reg query "HKLM\SOFTWARE\ODBC\odbcinst.ini\ODBC Driver 13 for SQL Server" - dir C:\Windows\System32\msodbcsql13.dll From 25e97771256eddd9b7c8fb4eb10453356c306575 Mon Sep 17 00:00:00 2001 From: yitam Date: Mon, 8 May 2017 17:11:24 -0700 Subject: [PATCH 10/26] add install log --- appveyor.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 60b22323..c426c314 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -114,10 +114,11 @@ install: - ps: (new-object net.webclient).DownloadFile('http://windows.php.net/downloads/releases/php-' + ${env:PHP_VERSION} + '-src.zip', ${env:APPVEYOR_BUILD_FOLDER} + '\..\php.zip') #- echo Downloading PHP deps [%PHP_DEPSVER%] #- ps: (new-object net.webclient).DownloadFile('http://windows.php.net/downloads/php-sdk/deps-' + ${env:PHP_DEPSVER} + '-vc' + ${env:PHP_VC} + '-' + ${env:BUILD_PLATFORM} + '.7z', ${env:APPVEYOR_BUILD_FOLDER} + '\..\deps.7z') - - dir C:\Windows\System32\msodbcsql13.dll - echo Downloading MSODBCSQL 13.1 - ps: (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/' + ${env:BUILD_PLATFORM} + '/msodbcsql.msi', 'msodbcsql.msi') - - ps: msiexec /quiet /passive /qn msodbcsql.msi IACCEPTMSODBCSQLLICENSETERMS=YES ADDLOCAL=ALL /norestart + #- ps: msiexec /i msodbcsql.msi /quiet /qn /norestart + - ps: msiexec /i msodbcsql.msi /quiet /norestart /l install.log + - more install.log - echo Checking the version of MSODBCSQL - reg query "HKLM\SOFTWARE\ODBC\odbcinst.ini\ODBC Driver 13 for SQL Server" - dir C:\Windows\System32\msodbcsql13.dll From 277d7066a9a8353acbe7b6b9b772ce497100a7b1 Mon Sep 17 00:00:00 2001 From: yitam Date: Tue, 9 May 2017 09:29:39 -0700 Subject: [PATCH 11/26] tried wmic --- appveyor.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/appveyor.yml b/appveyor.yml index c426c314..bfba101a 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -98,6 +98,7 @@ install: Set-Service SQLBrowser -StartupType Manual; Start-Service SQLBrowser; + - cmd: wmic product list brief /format:list - echo Set PHP version... - appveyor DownloadFile http://windows.php.net/downloads/releases/sha1sum.txt # determine latest PHP versions @@ -118,7 +119,7 @@ install: - ps: (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/' + ${env:BUILD_PLATFORM} + '/msodbcsql.msi', 'msodbcsql.msi') #- ps: msiexec /i msodbcsql.msi /quiet /qn /norestart - ps: msiexec /i msodbcsql.msi /quiet /norestart /l install.log - - more install.log + - cmd: more install.log - echo Checking the version of MSODBCSQL - reg query "HKLM\SOFTWARE\ODBC\odbcinst.ini\ODBC Driver 13 for SQL Server" - dir C:\Windows\System32\msodbcsql13.dll From f816bbaf79e16fd61139c254849e90dc81a68d93 Mon Sep 17 00:00:00 2001 From: yitam Date: Tue, 9 May 2017 11:18:30 -0700 Subject: [PATCH 12/26] test workaround --- appveyor.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index bfba101a..1328bd0e 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -98,7 +98,6 @@ install: Set-Service SQLBrowser -StartupType Manual; Start-Service SQLBrowser; - - cmd: wmic product list brief /format:list - echo Set PHP version... - appveyor DownloadFile http://windows.php.net/downloads/releases/sha1sum.txt # determine latest PHP versions @@ -116,12 +115,13 @@ install: #- echo Downloading PHP deps [%PHP_DEPSVER%] #- ps: (new-object net.webclient).DownloadFile('http://windows.php.net/downloads/php-sdk/deps-' + ${env:PHP_DEPSVER} + '-vc' + ${env:PHP_VC} + '-' + ${env:BUILD_PLATFORM} + '.7z', ${env:APPVEYOR_BUILD_FOLDER} + '\..\deps.7z') - echo Downloading MSODBCSQL 13.1 - - ps: (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/' + ${env:BUILD_PLATFORM} + '/msodbcsql.msi', 'msodbcsql.msi') + - $msiPath = "$($env:USERPROFILE)\msodbcsql.msi" + - ps: (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/' + ${env:BUILD_PLATFORM} + '/msodbcsql.msi', $msiPath) #- ps: msiexec /i msodbcsql.msi /quiet /qn /norestart - - ps: msiexec /i msodbcsql.msi /quiet /norestart /l install.log - - cmd: more install.log + #- ps: msiexec /i msodbcsql.msi /quiet /norestart /l install.log + - cmd /c start /wait msiexec /i "$msiPath" /q - echo Checking the version of MSODBCSQL - - reg query "HKLM\SOFTWARE\ODBC\odbcinst.ini\ODBC Driver 13 for SQL Server" + #- reg query "HKLM\SOFTWARE\ODBC\odbcinst.ini\ODBC Driver 13 for SQL Server" - dir C:\Windows\System32\msodbcsql13.dll - cd .. - cd From a50b8dc1d836c315c0634b933ee3ac00aca44e10 Mon Sep 17 00:00:00 2001 From: yitam Date: Tue, 9 May 2017 11:23:15 -0700 Subject: [PATCH 13/26] set msiPath --- appveyor.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/appveyor.yml b/appveyor.yml index 1328bd0e..24d2dfc5 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -115,7 +115,7 @@ install: #- echo Downloading PHP deps [%PHP_DEPSVER%] #- ps: (new-object net.webclient).DownloadFile('http://windows.php.net/downloads/php-sdk/deps-' + ${env:PHP_DEPSVER} + '-vc' + ${env:PHP_VC} + '-' + ${env:BUILD_PLATFORM} + '.7z', ${env:APPVEYOR_BUILD_FOLDER} + '\..\deps.7z') - echo Downloading MSODBCSQL 13.1 - - $msiPath = "$($env:USERPROFILE)\msodbcsql.msi" + - ps: $msiPath = "$($env:USERPROFILE)\msodbcsql.msi" - ps: (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/' + ${env:BUILD_PLATFORM} + '/msodbcsql.msi', $msiPath) #- ps: msiexec /i msodbcsql.msi /quiet /qn /norestart #- ps: msiexec /i msodbcsql.msi /quiet /norestart /l install.log From 1b7d131cb65522d5d1ee6afa7d4e86ba17316e67 Mon Sep 17 00:00:00 2001 From: yitam Date: Tue, 9 May 2017 11:29:41 -0700 Subject: [PATCH 14/26] hardcoded msiPath --- appveyor.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 24d2dfc5..54902648 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -115,13 +115,13 @@ install: #- echo Downloading PHP deps [%PHP_DEPSVER%] #- ps: (new-object net.webclient).DownloadFile('http://windows.php.net/downloads/php-sdk/deps-' + ${env:PHP_DEPSVER} + '-vc' + ${env:PHP_VC} + '-' + ${env:BUILD_PLATFORM} + '.7z', ${env:APPVEYOR_BUILD_FOLDER} + '\..\deps.7z') - echo Downloading MSODBCSQL 13.1 - - ps: $msiPath = "$($env:USERPROFILE)\msodbcsql.msi" - - ps: (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/' + ${env:BUILD_PLATFORM} + '/msodbcsql.msi', $msiPath) + #- ps: $msiPath = "$($env:USERPROFILE)\msodbcsql.msi" + - ps: (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/' + ${env:BUILD_PLATFORM} + '/msodbcsql.msi', 'c:\projects\msodbcsql.msi') #- ps: msiexec /i msodbcsql.msi /quiet /qn /norestart #- ps: msiexec /i msodbcsql.msi /quiet /norestart /l install.log - - cmd /c start /wait msiexec /i "$msiPath" /q + - cmd /c start /wait msiexec /i "c:\projects\msodbcsql.msi" /q - echo Checking the version of MSODBCSQL - #- reg query "HKLM\SOFTWARE\ODBC\odbcinst.ini\ODBC Driver 13 for SQL Server" + - reg query "HKLM\SOFTWARE\ODBC\odbcinst.ini\ODBC Driver 13 for SQL Server" - dir C:\Windows\System32\msodbcsql13.dll - cd .. - cd From c2edfe32d6cb77bc17d1fc44f5559c60e60a3c4d Mon Sep 17 00:00:00 2001 From: yitam Date: Tue, 9 May 2017 11:55:02 -0700 Subject: [PATCH 15/26] distinguish x64 and x86 --- appveyor.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/appveyor.yml b/appveyor.yml index 54902648..c80f2236 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -116,7 +116,12 @@ install: #- ps: (new-object net.webclient).DownloadFile('http://windows.php.net/downloads/php-sdk/deps-' + ${env:PHP_DEPSVER} + '-vc' + ${env:PHP_VC} + '-' + ${env:BUILD_PLATFORM} + '.7z', ${env:APPVEYOR_BUILD_FOLDER} + '\..\deps.7z') - echo Downloading MSODBCSQL 13.1 #- ps: $msiPath = "$($env:USERPROFILE)\msodbcsql.msi" - - ps: (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/' + ${env:BUILD_PLATFORM} + '/msodbcsql.msi', 'c:\projects\msodbcsql.msi') + - ps: >- + If ($env:BUILD_PLATFORM -Match "x64") { + (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/x64/msodbcsql.msi', 'c:\projects\msodbcsql.msi') + } Else { + (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/x86/msodbcsql.msi', 'c:\projects\msodbcsql.msi') + } #- ps: msiexec /i msodbcsql.msi /quiet /qn /norestart #- ps: msiexec /i msodbcsql.msi /quiet /norestart /l install.log - cmd /c start /wait msiexec /i "c:\projects\msodbcsql.msi" /q From 7e91da50081c0db1eb22ffcfe5a265a0780a24e3 Mon Sep 17 00:00:00 2001 From: yitam Date: Tue, 9 May 2017 12:59:31 -0700 Subject: [PATCH 16/26] uncomment creating test DBs --- appveyor.yml | 37 +++++++++++++++++-------------------- 1 file changed, 17 insertions(+), 20 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index c80f2236..b8604587 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -27,16 +27,6 @@ environment: PHP_SDK_DIR: c:\projects\php\x64 PHP_INSTALL_DIR: c:\projects\php\x64\bin platform: x64 - - BUILD_PLATFORM: x86 - TEST_PHP_SQL_SERVER: (local)\SQL2008R2SP2 - SQL_INSTANCE: SQL2008R2SP2 - PHP_VC: 14 - PHP_MAJOR_VER: 7.1 - PHP_MINOR_VER: latest - PHP_SDK_DIR: c:\projects\php\x86 - PHP_INSTALL_DIR: c:\projects\php\x86\bin - PHP_ZTS: --disable-zts - platform: x86 - BUILD_PLATFORM: x64 TEST_PHP_SQL_SERVER: (local)\SQL2012SP1 SQL_INSTANCE: SQL2012SP1 @@ -47,6 +37,16 @@ environment: PHP_INSTALL_DIR: c:\projects\php\x64\bin PHP_ZTS: --disable-zts platform: x64 + - BUILD_PLATFORM: x86 + TEST_PHP_SQL_SERVER: (local)\SQL2008R2SP2 + SQL_INSTANCE: SQL2008R2SP2 + PHP_VC: 14 + PHP_MAJOR_VER: 7.1 + PHP_MINOR_VER: latest + PHP_SDK_DIR: c:\projects\php\x86 + PHP_INSTALL_DIR: c:\projects\php\x86\bin + PHP_ZTS: --disable-zts + platform: x86 - BUILD_PLATFORM: x86 TEST_PHP_SQL_SERVER: (local)\SQL2014 SQL_INSTANCE: SQL2014 @@ -115,15 +115,12 @@ install: #- echo Downloading PHP deps [%PHP_DEPSVER%] #- ps: (new-object net.webclient).DownloadFile('http://windows.php.net/downloads/php-sdk/deps-' + ${env:PHP_DEPSVER} + '-vc' + ${env:PHP_VC} + '-' + ${env:BUILD_PLATFORM} + '.7z', ${env:APPVEYOR_BUILD_FOLDER} + '\..\deps.7z') - echo Downloading MSODBCSQL 13.1 - #- ps: $msiPath = "$($env:USERPROFILE)\msodbcsql.msi" - ps: >- If ($env:BUILD_PLATFORM -Match "x64") { (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/x64/msodbcsql.msi', 'c:\projects\msodbcsql.msi') } Else { (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/x86/msodbcsql.msi', 'c:\projects\msodbcsql.msi') } - #- ps: msiexec /i msodbcsql.msi /quiet /qn /norestart - #- ps: msiexec /i msodbcsql.msi /quiet /norestart /l install.log - cmd /c start /wait msiexec /i "c:\projects\msodbcsql.msi" /q - echo Checking the version of MSODBCSQL - reg query "HKLM\SOFTWARE\ODBC\odbcinst.ini\ODBC Driver 13 for SQL Server" @@ -171,17 +168,17 @@ test_script: - cd %PHP_INSTALL_DIR% - php --ini - php -i - #- python -V - #- Echo setup test database for SQLSRV tests - %SQLSRV_DBNAME% - #- python %APPVEYOR_BUILD_FOLDER%\test\setup\setup_dbs.py -dbname %SQLSRV_DBNAME% - #- Echo setup test database for PDO_SQLSRV tests - %PDOSQLSRV_DBNAME% - #- python %APPVEYOR_BUILD_FOLDER%\test\setup\setup_dbs.py -dbname %PDOSQLSRV_DBNAME% + - python -V + - Echo setup test database for SQLSRV tests - %SQLSRV_DBNAME% + - python %APPVEYOR_BUILD_FOLDER%\test\setup\setup_dbs.py -dbname %SQLSRV_DBNAME% + - Echo setup test database for PDO_SQLSRV tests - %PDOSQLSRV_DBNAME% + - python %APPVEYOR_BUILD_FOLDER%\test\setup\setup_dbs.py -dbname %PDOSQLSRV_DBNAME% - php run-tests.php -p php.exe %APPVEYOR_BUILD_FOLDER%\test\pdo_sqlsrv\*.phpt > %APPVEYOR_BUILD_FOLDER%\test\pdo_sqlsrv.log 2>&1 - type %APPVEYOR_BUILD_FOLDER%\test\pdo_sqlsrv.log - php run-tests.php -p php.exe %APPVEYOR_BUILD_FOLDER%\test\sqlsrv\*.phpt > %APPVEYOR_BUILD_FOLDER%\test\sqlsrv.log 2>&1 - type %APPVEYOR_BUILD_FOLDER%\test\sqlsrv.log - #- python %APPVEYOR_BUILD_FOLDER%\test\setup\cleanup_dbs.py -dbname %SQLSRV_DBNAME% - #- python %APPVEYOR_BUILD_FOLDER%\test\setup\cleanup_dbs.py -dbname %PDOSQLSRV_DBNAME% + - python %APPVEYOR_BUILD_FOLDER%\test\setup\cleanup_dbs.py -dbname %SQLSRV_DBNAME% + - python %APPVEYOR_BUILD_FOLDER%\test\setup\cleanup_dbs.py -dbname %PDOSQLSRV_DBNAME% after_test: - cd %APPVEYOR_BUILD_FOLDER%\test\ From e4c77578df7e6fba5861072815a81c06258abce7 Mon Sep 17 00:00:00 2001 From: yitam Date: Tue, 9 May 2017 13:22:26 -0700 Subject: [PATCH 17/26] new MSODBCSQL_PATH --- appveyor.yml | 50 +++++++++++++++++++++++++++----------------------- 1 file changed, 27 insertions(+), 23 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index b8604587..6d33f6a6 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -19,16 +19,7 @@ environment: PHP_SDK: c:\projects\php matrix: - BUILD_PLATFORM: x64 - TEST_PHP_SQL_SERVER: (local)\SQL2016 - SQL_INSTANCE: SQL2016 - PHP_VC: 14 - PHP_MAJOR_VER: 7.1 - PHP_MINOR_VER: latest - PHP_SDK_DIR: c:\projects\php\x64 - PHP_INSTALL_DIR: c:\projects\php\x64\bin - platform: x64 - - BUILD_PLATFORM: x64 - TEST_PHP_SQL_SERVER: (local)\SQL2012SP1 + MSSQL_SERVERNAME: (local)\SQL2012SP1 SQL_INSTANCE: SQL2012SP1 PHP_VC: 14 PHP_MAJOR_VER: 7.0 @@ -37,8 +28,29 @@ environment: PHP_INSTALL_DIR: c:\projects\php\x64\bin PHP_ZTS: --disable-zts platform: x64 + MSODBCSQL_PATH: c:\projects\msodbcsql64.msi - BUILD_PLATFORM: x86 - TEST_PHP_SQL_SERVER: (local)\SQL2008R2SP2 + MSSQL_SERVERNAME: (local)\SQL2014 + SQL_INSTANCE: SQL2014 + PHP_VC: 14 + PHP_MAJOR_VER: 7.0 + PHP_MINOR_VER: latest + PHP_SDK_DIR: c:\projects\php\x86 + PHP_INSTALL_DIR: c:\projects\php\x86\bin + platform: x86 + MSODBCSQL_PATH: c:\projects\msodbcsql32.msi + - BUILD_PLATFORM: x64 + MSSQL_SERVERNAME: (local)\SQL2016 + SQL_INSTANCE: SQL2016 + PHP_VC: 14 + PHP_MAJOR_VER: 7.1 + PHP_MINOR_VER: latest + PHP_SDK_DIR: c:\projects\php\x64 + PHP_INSTALL_DIR: c:\projects\php\x64\bin + platform: x64 + MSODBCSQL_PATH: c:\projects\msodbcsql64.msi + - BUILD_PLATFORM: x86 + MSSQL_SERVERNAME: (local)\SQL2008R2SP2 SQL_INSTANCE: SQL2008R2SP2 PHP_VC: 14 PHP_MAJOR_VER: 7.1 @@ -47,15 +59,7 @@ environment: PHP_INSTALL_DIR: c:\projects\php\x86\bin PHP_ZTS: --disable-zts platform: x86 - - BUILD_PLATFORM: x86 - TEST_PHP_SQL_SERVER: (local)\SQL2014 - SQL_INSTANCE: SQL2014 - PHP_VC: 14 - PHP_MAJOR_VER: 7.0 - PHP_MINOR_VER: latest - PHP_SDK_DIR: c:\projects\php\x86 - PHP_INSTALL_DIR: c:\projects\php\x86\bin - platform: x86 + MSODBCSQL_PATH: c:\projects\msodbcsql32.msi # PHP_MAJOR_VER is PHP major version to build (7.0, 7.1) @@ -117,11 +121,11 @@ install: - echo Downloading MSODBCSQL 13.1 - ps: >- If ($env:BUILD_PLATFORM -Match "x64") { - (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/x64/msodbcsql.msi', 'c:\projects\msodbcsql.msi') + (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/x64/msodbcsql.msi', ${env:MSODBCSQL_PATH}) } Else { - (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/x86/msodbcsql.msi', 'c:\projects\msodbcsql.msi') + (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/x86/msodbcsql.msi', ${env:MSODBCSQL_PATH}) } - - cmd /c start /wait msiexec /i "c:\projects\msodbcsql.msi" /q + - cmd /c start /wait msiexec /i ${env:MSODBCSQL_PATH} /q - echo Checking the version of MSODBCSQL - reg query "HKLM\SOFTWARE\ODBC\odbcinst.ini\ODBC Driver 13 for SQL Server" - dir C:\Windows\System32\msodbcsql13.dll From 8fd531744c8b4bf4905f51321356233ab5879c89 Mon Sep 17 00:00:00 2001 From: yitam Date: Tue, 9 May 2017 13:35:28 -0700 Subject: [PATCH 18/26] env var MSODBCSQL_PATH --- appveyor.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 6d33f6a6..6f6c934b 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -121,11 +121,11 @@ install: - echo Downloading MSODBCSQL 13.1 - ps: >- If ($env:BUILD_PLATFORM -Match "x64") { - (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/x64/msodbcsql.msi', ${env:MSODBCSQL_PATH}) + (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/x64/msodbcsql.msi', '%MSODBCSQL_PATH%') } Else { - (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/x86/msodbcsql.msi', ${env:MSODBCSQL_PATH}) + (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/x86/msodbcsql.msi', '%MSODBCSQL_PATH%') } - - cmd /c start /wait msiexec /i ${env:MSODBCSQL_PATH} /q + - cmd /c start /wait msiexec /i "%MSODBCSQL_PATH%" /q - echo Checking the version of MSODBCSQL - reg query "HKLM\SOFTWARE\ODBC\odbcinst.ini\ODBC Driver 13 for SQL Server" - dir C:\Windows\System32\msodbcsql13.dll From 765a0d1e1706c588327dc28e0608da42d21ce169 Mon Sep 17 00:00:00 2001 From: yitam Date: Tue, 9 May 2017 13:54:55 -0700 Subject: [PATCH 19/26] drop MSODBCSQL_PATH --- appveyor.yml | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 6f6c934b..8dddd662 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -28,7 +28,6 @@ environment: PHP_INSTALL_DIR: c:\projects\php\x64\bin PHP_ZTS: --disable-zts platform: x64 - MSODBCSQL_PATH: c:\projects\msodbcsql64.msi - BUILD_PLATFORM: x86 MSSQL_SERVERNAME: (local)\SQL2014 SQL_INSTANCE: SQL2014 @@ -38,7 +37,6 @@ environment: PHP_SDK_DIR: c:\projects\php\x86 PHP_INSTALL_DIR: c:\projects\php\x86\bin platform: x86 - MSODBCSQL_PATH: c:\projects\msodbcsql32.msi - BUILD_PLATFORM: x64 MSSQL_SERVERNAME: (local)\SQL2016 SQL_INSTANCE: SQL2016 @@ -48,7 +46,6 @@ environment: PHP_SDK_DIR: c:\projects\php\x64 PHP_INSTALL_DIR: c:\projects\php\x64\bin platform: x64 - MSODBCSQL_PATH: c:\projects\msodbcsql64.msi - BUILD_PLATFORM: x86 MSSQL_SERVERNAME: (local)\SQL2008R2SP2 SQL_INSTANCE: SQL2008R2SP2 @@ -59,7 +56,6 @@ environment: PHP_INSTALL_DIR: c:\projects\php\x86\bin PHP_ZTS: --disable-zts platform: x86 - MSODBCSQL_PATH: c:\projects\msodbcsql32.msi # PHP_MAJOR_VER is PHP major version to build (7.0, 7.1) @@ -121,11 +117,11 @@ install: - echo Downloading MSODBCSQL 13.1 - ps: >- If ($env:BUILD_PLATFORM -Match "x64") { - (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/x64/msodbcsql.msi', '%MSODBCSQL_PATH%') + (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/x64/msodbcsql.msi', 'c:\projects\msodbcsql.msi') } Else { - (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/x86/msodbcsql.msi', '%MSODBCSQL_PATH%') + (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/x86/msodbcsql.msi', 'c:\projects\msodbcsql.msi') } - - cmd /c start /wait msiexec /i "%MSODBCSQL_PATH%" /q + - cmd /c start /wait msiexec /i "c:\projects\msodbcsql.msi" /q - echo Checking the version of MSODBCSQL - reg query "HKLM\SOFTWARE\ODBC\odbcinst.ini\ODBC Driver 13 for SQL Server" - dir C:\Windows\System32\msodbcsql13.dll From 1fb88d1f954c30da5b1ecafd50e694a536b76ace Mon Sep 17 00:00:00 2001 From: yitam Date: Tue, 9 May 2017 14:02:10 -0700 Subject: [PATCH 20/26] fixed env matrix --- appveyor.yml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 8dddd662..adf0ec6c 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -19,7 +19,7 @@ environment: PHP_SDK: c:\projects\php matrix: - BUILD_PLATFORM: x64 - MSSQL_SERVERNAME: (local)\SQL2012SP1 + TEST_PHP_SQL_SERVER: (local)\SQL2012SP1 SQL_INSTANCE: SQL2012SP1 PHP_VC: 14 PHP_MAJOR_VER: 7.0 @@ -29,7 +29,7 @@ environment: PHP_ZTS: --disable-zts platform: x64 - BUILD_PLATFORM: x86 - MSSQL_SERVERNAME: (local)\SQL2014 + TEST_PHP_SQL_SERVER: (local)\SQL2014 SQL_INSTANCE: SQL2014 PHP_VC: 14 PHP_MAJOR_VER: 7.0 @@ -38,7 +38,7 @@ environment: PHP_INSTALL_DIR: c:\projects\php\x86\bin platform: x86 - BUILD_PLATFORM: x64 - MSSQL_SERVERNAME: (local)\SQL2016 + TEST_PHP_SQL_SERVER: (local)\SQL2016 SQL_INSTANCE: SQL2016 PHP_VC: 14 PHP_MAJOR_VER: 7.1 @@ -47,7 +47,7 @@ environment: PHP_INSTALL_DIR: c:\projects\php\x64\bin platform: x64 - BUILD_PLATFORM: x86 - MSSQL_SERVERNAME: (local)\SQL2008R2SP2 + TEST_PHP_SQL_SERVER: (local)\SQL2008R2SP2 SQL_INSTANCE: SQL2008R2SP2 PHP_VC: 14 PHP_MAJOR_VER: 7.1 @@ -56,7 +56,6 @@ environment: PHP_INSTALL_DIR: c:\projects\php\x86\bin PHP_ZTS: --disable-zts platform: x86 - # PHP_MAJOR_VER is PHP major version to build (7.0, 7.1) # PHP_MINOR_VER is PHP point release number (or latest for latest release) From 5722ee654c688e7c34023f2d3639f17d669ae8cd Mon Sep 17 00:00:00 2001 From: yitam Date: Tue, 9 May 2017 14:37:38 -0700 Subject: [PATCH 21/26] only 64bit msodbcsql.msi --- appveyor.yml | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index adf0ec6c..314d0574 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -114,12 +114,7 @@ install: #- echo Downloading PHP deps [%PHP_DEPSVER%] #- ps: (new-object net.webclient).DownloadFile('http://windows.php.net/downloads/php-sdk/deps-' + ${env:PHP_DEPSVER} + '-vc' + ${env:PHP_VC} + '-' + ${env:BUILD_PLATFORM} + '.7z', ${env:APPVEYOR_BUILD_FOLDER} + '\..\deps.7z') - echo Downloading MSODBCSQL 13.1 - - ps: >- - If ($env:BUILD_PLATFORM -Match "x64") { - (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/x64/msodbcsql.msi', 'c:\projects\msodbcsql.msi') - } Else { - (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/x86/msodbcsql.msi', 'c:\projects\msodbcsql.msi') - } + - ps: (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/x64/msodbcsql.msi', 'c:\projects\msodbcsql.msi') - cmd /c start /wait msiexec /i "c:\projects\msodbcsql.msi" /q - echo Checking the version of MSODBCSQL - reg query "HKLM\SOFTWARE\ODBC\odbcinst.ini\ODBC Driver 13 for SQL Server" From 707bd41428d4ea66c414e184c3a759a77314dd91 Mon Sep 17 00:00:00 2001 From: yitam Date: Tue, 9 May 2017 15:03:17 -0700 Subject: [PATCH 22/26] fixed the sqlsrv test --- appveyor.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index 314d0574..eb4e8ff2 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -167,10 +167,10 @@ test_script: - python %APPVEYOR_BUILD_FOLDER%\test\setup\setup_dbs.py -dbname %SQLSRV_DBNAME% - Echo setup test database for PDO_SQLSRV tests - %PDOSQLSRV_DBNAME% - python %APPVEYOR_BUILD_FOLDER%\test\setup\setup_dbs.py -dbname %PDOSQLSRV_DBNAME% - - php run-tests.php -p php.exe %APPVEYOR_BUILD_FOLDER%\test\pdo_sqlsrv\*.phpt > %APPVEYOR_BUILD_FOLDER%\test\pdo_sqlsrv.log 2>&1 - - type %APPVEYOR_BUILD_FOLDER%\test\pdo_sqlsrv.log - php run-tests.php -p php.exe %APPVEYOR_BUILD_FOLDER%\test\sqlsrv\*.phpt > %APPVEYOR_BUILD_FOLDER%\test\sqlsrv.log 2>&1 - type %APPVEYOR_BUILD_FOLDER%\test\sqlsrv.log + - php run-tests.php -p php.exe %APPVEYOR_BUILD_FOLDER%\test\pdo_sqlsrv\*.phpt > %APPVEYOR_BUILD_FOLDER%\test\pdo_sqlsrv.log 2>&1 + - type %APPVEYOR_BUILD_FOLDER%\test\pdo_sqlsrv.log - python %APPVEYOR_BUILD_FOLDER%\test\setup\cleanup_dbs.py -dbname %SQLSRV_DBNAME% - python %APPVEYOR_BUILD_FOLDER%\test\setup\cleanup_dbs.py -dbname %PDOSQLSRV_DBNAME% From 8112a8458c7873b7669efd8afbd26ac8a83f3c90 Mon Sep 17 00:00:00 2001 From: yitam Date: Wed, 10 May 2017 08:35:40 -0700 Subject: [PATCH 23/26] modified tests to read cd_info --- .../pdo_azure_ad_authentication.phpt | 20 ++-- .../sqlsrv_azure_ad_authentication.phpt | 96 ++++++++----------- 2 files changed, 48 insertions(+), 68 deletions(-) diff --git a/test/pdo_sqlsrv/pdo_azure_ad_authentication.phpt b/test/pdo_sqlsrv/pdo_azure_ad_authentication.phpt index ad96d50e..c3ba3bf3 100644 --- a/test/pdo_sqlsrv/pdo_azure_ad_authentication.phpt +++ b/test/pdo_sqlsrv/pdo_azure_ad_authentication.phpt @@ -4,13 +4,13 @@ Test the Authentication keyword with options SqlPassword and ActiveDirectoryInte --FILE-- query( "SELECT name FROM master.dbo.sysdatabases" ); +$stmt = $conn->query( "SELECT count(*) FROM cd_info" ); if ( $stmt === false ) { echo "Query failed.\n"; } else { - $first_db = $stmt->fetch(); - var_dump( $first_db ); + $result = $stmt->fetch(); + var_dump( $result ); } $conn = null; @@ -39,7 +39,7 @@ $connectionInfo = "Authentication = ActiveDirectoryIntegrated; TrustServerCertif try { - $conn = new PDO( "sqlsrv:server = $serverName ; $connectionInfo" ); + $conn = new PDO( "sqlsrv:server = $server ; $connectionInfo" ); echo "Connected successfully with Authentication=ActiveDirectoryIntegrated.\n"; $conn = null; } @@ -54,10 +54,10 @@ catch( PDOException $e ) --EXPECT-- Connected successfully with Authentication=SqlPassword. array(2) { - ["name"]=> - string(6) "master" + [""]=> + string(1) "7" [0]=> - string(6) "master" + string(1) "7" } Could not connect with Authentication=ActiveDirectoryIntegrated. SQLSTATE[IMSSP]: Invalid option for the Authentication keyword. Only SqlPassword or ActiveDirectoryPassword is supported. \ No newline at end of file diff --git a/test/sqlsrv/sqlsrv_azure_ad_authentication.phpt b/test/sqlsrv/sqlsrv_azure_ad_authentication.phpt index c0593771..a7da7483 100644 --- a/test/sqlsrv/sqlsrv_azure_ad_authentication.phpt +++ b/test/sqlsrv/sqlsrv_azure_ad_authentication.phpt @@ -4,70 +4,47 @@ Test the Authentication keyword with options SqlPassword and ActiveDirectoryInte --FILE-- $username, "PWD"=>$password ); +require_once("MsSetup.inc"); -$conn = sqlsrv_connect( $serverName, $connectionInfo ); +$connectionInfo = array( "Database"=>$databaseName, "UID"=>$uid, "PWD"=>$pwd, + "Authentication"=>'SqlPassword', "TrustServerCertificate"=>true); + +$conn = sqlsrv_connect( $server, $connectionInfo ); if( $conn === false ) { - echo "Could not connect.\n"; - print_r( sqlsrv_errors() ); + echo "Could not connect with Authentication=SqlPassword.\n"; + var_dump( sqlsrv_errors() ); } - -$connectionInfo = array( "UID"=>$username, "PWD"=>$password, - "TrustServerCertificate"=>true ); - -$conn = sqlsrv_connect( $serverName, $connectionInfo ); - -if( $conn === false ) +else { - echo "Could not connect with TrustServerCertificate.\n"; - print_r( sqlsrv_errors() ); + echo "Connected successfully with Authentication=SqlPassword.\n"; } -*/ -//if (strtoupper(substr(PHP_OS, 0, 3)) != 'WIN') + +$stmt = sqlsrv_query( $conn, "SELECT count(*) FROM cd_info" ); +if ( $stmt === false ) { - $connectionInfo = array( "Database"=>"master", "UID"=>$username, "PWD"=>$password, - "Authentication"=>"SqlPassword", "TrustServerCertificate"=>true ); - - $conn = sqlsrv_connect( $serverName, $connectionInfo ); - - if( $conn === false ) - { - echo "Could not connect with Authentication=SqlPassword.\n"; - var_dump( sqlsrv_errors() ); - } - // else - // { - // echo "Connected successfully with Authentication=SqlPassword.\n"; - // } - - $stmt = sqlsrv_query( $conn, "SELECT name FROM master.dbo.sysdatabases" ); - if ( $stmt === false ) - { - echo "Query failed.\n"; - } - // else - // { - // $first_db = sqlsrv_fetch_array( $stmt ); - // var_dump( $first_db ); - // } - - sqlsrv_free_stmt( $stmt ); - sqlsrv_close( $conn ); + echo "Query failed.\n"; } +else +{ + $first_db = sqlsrv_fetch_array( $stmt ); + var_dump( $first_db ); +} + +sqlsrv_free_stmt( $stmt ); +sqlsrv_close( $conn ); //////////////////////////////////////// $connectionInfo = array( "Authentication"=>"ActiveDirectoryIntegrated", "TrustServerCertificate"=>true ); -$conn = sqlsrv_connect( $serverName, $connectionInfo ); +$conn = sqlsrv_connect( $server, $connectionInfo ); if( $conn === false ) { echo "Could not connect with Authentication=ActiveDirectoryIntegrated.\n"; - print_r( sqlsrv_errors() ); + $errors = sqlsrv_errors(); + print_r($errors[0]); } else { @@ -77,17 +54,20 @@ else ?> --EXPECT-- +Connected successfully with Authentication=SqlPassword. +array(2) { + [0]=> + int(7) + [""]=> + int(7) +} Could not connect with Authentication=ActiveDirectoryIntegrated. Array ( - [0] => Array - ( - [0] => IMSSP - [SQLSTATE] => IMSSP - [1] => -62 - [code] => -62 - [2] => Invalid option for the Authentication keyword. Only SqlPassword or ActiveDirectoryPassword is supported. - [message] => Invalid option for the Authentication keyword. Only SqlPassword or ActiveDirectoryPassword is supported. - ) - -) + [0] => IMSSP + [SQLSTATE] => IMSSP + [1] => -62 + [code] => -62 + [2] => Invalid option for the Authentication keyword. Only SqlPassword or ActiveDirectoryPassword is supported. + [message] => Invalid option for the Authentication keyword. Only SqlPassword or ActiveDirectoryPassword is supported. +) \ No newline at end of file From 8fba5389173ac9a34e263350d1b6c1a34ef0d8c3 Mon Sep 17 00:00:00 2001 From: yitam Date: Wed, 10 May 2017 08:47:42 -0700 Subject: [PATCH 24/26] wrapping up --- appveyor.yml | 3 +-- test/sqlsrv/sqlsrv_azure_ad_authentication.phpt | 4 ++-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/appveyor.yml b/appveyor.yml index eb4e8ff2..77a06f4e 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -111,9 +111,8 @@ install: - move php-sdk-binary-tools-20110915.zip .. - echo Downloading PHP source code [%PHP_VERSION%] - ps: (new-object net.webclient).DownloadFile('http://windows.php.net/downloads/releases/php-' + ${env:PHP_VERSION} + '-src.zip', ${env:APPVEYOR_BUILD_FOLDER} + '\..\php.zip') - #- echo Downloading PHP deps [%PHP_DEPSVER%] - #- ps: (new-object net.webclient).DownloadFile('http://windows.php.net/downloads/php-sdk/deps-' + ${env:PHP_DEPSVER} + '-vc' + ${env:PHP_VC} + '-' + ${env:BUILD_PLATFORM} + '.7z', ${env:APPVEYOR_BUILD_FOLDER} + '\..\deps.7z') - echo Downloading MSODBCSQL 13.1 + # AppVeyor build works are x64 VMs and 32-bit ODBC driver cannot be installed on it - ps: (new-object net.webclient).DownloadFile('https://download.microsoft.com/download/D/5/E/D5EEF288-A277-45C8-855B-8E2CB7E25B96/x64/msodbcsql.msi', 'c:\projects\msodbcsql.msi') - cmd /c start /wait msiexec /i "c:\projects\msodbcsql.msi" /q - echo Checking the version of MSODBCSQL diff --git a/test/sqlsrv/sqlsrv_azure_ad_authentication.phpt b/test/sqlsrv/sqlsrv_azure_ad_authentication.phpt index a7da7483..df11faf1 100644 --- a/test/sqlsrv/sqlsrv_azure_ad_authentication.phpt +++ b/test/sqlsrv/sqlsrv_azure_ad_authentication.phpt @@ -28,8 +28,8 @@ if ( $stmt === false ) } else { - $first_db = sqlsrv_fetch_array( $stmt ); - var_dump( $first_db ); + $result = sqlsrv_fetch_array( $stmt ); + var_dump( $result ); } sqlsrv_free_stmt( $stmt ); From 7a641cbfd640b21590a522581950fa6f00928ccd Mon Sep 17 00:00:00 2001 From: Andrea Lam Date: Wed, 10 May 2017 12:44:40 -0700 Subject: [PATCH 25/26] Update README.md --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index bc834682..72395212 100644 --- a/README.md +++ b/README.md @@ -29,9 +29,9 @@ Thank you for taking time to take our February survey. Let us know how we are do ## Get Started -* [**Ubuntu + SQL Server + PHP 7**](https://www.microsoft.com/en-us/sql-server/developer-get-started/php-ubuntu) -* [**RedHat + SQL Server + PHP 7**](https://www.microsoft.com/en-us/sql-server/developer-get-started/php-rhel) -* [**Windows + SQL Server + PHP 7**](https://www.microsoft.com/en-us/sql-server/developer-get-started/php-windows) +* [**Ubuntu + SQL Server + PHP 7**](https://www.microsoft.com/en-us/sql-server/developer-get-started/php/ubuntu) +* [**RedHat + SQL Server + PHP 7**](https://www.microsoft.com/en-us/sql-server/developer-get-started/php/rhel) +* [**Windows + SQL Server + PHP 7**](https://www.microsoft.com/en-us/sql-server/developer-get-started/php/windows) * [**Docker**](https://hub.docker.com/r/lbosqmsft/mssql-php-msphpsql/) From 9cdefd3fe336b420579416cd7ea83598141062ab Mon Sep 17 00:00:00 2001 From: ulvii Date: Wed, 10 May 2017 13:04:16 -0700 Subject: [PATCH 26/26] Adding PECL_REPACKAGE macro (#392) Merging this with unpassed checks. The checks are failing because they are using wrong setup file. Will be fixed by #386 --- source/shared/version.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/source/shared/version.h b/source/shared/version.h index 6d748030..51588a81 100644 --- a/source/shared/version.h +++ b/source/shared/version.h @@ -45,7 +45,8 @@ #define _FILEVERSION SQLVERSION_MAJOR,SQLVERSION_MINOR,SQLVERSION_PATCH,SQLVERSION_BUILD // PECL package version macros (can't have '-' or '+') -#define PHP_SQLSRV_VERSION VER_APIVERSION_STR SEMVER_PRERELEASE +#define PECL_REPACKAGE ".1" +#define PHP_SQLSRV_VERSION VER_APIVERSION_STR SEMVER_PRERELEASE PECL_REPACKAGE #define PHP_PDO_SQLSRV_VERSION PHP_SQLSRV_VERSION #endif // VERSION_H