Difference between revisions of "AWS/User data"

From Ever changing code
< AWS
Jump to navigation Jump to search
(Created page with "User_data scripts have many derivatives depends on operating system, and following do parse the script: *Linux - uses cloud_init *Windows 2012 - ec2config *Windows 2016< - ec2...")
 
Line 26: Line 26:
<runAsLocalSystem></runAsLocalSystem>
<runAsLocalSystem></runAsLocalSystem>
<powershellArguments></powershellArguments>  
<powershellArguments></powershellArguments>  
</source>
Example user_data.tpl script that will initialise 1st attached volume
<source lang=xml>
<powershell>
$file = @"
select disk 1
attributes disk clear readonly
online disk
convert mbr
create partition primary
format quick fs=ntfs label="log"
assign letter="d"
"@
Set-Content -Path ${env:TEMP}\diskpart -Value $file
diskpart.exe /s ${env:TEMP}\diskpart
</powershell>
</source>
</source>

Revision as of 00:14, 19 May 2019

User_data scripts have many derivatives depends on operating system, and following do parse the script:

  • Linux - uses cloud_init
  • Windows 2012 - ec2config
  • Windows 2016< - ec2launch

Ec2launch

Configuration file

C:\ProgramData\Amazon\EC2-Windows\Launch\Config\LaunchConfig.json


Log files are in C:\ProgramData\Amazon\EC2-Windows\Launch\Log

*Ec2Launch.txt - the app itself logs
*UserDataExecution.txt - contains parsing details and the script output
*WallpaperSetup.txt -


Script parsing sections:

<script>cmd://batch commands</script>  #always is parsed 1st
<powershell></powershell>              #2nd
<persist>true</persist>               #by default is false, true will run on each reboot
<runAsLocalSystem></runAsLocalSystem>
<powershellArguments></powershellArguments>


Example user_data.tpl script that will initialise 1st attached volume

<powershell>
$file = @"
select disk 1
attributes disk clear readonly
online disk
convert mbr
create partition primary
format quick fs=ntfs label="log"
assign letter="d"
"@
Set-Content -Path ${env:TEMP}\diskpart -Value $file
diskpart.exe /s ${env:TEMP}\diskpart
</powershell>