Skip to content

Instantly share code, notes, and snippets.

@HelioCampos
Forked from magnetikonline/example.ps1
Created December 20, 2018 00:44
Show Gist options
  • Save HelioCampos/bb7b0aed8011fc28c94f410b14671b4f to your computer and use it in GitHub Desktop.
Save HelioCampos/bb7b0aed8011fc28c94f410b14671b4f to your computer and use it in GitHub Desktop.
PowerShell example for an AWS Route53 record upsert.
Set-StrictMode -Version Latest
$HOSTED_ZONE_ID = "ABCDEFGHIJKLM"
$changeRequest01 = New-Object -TypeName Amazon.Route53.Model.Change
$changeRequest01.Action = "UPSERT"
$changeRequest01.ResourceRecordSet = New-Object -TypeName Amazon.Route53.Model.ResourceRecordSet
$changeRequest01.ResourceRecordSet.Name = "record01.domain.com"
$changeRequest01.ResourceRecordSet.Type = "TXT"
$changeRequest01.ResourceRecordSet.TTL = 60
$changeRequest01.ResourceRecordSet.ResourceRecords.Add(@{Value = "`"my text record`""})
$changeRequest01.ResourceRecordSet.ResourceRecords.Add(@{Value = "`"another text record`""})
$changeRequest02 = New-Object -TypeName Amazon.Route53.Model.Change
$changeRequest02.Action = "UPSERT"
$changeRequest02.ResourceRecordSet = New-Object -TypeName Amazon.Route53.Model.ResourceRecordSet
$changeRequest02.ResourceRecordSet.Name = "record02.domain.com"
$changeRequest02.ResourceRecordSet.Type = "A"
$changeRequest02.ResourceRecordSet.TTL = 60
$changeRequest02.ResourceRecordSet.ResourceRecords.Add(@{Value = "`"192.168.0.1`""})
$changeRequest02.ResourceRecordSet.ResourceRecords.Add(@{Value = "`"192.168.0.2`""})
Edit-R53ResourceRecordSet `
-HostedZoneId $HOSTED_ZONE_ID `
-ChangeBatch_Change @($changeRequest01,$changeRequest02)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment