mirror of
https://github.com/shivammathur/setup-php.git
synced 2025-09-01 02:14:16 +07:00
Add support for symfony in tools input
This commit is contained in:
@ -79,7 +79,6 @@ Function Remove-Extension() {
|
||||
}
|
||||
}
|
||||
|
||||
# Function to setup a remote tool
|
||||
Function Add-Tool() {
|
||||
Param (
|
||||
[Parameter(Position = 0, Mandatory = $true)]
|
||||
@ -93,14 +92,16 @@ Function Add-Tool() {
|
||||
[string]
|
||||
$tool
|
||||
)
|
||||
if($tool -eq "composer") {
|
||||
if (Test-Path $php_dir\$tool) {
|
||||
Remove-Item $php_dir\$tool
|
||||
}
|
||||
if ($tool -eq "composer") {
|
||||
Install-Composer -Scope System -Path $php_dir -PhpPath $php_dir
|
||||
composer -q global config process-timeout 0
|
||||
Add-Log $tick $tool "Added"
|
||||
} elseif ($tool -eq "symfony") {
|
||||
Invoke-WebRequest -UseBasicParsing -Uri $url -OutFile $php_dir\$tool.exe
|
||||
Add-Content -Path $PsHome\profile.ps1 -Value "New-Alias $tool $php_dir\$tool.exe" > $null 2>&1
|
||||
} else {
|
||||
if (Test-Path $php_dir\$tool) {
|
||||
Remove-Item $php_dir\$tool
|
||||
}
|
||||
try {
|
||||
Invoke-WebRequest -UseBasicParsing -Uri $url -OutFile $php_dir\$tool
|
||||
$bat_content = @()
|
||||
@ -110,20 +111,18 @@ Function Add-Tool() {
|
||||
$bat_content += "php %BIN_TARGET% %*"
|
||||
Set-Content -Path $php_dir\$tool.bat -Value $bat_content
|
||||
Add-Content -Path $PsHome\profile.ps1 -Value "New-Alias $tool $php_dir\$tool.bat" > $null 2>&1
|
||||
if (Test-Path $php_dir\$tool) {
|
||||
Add-Log $tick $tool "Added"
|
||||
} else {
|
||||
Add-Log $cross $tool "Could not add $tool"
|
||||
}
|
||||
} catch {
|
||||
Add-Log $cross $tool "Could not add $tool"
|
||||
}
|
||||
} catch { }
|
||||
}
|
||||
if($tool -eq "phive") {
|
||||
Add-Extension curl >$null 2>&1
|
||||
Add-Extension mbstring >$null 2>&1
|
||||
Add-Extension xml >$null 2>&1
|
||||
}
|
||||
if (Test-Path $php_dir\$tool) {
|
||||
Add-Log $tick $tool "Added"
|
||||
} else {
|
||||
Add-Log $cross $tool "Could not add $tool"
|
||||
}
|
||||
}
|
||||
|
||||
Function Add-Composer-Tool() {
|
||||
|
40
src/tools.ts
40
src/tools.ts
@ -243,6 +243,40 @@ export async function getDeployerUrl(version: string): Promise<string> {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Function to get the Deployer url
|
||||
*
|
||||
* @param version
|
||||
* @param os_version
|
||||
*/
|
||||
export async function getSymfonyUri(
|
||||
version: string,
|
||||
os_version: string
|
||||
): Promise<string> {
|
||||
let filename = '';
|
||||
switch (os_version) {
|
||||
case 'linux':
|
||||
case 'darwin':
|
||||
filename = 'symfony_' + os_version + '_amd64';
|
||||
break;
|
||||
case 'win32':
|
||||
filename = 'symfony_windows_amd64.exe';
|
||||
break;
|
||||
default:
|
||||
return await utils.log(
|
||||
'Platform ' + os_version + ' is not supported',
|
||||
os_version,
|
||||
'error'
|
||||
);
|
||||
}
|
||||
switch (version) {
|
||||
case 'latest':
|
||||
return 'releases/latest/download/' + filename;
|
||||
default:
|
||||
return 'releases/download/v' + version + '/' + filename;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Function to add/move composer in the tools list
|
||||
*
|
||||
@ -440,6 +474,12 @@ export async function addTools(
|
||||
case 'phpize':
|
||||
script += await addDevTools(tool, os_version);
|
||||
break;
|
||||
case 'symfony':
|
||||
case 'symfony-cli':
|
||||
uri = await getSymfonyUri(version, os_version);
|
||||
url = github + 'symfony/cli/' + uri;
|
||||
script += await addArchive('symfony', version, url, os_version);
|
||||
break;
|
||||
default:
|
||||
script += await utils.addLog(
|
||||
'$cross',
|
||||
|
Reference in New Issue
Block a user