From d3e74a5d7d72059b07f6da019baa669c5f782388 Mon Sep 17 00:00:00 2001 From: V-Zabayrachny <79155496+V-Zabayrachny@users.noreply.github.com> Date: Tue, 16 Nov 2021 11:32:09 +0300 Subject: [PATCH] [Windows] Add PHP to the toolset (#4493) --- images/win/scripts/Installers/Install-PHP.ps1 | 4 +++- images/win/scripts/Tests/PHP.Tests.ps1 | 15 +++++++++------ images/win/toolsets/toolset-2016.json | 3 +++ images/win/toolsets/toolset-2019.json | 3 +++ images/win/toolsets/toolset-2022.json | 3 +++ 5 files changed, 21 insertions(+), 7 deletions(-) diff --git a/images/win/scripts/Installers/Install-PHP.ps1 b/images/win/scripts/Installers/Install-PHP.ps1 index cbd73d5db..40b1bcc08 100644 --- a/images/win/scripts/Installers/Install-PHP.ps1 +++ b/images/win/scripts/Installers/Install-PHP.ps1 @@ -5,7 +5,9 @@ # Install latest PHP in chocolatey $installDir = "c:\tools\php" -Choco-Install -PackageName php -ArgumentList "--force", "--params", "/InstallDir:$installDir" +$phpMajorMinor = (Get-ToolsetContent).php.version +$phpVersionToInstall = Get-LatestChocoPackageVersion -TargetVersion $phpMajorMinor -PackageName "php" +Choco-Install -PackageName php -ArgumentList "--params", "/InstallDir:$installDir", "--version=$phpVersionToInstall" # Install latest Composer in chocolatey Choco-Install -PackageName composer -ArgumentList "--ia", "/DEV=$installDir /PHP=$installDir" diff --git a/images/win/scripts/Tests/PHP.Tests.ps1 b/images/win/scripts/Tests/PHP.Tests.ps1 index 74469d9a1..0e1013315 100644 --- a/images/win/scripts/Tests/PHP.Tests.ps1 +++ b/images/win/scripts/Tests/PHP.Tests.ps1 @@ -1,13 +1,16 @@ Describe "PHP" { - It "Check in the PATH" -TestCases @( - @{ ToolName = "php" } - @{ ToolName = "composer" } - ) { - "$ToolName --version" | Should -ReturnZeroExitCode + It "Check PHP version" { + $phpMajorMinor = (Get-ToolsetContent).php.version + $phpInstalledVersion = php --version | Select-String -Pattern "PHP $phpMajorMinor" + $phpInstalledVersion | Should -BeLike "*${phpMajorMinor}*" + } + + It "Check Composer in the PATH" { + "composer --version" | Should -ReturnZeroExitCode } It "PHP Environment variables is set." { ${env:PHPROOT} | Should -Not -BeNullOrEmpty ${env:PHPROOT} | Should -Exist } -} \ No newline at end of file +} diff --git a/images/win/toolsets/toolset-2016.json b/images/win/toolsets/toolset-2016.json index 118fd6c3f..9cce92d0c 100644 --- a/images/win/toolsets/toolset-2016.json +++ b/images/win/toolsets/toolset-2016.json @@ -427,6 +427,9 @@ "mongodb": { "version": "5.0" }, + "php": { + "version": "8.0" + }, "llvm": { "version": "13" } diff --git a/images/win/toolsets/toolset-2019.json b/images/win/toolsets/toolset-2019.json index 7ddacfbec..1670e9860 100644 --- a/images/win/toolsets/toolset-2019.json +++ b/images/win/toolsets/toolset-2019.json @@ -459,6 +459,9 @@ "mongodb": { "version": "5.0" }, + "php": { + "version": "8.0" + }, "llvm": { "version": "13" } diff --git a/images/win/toolsets/toolset-2022.json b/images/win/toolsets/toolset-2022.json index 94c509750..796fcfdbe 100644 --- a/images/win/toolsets/toolset-2022.json +++ b/images/win/toolsets/toolset-2022.json @@ -310,5 +310,8 @@ }, "mongodb": { "version": "5.0" + }, + "php": { + "version": "8.0" } }