$Script:volc_log_path = "c:\volc.log"
$Script:service_name = "cloudbase-init"
$Script:cloudbase_init_folder_path = "c:\cloudbase_init_1_0_0_3"
$Script:cloudbase_init_path = "C:\ecs.windows.cloudbase_init_1.0.0.3.tar.gz"
if (Test-Path -Path $Script:volc_log_path) {
Remove-Item -Path $Script:volc_log_path -Recurse -Force
if (Test-Path -Path $Script:cloudbase_init_folder_path) {
Remove-Item -Path $Script:cloudbase_init_folder_path -Recurse -Force
if (Test-Path -Path $Script:cloudbase_init_path) {
Remove-Item -Path $Script:volc_log_path -Recurse -Force
echo "Modify cloudbase-init service begin." >> $Script:volc_log_path
Get-Service -DisplayName $Script:service_name
echo "Current system installed service:$Script:service_name, continue." >> $Script:volc_log_path
echo "Current system didn't install service:$Script:service_name, exit." >> $Script:volc_log_path
New-Item -Path "C:\" -Name "cloudbase_init_1_0_0_3" -type directory
Invoke-WebRequest -Uri https://cloudbase-init-cn-beijing.tos-cn-beijing.volces.com/hardening_mode/ecs.windows.cloudbase_init_1.0.0.3.tar.gz -OutFile $Script:cloudbase_init_path
tar -xzf C:\ecs.windows.cloudbase_init_1.0.0.3.tar.gz -C $Script:cloudbase_init_folder_path
cmd.exe /c "C:\cloudbase_init_1_0_0_3\config-cloudbase-init.bat" -NoNewWindow >> $Script:volc_log_path
Set-Service -Name $Script:service_name -StartupType Automatic
echo "Query service's running state after modify."
Get-Service $Script:service_name | Select-Object -Property Name, StartType, Status >> $Script:volc_log_path
Remove-Item -Path $Script:cloudbase_init_folder_path -Recurse -Force >> $Script:volc_log_path
Remove-Item -Path $Script:cloudbase_init_path -Recurse -Force >> $Script:volc_log_path
echo "Modify cloudbase-init service end." >> $Script:volc_log_path