59 lines
1.8 KiB
PowerShell
59 lines
1.8 KiB
PowerShell
|
function Get-ChocolateyParameterString {
|
||
|
<#
|
||
|
.SYNOPSIS
|
||
|
Get the complex parameter string that gets passed on package installation to all installable packages.
|
||
|
|
||
|
.DESCRIPTION
|
||
|
Get the complex parameter string that gets passed on package installation to all installable packages.
|
||
|
We pass these values at all times even if the installing package doesn't know about the parameters for consistency.
|
||
|
|
||
|
.PARAMETER Package
|
||
|
[PSObject] Must have a property Name that indicates the package being installed
|
||
|
|
||
|
.PARAMETER Environment
|
||
|
Optional. The environment this package is being installed to.
|
||
|
|
||
|
.PARAMETER RunMigrations
|
||
|
[Switch] If this package has migraitons, should migrations be run for this package at install?
|
||
|
|
||
|
.PARAMETER Package
|
||
|
[Switch] If this is a service, should it be started?
|
||
|
#>
|
||
|
[OutputType([string])]
|
||
|
[CmdletBinding()]
|
||
|
Param(
|
||
|
[Parameter(Mandatory = $true)]
|
||
|
[object]$Package,
|
||
|
|
||
|
[Parameter(Mandatory = $false)]
|
||
|
[Alias("env","e")]
|
||
|
[string]$Environment,
|
||
|
|
||
|
[Parameter(Mandatory = $false)]
|
||
|
[Alias("migrate","m")]
|
||
|
[bool]$RunMigrations = $true,
|
||
|
|
||
|
[Parameter(Mandatory = $false)]
|
||
|
[Alias("start","s")]
|
||
|
[bool]$StartService = $false
|
||
|
)
|
||
|
|
||
|
# Determine optional New Relic app name based on the package
|
||
|
$newRelicParam = "";
|
||
|
if ($Environment)
|
||
|
{
|
||
|
$newRelicName = (Get-NewRelicAppNameForConfigurationValue $Package.Name)
|
||
|
$newRelicParam = "/NewRelicAppName:'$Environment $newRelicName'";
|
||
|
}
|
||
|
|
||
|
$boolString = if($RunMigrations) { "true" } else { "false" }
|
||
|
$migrationParam = "/MigrationsEnabled:$boolString"
|
||
|
|
||
|
$boolString = if($StartService) { "true" } else { "false" }
|
||
|
$startupParam = "/Alkami.Installer.ServiceStartupMode:$boolString"
|
||
|
|
||
|
$chocoParamString = "`"$migrationParam $startupParam $newRelicParam`"";
|
||
|
return $chocoParamString;
|
||
|
}
|
||
|
|