mirror of
https://github.com/shivammathur/setup-php.git
synced 2025-11-02 08:05:49 +07:00
More fixes in fetching tool versions
This commit is contained in:
@ -300,7 +300,7 @@ add_composertool() {
|
||||
|
||||
# Function to get PHP version in semver format.
|
||||
php_semver() {
|
||||
php"$version" -v | grep -Eo -m 1 "[0-9]+\.[0-9]+\.[0-9]+" | head -n 1
|
||||
php -v | grep -Eo -m 1 "[0-9]+\.[0-9]+\.[0-9]+(-[a-zA-Z]+([0-9]+)?)?" | head -n 1
|
||||
}
|
||||
|
||||
# Function to get the tag for a php version.
|
||||
|
||||
@ -188,6 +188,13 @@ add_php() {
|
||||
brew link --force --overwrite "$php_formula"
|
||||
}
|
||||
|
||||
# Function to get extra version.
|
||||
php_extra_version() {
|
||||
if [[ ${version:?} =~ ${nightly_versions:?} ]]; then
|
||||
echo " ($(brew cat "$php_formula" | grep -Eo "commit=[0-9a-zA-Z]+" | cut -d'=' -f 2))"
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to Setup PHP.
|
||||
setup_php() {
|
||||
step_log "Setup PHP"
|
||||
@ -211,13 +218,16 @@ setup_php() {
|
||||
ext_dir=$(php -i | grep -Ei "extension_dir => /" | sed -e "s|.*=> s*||")
|
||||
scan_dir=$(php --ini | grep additional | sed -e "s|.*: s*||")
|
||||
sudo mkdir -m 777 -p "$ext_dir" "$HOME/.composer"
|
||||
semver=$(php -v | head -n 1 | cut -f 2 -d ' ')
|
||||
semver=$(php_semver)
|
||||
extra_version=$(php_extra_version)
|
||||
if [ "${semver%.*}" != "$version" ]; then
|
||||
add_log "$cross" "PHP" "Could not setup PHP $version"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
sudo cp "$dist"/../src/configs/*.json "$RUNNER_TOOL_CACHE/"
|
||||
add_log "$tick" "PHP" "$status PHP $semver"
|
||||
echo "::set-output name=php-version::$semver"
|
||||
add_log "$tick" "PHP" "$status PHP $semver$extra_version"
|
||||
}
|
||||
|
||||
# Variables
|
||||
|
||||
@ -144,7 +144,6 @@ add_devtools() {
|
||||
# Function to setup the nightly build from shivammathur/php-builder
|
||||
setup_nightly() {
|
||||
run_script "php-builder" "$runner" "$version"
|
||||
extra_version="-dev ($(cat "/etc/php/$version/COMMIT"))"
|
||||
}
|
||||
|
||||
# Function to setup PHP 5.3, PHP 5.4 and PHP 5.5.
|
||||
@ -220,6 +219,13 @@ link_pecl_file() {
|
||||
done
|
||||
}
|
||||
|
||||
# Function to get extra version.
|
||||
php_extra_version() {
|
||||
if [[ ${version:?} =~ ${nightly_versions:?} ]]; then
|
||||
echo " ($(cat "/etc/php/$version/COMMIT"))"
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to Setup PHP
|
||||
setup_php() {
|
||||
step_log "Setup PHP"
|
||||
@ -249,6 +255,7 @@ setup_php() {
|
||||
exit 1
|
||||
fi
|
||||
semver=$(php_semver)
|
||||
extra_version=$(php_extra_version)
|
||||
ext_dir=$(php -i | grep "extension_dir => /" | sed -e "s|.*=> s*||")
|
||||
scan_dir=$(php --ini | grep additional | sed -e "s|.*: s*||")
|
||||
ini_dir=$(php --ini | grep "(php.ini)" | sed -e "s|.*: s*||")
|
||||
@ -259,6 +266,7 @@ setup_php() {
|
||||
sudo rm -rf /usr/local/bin/phpunit >/dev/null 2>&1
|
||||
sudo chmod 777 "${ini_file[@]}" "$pecl_file" "${tool_path_dir:?}"
|
||||
sudo cp "$dist"/../src/configs/*.json "$RUNNER_TOOL_CACHE/"
|
||||
echo "::set-output name=php-version::$semver"
|
||||
add_log "${tick:?}" "PHP" "$status PHP $semver$extra_version"
|
||||
}
|
||||
|
||||
|
||||
@ -426,6 +426,7 @@ if (Test-Path -LiteralPath $php_dir -PathType Container) {
|
||||
} catch { }
|
||||
}
|
||||
$status = "Installed"
|
||||
$extra_version = ""
|
||||
if ($null -eq $installed -or -not("$($installed.Version).".StartsWith(($version -replace '^(\d+(\.\d+)*).*', '$1.'))) -or $ts -ne $installed.ThreadSafe) {
|
||||
if ($version -lt '7.0' -and (Get-InstalledModule).Name -notcontains 'VcRedist') {
|
||||
Install-PSPackage VcRedist VcRedist-main\VcRedist\VcRedist "$github/aaronparker/VcRedist/archive/main.zip" Get-VcList >$null 2>&1
|
||||
@ -434,6 +435,7 @@ if ($null -eq $installed -or -not("$($installed.Version).".StartsWith(($version
|
||||
if ($version -match $nightly_versions) {
|
||||
Invoke-WebRequest -UseBasicParsing -Uri $php_builder/releases/latest/download/Get-PhpNightly.ps1 -OutFile $php_dir\Get-PhpNightly.ps1 > $null 2>&1
|
||||
& $php_dir\Get-PhpNightly.ps1 -Architecture $arch -ThreadSafe $ts -Path $php_dir > $null 2>&1
|
||||
$extra_version = " ($(Get-Content $php_dir\COMMIT))"
|
||||
} else {
|
||||
Install-Php -Version $version -Architecture $arch -ThreadSafe $ts -InstallVC -Path $php_dir -TimeZone UTC -InitialPhpIni Production -Force > $null 2>&1
|
||||
}
|
||||
@ -465,4 +467,5 @@ Enable-PhpExtension -Extension $enable_extensions -Path $php_dir
|
||||
Update-PhpCAInfo -Path $php_dir -Source $cert_source
|
||||
Copy-Item -Path $dist\..\src\configs\*.json -Destination $env:RUNNER_TOOL_CACHE
|
||||
New-Item -ItemType Directory -Path $composer_bin -Force 2>&1 | Out-Null
|
||||
Add-Log $tick "PHP" "$status PHP $($installed.FullVersion)"
|
||||
Write-Output "::set-output name=php-version::$($installed.FullVersion)"
|
||||
Add-Log $tick "PHP" "$status PHP $($installed.FullVersion)$extra_version"
|
||||
|
||||
Reference in New Issue
Block a user