Initialer Import der Synology Scripts

This commit is contained in:
root
2026-08-05 08:43:57 +02:00
commit 5e32a7c411
404 changed files with 79932 additions and 0 deletions
+184
View File
@@ -0,0 +1,184 @@
############################################################
# Transcript
#
# PART 8.1 Enterprise Transcript Logging
############################################################
$TranscriptFile = Join-Path `
$LogDir `
"PowerShell_Transcript.log"
############################################################
# Start Transcript
############################################################
function Start-TranscriptLogging {
Write-Log "Starte PowerShell Transcript"
try {
if(Test-Path $TranscriptFile)
{
Remove-Item `
$TranscriptFile `
-Force
}
Start-Transcript `
-Path $TranscriptFile `
-Append `
-ErrorAction Stop
Write-Log "Transcript gestartet"
}
catch {
Write-Log "Transcript konnte nicht gestartet werden."
}
}
############################################################
# Stop Transcript
############################################################
function Stop-TranscriptLogging {
Write-Log "Beende Transcript"
try {
Stop-Transcript | Out-Null
}
catch {
}
}
############################################################
# JSON laden
############################################################
function Import-Configuration {
param(
[string]$ConfigurationFile
)
Write-Log "Lade Konfiguration"
if(!(Test-Path $ConfigurationFile))
{
Stop-Installation `
"Konfigurationsdatei nicht gefunden."
}
try
{
$Script:Config =
Get-Content `
$ConfigurationFile `
-Raw |
ConvertFrom-Json
}
catch
{
Stop-Installation `
"JSON konnte nicht gelesen werden."
}
Write-Log "Konfiguration geladen"
}
############################################################
# Werte übernehmen
############################################################
function Initialize-Configuration {
Write-Log "Übernehme Konfiguration"
$DVDSource =
$Config.General.DVDSource
$NetworkSource =
$Config.General.NetworkSource
$SQLInstanceName =
$Config.SQL.Instance
$DatabaseName =
$Config.SQL.Database
$SQLAuthentication =
$Config.SQL.Authentication
$InstallPath =
$Config.Paths.InstallPath
$CatalogPath =
$Config.Paths.CatalogPath
$IRCachePath =
$Config.Paths.IRCache
$GuestCatalogPort =
$Config.Ports.Catalog
$VeeamServicePort =
$Config.Ports.Service
$SecureConnectionPort =
$Config.Ports.Secure
$RestServicePort =
$Config.Ports.REST
}
############################################################
# Plugins
############################################################
$Plugins = @{
AHV_INSTALL =
[int]$Config.Plugins.AHV
KVM_INSTALL =
[int]$Config.Plugins.KVM
PVE_INSTALL =
[int]$Config.Plugins.PVE
SCP_INSTALL =
[int]$Config.Plugins.SCP
AWS_INSTALL =
[int]$Config.Plugins.AWS
AZURE_INSTALL =
[int]$Config.Plugins.Azure
GCP_INSTALL =
[int]$Config.Plugins.GCP
KASTEN_INSTALL =
[int]$Config.Plugins.Kasten
}
Import-Configuration `
"C:\Scripte\VeeamConfig.json"
Initialize-Configuration