Deployment Psake-多次运行同一任务
我正在为我们的网站创建一个构建/部署脚本。我们的过程目前有点复杂,因为它需要用webconfig设置启动网站来更新我们的模式。然后我们关闭站点,将webconfig更改为不再更新模式,然后重新启动 由于任务的重复性,我们的任务列表多次包含两个任务 例如Deployment Psake-多次运行同一任务,deployment,psake,Deployment,Psake,我正在为我们的网站创建一个构建/部署脚本。我们的过程目前有点复杂,因为它需要用webconfig设置启动网站来更新我们的模式。然后我们关闭站点,将webconfig更改为不再更新模式,然后重新启动 由于任务的重复性,我们的任务列表多次包含两个任务 例如 调用Psake(加入路径$env:currentDir“\tasks\iis\u app\u deploy.ps1”)` -任务列表验证属性、StopApplicationPool、StartApplicationPool、StopApplica
调用Psake(加入路径$env:currentDir“\tasks\iis\u app\u deploy.ps1”)`
-任务列表验证属性、StopApplicationPool、StartApplicationPool、StopApplicationPool、StartApplicationPool、PutBackInLoadBalancer
在此任务列表中,每个任务执行一次且仅执行一次。有没有办法指定psake来运行任务,而不检查它们以前是否运行过?我找到了自己问题的答案嵌套 这些就是台阶
task BackendDeployment -depends ValidateProperties{
# Deploy and update schema
$self = Join-Path ($env:scriptPath) "tasks\iis_app_deploy.ps1"
Write-Output "Running schema changes"
Invoke-Psake $self -TaskList StopApplicationPool,`
MSDeploy,`
CopyLicenses,`
CopyConfigs,`
UpdateConfigForSchemaChanges,`
StartApplicationPool,`
WarmUpApplications, `
WaitForAction `
-properties $properties
Write-Output "Running final deployment"
Invoke-Psake $self -TaskList StopApplicationPool,`
CopyConfigs,`
StartApplicationPool,`
WarmUpApplications `
-properties $properties
}
task BackendDeployment -depends ValidateProperties{
# Deploy and update schema
$self = Join-Path ($env:scriptPath) "tasks\iis_app_deploy.ps1"
Write-Output "Running schema changes"
Invoke-Psake $self -TaskList StopApplicationPool,`
MSDeploy,`
CopyLicenses,`
CopyConfigs,`
UpdateConfigForSchemaChanges,`
StartApplicationPool,`
WarmUpApplications, `
WaitForAction `
-properties $properties
Write-Output "Running final deployment"
Invoke-Psake $self -TaskList StopApplicationPool,`
CopyConfigs,`
StartApplicationPool,`
WarmUpApplications `
-properties $properties
}