2020-07-26 17:18:19 +07:00
|
|
|
# Function to install blackfire extension.
|
|
|
|
Function Add-Blackfire() {
|
|
|
|
Param (
|
2020-02-27 15:19:30 +07:00
|
|
|
[Parameter(Position = 0, Mandatory = $true)]
|
|
|
|
[ValidateNotNull()]
|
|
|
|
[string]
|
2020-05-07 18:44:15 +07:00
|
|
|
$extension
|
2020-07-26 17:18:19 +07:00
|
|
|
)
|
|
|
|
try {
|
|
|
|
$no_dot_version = $version.replace('.', '')
|
|
|
|
$extension_version = $extension.split('-')[1]
|
|
|
|
if ($extension_version -notmatch "\S") {
|
2021-04-21 08:55:57 +07:00
|
|
|
if($version -lt '7.0') {
|
|
|
|
$extension_version = '1.50.0'
|
|
|
|
} else {
|
|
|
|
$extension_version = (Invoke-RestMethod https://blackfire.io/api/v1/releases).probe.php
|
|
|
|
}
|
2020-07-26 17:18:19 +07:00
|
|
|
}
|
|
|
|
if (Test-Path $ext_dir\blackfire.dll) {
|
|
|
|
Enable-PhpExtension -Extension blackfire -Path $php_dir
|
|
|
|
$status="Enabled"
|
|
|
|
} else {
|
|
|
|
$nts = if (!$installed.ThreadSafe) { "_nts" } else { "" }
|
2020-11-11 03:53:45 +07:00
|
|
|
Invoke-WebRequest -Uri "https://packages.blackfire.io/binaries/blackfire-php/${extension_version}/blackfire-php-windows_${arch}-php-${no_dot_version}${nts}.dll" -OutFile $ext_dir\blackfire.dll > $null 2>&1
|
2020-07-26 17:18:19 +07:00
|
|
|
Enable-PhpExtension -Extension blackfire -Path $php_dir
|
|
|
|
$status="Installed and enabled"
|
|
|
|
}
|
|
|
|
Add-Log $tick $extension $status
|
|
|
|
} catch {
|
|
|
|
Add-Log $cross $extension "Could not install $extension on PHP $($installed.FullVersion)"
|
|
|
|
}
|
2020-02-27 18:55:54 +07:00
|
|
|
}
|