| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 |
- build: false
- platform: 'x64'
- clone_folder: c:\projects\cakephp
- cache:
- - '%LOCALAPPDATA%\Composer\files -> composer.lock'
- - composer.phar
- - C:\ProgramData\chocolatey\bin -> .appveyor.yml
- - C:\ProgramData\chocolatey\lib -> .appveyor.yml
- - C:\php -> .appveyor.yml
- branches:
- only:
- - master
- - 3.next
- - 4.x
- environment:
- global:
- PHP: "C:/PHP"
- php_ver_target: 7.2
- matrix:
- - db: 2012
- db_dsn: 'sqlserver://sa:Password12!@.\SQL2012SP1/cakephp?MultipleActiveResultSets=false'
- services:
- - mssql2012sp1
- init:
- - SET PATH=C:\Program Files\OpenSSL;C:\php;%PATH%
- - SET COMPOSER_NO_INTERACTION=1
- - SET PHP=1 # This var is connected to PHP install cache
- - SET ANSICON=121x90 (121x90)
- install:
- - IF EXIST C:\php (SET PHP=0)
- - ps: appveyor-retry cinst --params '""/InstallDir:C:\php""' --ignore-checksums -y php --version ((choco search php --exact --all-versions -r | select-string -pattern $env:php_ver_target | sort { [version]($_ -split '\|' | select -last 1) } -Descending | Select-Object -first 1) -replace '[php|]','')
- - cd C:\php
- - IF %PHP%==1 copy php.ini-production php.ini /Y
- - IF %PHP%==1 echo date.timezone="UTC" >> php.ini
- - IF %PHP%==1 echo extension_dir=ext >> php.ini
- - IF %PHP%==1 echo extension=php_openssl.dll >> php.ini
- - IF %PHP%==1 echo extension=php_mbstring.dll >> php.ini
- - IF %PHP%==1 echo extension=php_intl.dll >> php.ini
- - IF %PHP%==1 echo extension=php_fileinfo.dll >> php.ini
- - IF %PHP%==1 curl -fsS https://windows.php.net/downloads/pecl/releases/pdo_sqlsrv/5.2.0/php_pdo_sqlsrv-5.2.0-7.2-nts-vc15-x64.zip -o pdosqlsrv.zip
- - IF %PHP%==1 7z x pdosqlsrv.zip -oC:\php\ext php_pdo_sqlsrv.dll > nul
- - IF %PHP%==1 curl -fsS https://windows.php.net/downloads/pecl/releases/sqlsrv/5.2.0/php_sqlsrv-5.2.0-7.2-nts-vc15-x64.zip -o sqlsrv.zip
- - IF %PHP%==1 7z x sqlsrv.zip -oC:\php\ext php_sqlsrv.dll > nul
- - IF %PHP%==1 echo extension=php_pdo_sqlsrv.dll >> php.ini
- - IF %PHP%==1 echo extension=php_sqlsrv.dll >> php.ini
- - IF %PHP%==1 curl -fsS https://windows.php.net/downloads/pecl/releases/wincache/2.0.0.8/php_wincache-2.0.0.8-7.2-nts-vc15-x64.zip -o wincache.zip
- - IF %PHP%==1 7z x wincache.zip -oC:\php\ext php_wincache.dll > nul
- - IF %PHP%==1 echo extension=php_wincache.dll >> php.ini
- - IF %PHP%==1 echo wincache.enablecli = 1 >> php.ini
- - IF %PHP%==1 echo @php %%~dp0composer.phar %%* > composer.bat
- - appveyor-retry appveyor DownloadFile https://getcomposer.org/composer.phar
- - cd C:\projects\cakephp
- - appveyor-retry composer install --no-progress
- - php -i | grep "ICU version"
- before_test:
- # This script solves the "Database 'model' is being recovered. Waiting until recovery is finished."
- # This solution comes from https://gist.github.com/jonathanhickford/1cb0d6665adab8b9c664
- # and is follow by http://help.appveyor.com/discussions/suggestions/264-database-mssqlsystemresource-is-being-recovered-waiting-for-sql-server-to-start
- - ps: >-
- $tries = 5;
- $pause = 10; # Seconds to wait between tries
- While ($tries -gt 0) {
- try {
- $ServerConnectionString = "Data Source=(local)\SQL2012SP1;Initial Catalog=master;User Id=sa;PWD=Password12!";
- $ServerConnection = new-object system.data.SqlClient.SqlConnection($ServerConnectionString);
- $query = "exec sp_configure 'clr enabled', 1;`n"
- $query = $query + "RECONFIGURE;`n"
- $cmd = new-object system.data.sqlclient.sqlcommand($query, $ServerConnection);
- $ServerConnection.Open();
- "Running:"
- $query
- if ($cmd.ExecuteNonQuery() -ne -1) {
- "SQL Error";
- } else {
- "Success"
- }
- $ServerConnection.Close();
- $tries = 0;
- } catch {
- "Error:"
- $_.Exception.Message
- "Retry in $pause seconds. Attempts left: $tries";
- Start-Sleep -s $pause;
- }
- $tries = $tries -1;
- }
- test_script:
- - sqlcmd -S ".\SQL2012SP1" -U sa -P Password12! -Q "create database cakephp;"
- - cd C:\projects\cakephp
- - vendor\bin\phpunit.bat
|