2022-04-29 01:54:30 +00:00
|
|
|
Write-Output "`nBacking up build folder"
|
|
|
|
if (Test-Path $PSScriptRoot\..\build\_backup)
|
|
|
|
{
|
|
|
|
Remove-Item -Path $PSScriptRoot\..\build\_backup -Recurse -Force
|
|
|
|
}
|
|
|
|
if (Test-Path $PSScriptRoot\..\_backup)
|
|
|
|
{
|
|
|
|
Remove-Item -Path $PSScriptRoot\..\_backup -Recurse -Force
|
|
|
|
}
|
|
|
|
New-Item $PSScriptRoot\..\_backup -ItemType Directory | Out-Null
|
|
|
|
Move-Item -Path $PSScriptRoot\..\build\* -Destination $PSScriptRoot\..\_backup -Force
|
|
|
|
Move-Item -Path $PSScriptRoot\..\_backup -Destination $PSScriptRoot\..\build -Force
|
|
|
|
|
|
|
|
Write-Output "`nCompiling all devices"
|
2021-09-29 12:07:52 +00:00
|
|
|
$files = Get-ChildItem $PSScriptRoot\..\devices\*.yaml -Exclude "secrets.yaml"
|
2021-09-17 16:19:49 +00:00
|
|
|
$failures = New-Object Collections.Generic.List[String]
|
|
|
|
foreach ($file in $files) {
|
2021-09-29 12:07:52 +00:00
|
|
|
$fileName = $file.Name
|
|
|
|
esphome compile $PSScriptRoot\..\devices\$fileName
|
2021-09-17 16:19:49 +00:00
|
|
|
if ($LASTEXITCODE -ne "0") {
|
|
|
|
$failures.Add($file.Name)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
if ($failures -eq 0) {
|
|
|
|
Write-Output "`n`nAll devices compiled successfully"
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
Write-Output "`n`nThe following devices failed to compile:"
|
|
|
|
foreach ($failure in $failures) {
|
|
|
|
Write-Output $failure
|
|
|
|
}
|
|
|
|
}
|