Skip to content

Commit efa005b

Browse files
committed
Updated context
1 parent 3985f86 commit efa005b

File tree

11 files changed

+1110
-1110
lines changed

11 files changed

+1110
-1110
lines changed

context/awslambda.tf

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -315,14 +315,14 @@ resource "octopusdeploy_process_step" "process_step_aws_lambda_attempt_login" {
315315
properties = {
316316
}
317317
execution_properties = {
318+
"Octopus.Action.Aws.Region" = "#{Project.AWS.Region}"
319+
"Octopus.Action.Script.Syntax" = "PowerShell"
320+
"Octopus.Action.Aws.AssumeRole" = "False"
318321
"Octopus.Action.AwsAccount.UseInstanceRole" = "False"
322+
"Octopus.Action.Script.ScriptBody" = "# Get the current AWS user. This will only succeed if the AWS account is valid.\n# If the AWS account is not valid, this step will fail. We can detect the failure and offer next steps.\naws sts get-caller-identity"
319323
"Octopus.Action.RunOnServer" = "true"
320324
"Octopus.Action.AwsAccount.Variable" = "Project.AWS.Account"
321-
"Octopus.Action.Aws.AssumeRole" = "False"
322325
"Octopus.Action.Script.ScriptSource" = "Inline"
323-
"Octopus.Action.Script.Syntax" = "PowerShell"
324-
"Octopus.Action.Script.ScriptBody" = "# Get the current AWS user. This will only succeed if the AWS account is valid.\n# If the AWS account is not valid, this step will fail. We can detect the failure and offer next steps.\naws sts get-caller-identity"
325-
"Octopus.Action.Aws.Region" = "#{Project.AWS.Region}"
326326
"OctopusUseBundledTooling" = "False"
327327
}
328328
}
@@ -346,11 +346,11 @@ resource "octopusdeploy_process_step" "process_step_aws_lambda_validate_setup" {
346346
properties = {
347347
}
348348
execution_properties = {
349+
"Octopus.Action.GitRepository.Source" = "External"
349350
"Octopus.Action.Script.ScriptFileName" = "octopus/aws/ValidateLambdaSetup.ps1"
350351
"Octopus.Action.Script.ScriptSource" = "GitRepository"
351352
"OctopusUseBundledTooling" = "False"
352353
"Octopus.Action.RunOnServer" = "true"
353-
"Octopus.Action.GitRepository.Source" = "External"
354354
}
355355
}
356356

@@ -372,9 +372,9 @@ resource "octopusdeploy_process_step" "process_step_aws_lambda_approve_productio
372372
"Octopus.Step.ConditionVariableExpression" = "#{unless Octopus.Deployment.Error}#{if Octopus.Action[Validate setup].Output.AwsLambdaConfigured == \"True\"}true#{/if}#{/unless}"
373373
}
374374
execution_properties = {
375+
"Octopus.Action.RunOnServer" = "true"
375376
"Octopus.Action.Manual.BlockConcurrentDeployments" = "False"
376377
"Octopus.Action.Manual.Instructions" = "Do you approve the production deployment?"
377-
"Octopus.Action.RunOnServer" = "true"
378378
}
379379
}
380380

@@ -406,26 +406,26 @@ resource "octopusdeploy_process_step" "process_step_aws_lambda_upload_lambda" {
406406
"Octopus.Step.ConditionVariableExpression" = "#{unless Octopus.Deployment.Error}#{if Octopus.Action[Validate setup].Output.AwsLambdaConfigured == \"True\"}true#{/if}#{/unless}"
407407
}
408408
execution_properties = {
409-
"Octopus.Action.Aws.AssumeRole" = "False"
410409
"Octopus.Action.RunOnServer" = "true"
411-
"Octopus.Action.Aws.S3.TargetMode" = "EntirePackage"
412-
"OctopusUseBundledTooling" = "False"
410+
"Octopus.Action.Aws.AssumeRole" = "False"
413411
"Octopus.Action.AwsAccount.UseInstanceRole" = "False"
414-
"Octopus.Action.Aws.S3.BucketName" = "#{Project.AWS.Lambda.S3.BucketName}"
415412
"Octopus.Action.AwsAccount.Variable" = "Project.AWS.Account"
413+
"Octopus.Action.Aws.S3.BucketName" = "#{Project.AWS.Lambda.S3.BucketName}"
416414
"Octopus.Action.Aws.Region" = "#{Project.AWS.Region}"
415+
"Octopus.Action.Aws.S3.TargetMode" = "EntirePackage"
417416
"Octopus.Action.Aws.S3.PackageOptions" = jsonencode({
418417
"bucketKey" = "#{Project.AWS.Lambda.S3.FileName}"
419418
"bucketKeyBehaviour" = "Custom"
420419
"bucketKeyPrefix" = ""
421-
"storageClass" = "STANDARD"
422-
"cannedAcl" = "private"
420+
"variableSubstitutionPatterns" = ""
423421
"structuredVariableSubstitutionPatterns" = ""
424-
"metadata" = []
425422
"tags" = []
426-
"variableSubstitutionPatterns" = ""
427423
"autoFocus" = "true"
424+
"storageClass" = "STANDARD"
425+
"cannedAcl" = "private"
426+
"metadata" = []
428427
})
428+
"OctopusUseBundledTooling" = "False"
429429
}
430430
}
431431

@@ -457,8 +457,8 @@ resource "octopusdeploy_process_step" "process_step_aws_lambda_deploy_lambda_sam
457457
"Octopus.Step.ConditionVariableExpression" = "#{unless Octopus.Deployment.Error}#{if Octopus.Action[Validate setup].Output.AwsLambdaConfigured == \"True\"}true#{/if}#{/unless}"
458458
}
459459
execution_properties = {
460-
"Octopus.Action.Aws.CloudFormationStackName" = "#{Octopus.Space.Name | Replace \"[^A-Za-z0-9]\" \"-\"}-OctopubProductsSAMLambda-#{Octopus.Deployment.Id | Replace -}-#{Octopus.Environment.Name}"
461-
"Octopus.Action.Aws.CloudFormationTemplate" = "sam.jvm.yaml"
460+
"Octopus.Action.Aws.Region" = "#{Project.AWS.Region}"
461+
"Octopus.Action.Package.JsonConfigurationVariablesTargets" = "sam.jvm.yaml"
462462
"Octopus.Action.Aws.CloudFormation.Tags" = jsonencode([
463463
{
464464
"key" = "OctopusTenantId"
@@ -477,37 +477,37 @@ resource "octopusdeploy_process_step" "process_step_aws_lambda_deploy_lambda_sam
477477
"value" = "#{if Octopus.Deployment.Id}#{Octopus.Deployment.Id}#{/if}#{unless Octopus.Deployment.Id}none#{/unless}"
478478
},
479479
{
480-
"key" = "OctopusProjectId"
481480
"value" = "#{Octopus.Project.Id}"
481+
"key" = "OctopusProjectId"
482482
},
483483
{
484484
"key" = "OctopusEnvironmentId"
485485
"value" = "#{Octopus.Environment.Id}"
486486
},
487487
{
488-
"key" = "Environment"
489488
"value" = "#{Octopus.Environment.Name}"
489+
"key" = "Environment"
490490
},
491491
{
492-
"key" = "DeploymentProject"
493492
"value" = "#{Octopus.Project.Name}"
493+
"key" = "DeploymentProject"
494494
},
495495
])
496-
"Octopus.Action.Package.JsonConfigurationVariablesTargets" = "sam.jvm.yaml"
497-
"Octopus.Action.Aws.AssumeRole" = "False"
498-
"Octopus.Action.RunOnServer" = "true"
499-
"Octopus.Action.AwsAccount.Variable" = "Project.AWS.Account"
500-
"Octopus.Action.Aws.TemplateSource" = "Package"
501496
"Octopus.Action.Aws.WaitForCompletion" = "True"
502-
"OctopusUseBundledTooling" = "False"
497+
"Octopus.Action.Aws.CloudFormationStackName" = "#{Octopus.Space.Name | Replace \"[^A-Za-z0-9]\" \"-\"}-OctopubProductsSAMLambda-#{Octopus.Deployment.Id | Replace -}-#{Octopus.Environment.Name}"
498+
"Octopus.Action.AwsAccount.Variable" = "Project.AWS.Account"
503499
"Octopus.Action.AwsAccount.UseInstanceRole" = "False"
500+
"Octopus.Action.Aws.TemplateSource" = "Package"
504501
"Octopus.Action.Aws.IamCapabilities" = jsonencode([
505502
"CAPABILITY_AUTO_EXPAND",
506503
"CAPABILITY_IAM",
507504
"CAPABILITY_NAMED_IAM",
508505
])
506+
"OctopusUseBundledTooling" = "False"
507+
"Octopus.Action.Aws.AssumeRole" = "False"
508+
"Octopus.Action.Aws.CloudFormationTemplate" = "sam.jvm.yaml"
509+
"Octopus.Action.RunOnServer" = "true"
509510
"Octopus.Action.EnabledFeatures" = "Octopus.Features.JsonConfigurationVariables"
510-
"Octopus.Action.Aws.Region" = "#{Project.AWS.Region}"
511511
}
512512
}
513513

@@ -538,11 +538,11 @@ resource "octopusdeploy_process_step" "process_step_aws_lambda_scan_for_vulnerab
538538
properties = {
539539
}
540540
execution_properties = {
541-
"Octopus.Action.Script.ScriptSource" = "GitRepository"
542-
"OctopusUseBundledTooling" = "False"
543541
"Octopus.Action.RunOnServer" = "true"
544542
"Octopus.Action.GitRepository.Source" = "External"
545543
"Octopus.Action.Script.ScriptFileName" = "octopus/DirectorySbomScan.ps1"
544+
"Octopus.Action.Script.ScriptSource" = "GitRepository"
545+
"OctopusUseBundledTooling" = "False"
546546
}
547547
}
548548

@@ -760,7 +760,7 @@ resource "octopusdeploy_project" "project_aws_lambda" {
760760
}
761761
resource "octopusdeploy_project_versioning_strategy" "project_aws_lambda" {
762762
count = "${length(data.octopusdeploy_projects.project_aws_lambda.projects) != 0 ? 0 : 1}"
763-
project_id = "${octopusdeploy_project.project_aws_lambda.id}"
763+
project_id = "${length(data.octopusdeploy_projects.project_aws_lambda.projects) != 0 ? data.octopusdeploy_projects.project_aws_lambda.projects[0].id : octopusdeploy_project.project_aws_lambda[0].id}"
764764
template = "#{Octopus.Date.Year}.#{Octopus.Date.Month}.#{Octopus.Date.Day}.i"
765765
}
766766

context/azurefunction.tf

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -316,12 +316,12 @@ resource "octopusdeploy_process_step" "process_step_azure_function_validate_setu
316316
properties = {
317317
}
318318
execution_properties = {
319-
"Octopus.Action.RunOnServer" = "true"
320319
"Octopus.Action.GitRepository.Source" = "External"
321320
"Octopus.Action.Script.ScriptFileName" = "octopus/Azure/ValidateSetup.ps1"
322321
"Octopus.Action.Script.ScriptParameters" = "-Role \"Octopub-Products-Function\" -CheckForTargets $true"
323322
"Octopus.Action.Script.ScriptSource" = "GitRepository"
324323
"OctopusUseBundledTooling" = "False"
324+
"Octopus.Action.RunOnServer" = "true"
325325
}
326326
}
327327

@@ -380,10 +380,10 @@ resource "octopusdeploy_process_step" "process_step_azure_function_deploy_produc
380380
}
381381
execution_properties = {
382382
"Octopus.Action.Azure.DeploymentType" = "Package"
383+
"Octopus.Action.Azure.DeploymentSlot" = "staging"
383384
"Octopus.Action.EnabledFeatures" = "Octopus.Features.JsonConfigurationVariables,Octopus.Features.ConfigurationTransforms,Octopus.Features.SubstituteInFiles"
384-
"Octopus.Action.RunOnServer" = "true"
385385
"OctopusUseBundledTooling" = "False"
386-
"Octopus.Action.Azure.DeploymentSlot" = "staging"
386+
"Octopus.Action.RunOnServer" = "true"
387387
}
388388
}
389389

@@ -406,12 +406,12 @@ resource "octopusdeploy_process_step" "process_step_azure_function_smoke_test" {
406406
"Octopus.Step.ConditionVariableExpression" = "#{unless Octopus.Deployment.Error}#{if Octopus.Action[Validate Setup].Output.SetupValid == \"True\"}true#{/if}#{/unless}"
407407
}
408408
execution_properties = {
409-
"OctopusUseBundledTooling" = "False"
410409
"Octopus.Action.RunOnServer" = "true"
411410
"Octopus.Action.Azure.AccountId" = "#{Project.Azure.Account}"
412411
"Octopus.Action.Script.ScriptBody" = "# Get variables\n$resourceGroupName = \"#{Project.Azure.ResourceGroup.Name}\"\n$functionName = \"#{Project.Azure.Function.Octopub.Products.Name}\"\n\n# Get list of deployment slots\n$deploymentSlots = (az functionapp deployment slot list --resource-group $resourceGroupName --name $functionName | ConvertFrom-JSON)\n\n# Check to see if anything was returned\nif ($null -ne $deploymentSlots -and $null -ne ($deploymentSlots | Where-Object {$_.Name -eq \"staging\"}))\n{\n # Assing the hostname of the deployment slot\n $testUrl = ($deploymentSlots | Where-Object {$_.Name -eq \"staging\"}).defaultHostName\n}\nelse\n{\n # No deployments slots are available, use the function app instead\n $testUrl = (az functionapp show --resource-group $resourceGroupName --name $functionName | ConvertFrom-JSON).defaultHostName\n}\n\ntry\n{\n # Make a web request \n $response = Invoke-WebRequest -Uri \"https://$testUrl\"\n\n # Check for a 200 response\n if ($response.StatusCode -ne 200)\n {\n # Throw an error\n throw $response.StatusCode\n }\n else\n {\n Write-Host \"Smoke test succeeded!\"\n }\n}\ncatch\n{\n Write-Warning \"An error occurred: $($_.Exception.Message)\"\n}"
413412
"Octopus.Action.Script.ScriptSource" = "Inline"
414413
"Octopus.Action.Script.Syntax" = "PowerShell"
414+
"OctopusUseBundledTooling" = "False"
415415
}
416416
}
417417

@@ -459,12 +459,12 @@ resource "octopusdeploy_process_step" "process_step_azure_function_swap_deployme
459459
"Octopus.Step.ConditionVariableExpression" = "#{unless Octopus.Deployment.Error}#{if Octopus.Action[Validate Setup].Output.SetupValid == \"True\"}true#{/if}#{/unless}"
460460
}
461461
execution_properties = {
462+
"Octopus.Action.Script.Syntax" = "PowerShell"
462463
"OctopusUseBundledTooling" = "False"
463464
"Octopus.Action.RunOnServer" = "true"
464465
"Octopus.Action.Azure.AccountId" = "#{Project.Azure.Account}"
465466
"Octopus.Action.Script.ScriptBody" = "# Get variables\n$resourceGroupName = $OctopusParameters[\"Project.Azure.ResourceGroup.Name\"]\n$functionAppName = $OctopusParameters[\"Project.Azure.Function.Octopub.Products.Name\"]\n\n# Swap the staging and production slots\nWrite-Host \"Swapping Staging and Production slots...\"\naz functionapp deployment slot swap --slot \"Staging\" --target-slot \"Production\" --resource-group $resourceGroupName --name $functionAppName\nWrite-Host \"Swap complete!\""
466467
"Octopus.Action.Script.ScriptSource" = "Inline"
467-
"Octopus.Action.Script.Syntax" = "PowerShell"
468468
}
469469
}
470470

@@ -521,11 +521,11 @@ resource "octopusdeploy_process_step" "process_step_azure_function_send_deployme
521521
"Octopus.Step.ConditionVariableExpression" = "#{if Octopus.Deployment.Error}#{if Octopus.Action[Check SMTP configuration].Output.SmtpConfigured == \"True\"}true#{/if}#{/if}"
522522
}
523523
execution_properties = {
524-
"Octopus.Action.Email.Subject" = "#{Octopus.Project.Name} failed to deploy to #{Octopus.Environment.Name}!"
525-
"Octopus.Action.Email.To" = "#{Octopus.Deployment.CreatedBy.EmailAddress}"
526524
"Octopus.Action.RunOnServer" = "true"
527525
"Octopus.Action.Email.Body" = "#{Octopus.Project.Name} release version #{Octopus.Release.Number} has failed deployed to #{Octopus.Environment.Name}\n\n#{Octopus.Deployment.Error}:\n#{Octopus.Deployment.ErrorDetail}"
528526
"Octopus.Action.Email.Priority" = "High"
527+
"Octopus.Action.Email.Subject" = "#{Octopus.Project.Name} failed to deploy to #{Octopus.Environment.Name}!"
528+
"Octopus.Action.Email.To" = "#{Octopus.Deployment.CreatedBy.EmailAddress}"
529529
}
530530
}
531531

@@ -851,7 +851,7 @@ resource "octopusdeploy_project" "project_azure_function" {
851851
}
852852
resource "octopusdeploy_project_versioning_strategy" "project_azure_function" {
853853
count = "${length(data.octopusdeploy_projects.project_azure_function.projects) != 0 ? 0 : 1}"
854-
project_id = "${octopusdeploy_project.project_azure_function.id}"
854+
project_id = "${length(data.octopusdeploy_projects.project_azure_function.projects) != 0 ? data.octopusdeploy_projects.project_azure_function.projects[0].id : octopusdeploy_project.project_azure_function[0].id}"
855855
template = "#{Octopus.Date.Year}.#{Octopus.Date.Month}.#{Octopus.Date.Day}.i"
856856
}
857857

0 commit comments

Comments
 (0)