teamcity-jawsdeploy-plugin.zip. The plugin will appear on the plugins list below.API Base URL : (required) API URL pointing to your Jaws Deploy installation (default: https://app.jawsdeploy.net).Login : (required) Service account ID.API Key : (required) Service account api key.Operation: (required)Project ID : (required) ID of the project to be deployed (find it on the project page inside Jaws Deploy App GUI).Version: (optional) Version number following the SemVer 2.0 specification which should be created or promoted. Leave empty to let Jaws Deploy auto-generate this value.Channel name: (optional) Name of the channel to use for deploying a project with lifecycle management.Environments: (required) Comma-separated list of environment names to deploy to; typically deploy to a single environment e.g. Production
Release notes:(optional) Release notes. Ignored when Operation=Promote.Redownload packages: set to true if you need to Jaws Agent to re-download packages from the package source (external, or built-in feed).Exclude step names:(optional) Comma-separated list of project step names which should be excluded upon deployment. Ignored when Operation=Promote.API Key = %JAWS_API_KEY%
psm1 file(s) and make it an artifact available to your builds, or copy that .psm1 to your own Git repository and point your new VCS root to that repository..psm1) into a special folder, avoiding any conflicts with your existing application code e.g.:+:JawsDeploySdk.psm1 => ./_teamcity
This way the SDK file will not interfere with other files in your agent's work folder.%param_name%), which you can set up within TeamCity build configuration (Parameters tab):# create release and deploy
$env:JAWS_API_BASE_URL = "%JawsDeployApiUrl%"
$env:JAWS_API_LOGIN = "%JawsDeployLogin%"
$env:JAWS_API_PASSWORD = "%JawsDeployApiKey%"
Import-Module -Name (Join-Path "." _teamcity Jaws.psm1)
$projectId = "%MyApp_ProjectId%"
$jawsEnv = "%DeploymentEnvironment%"
$resp = Invoke-ReleaseAndDeployProject -projectId $projectId -version "%build.number%" -environmentName $jawsEnv
Write-Host $resp
# promote an existing release (latest)
$resp = Invoke-PromoteRelease -projectId $projectId -environmentName $jawsEnv
Write-Host $resp
# promote specific release by specifying its version
$resp = Invoke-PromoteRelease -projectId $projectId -environmentName $jawsEnv -version "%build.number%"
Write-Host $resp