32 lines
1.1 KiB
PowerShell
32 lines
1.1 KiB
PowerShell
#!/bin/pwsh
|
|
. "$PSScriptRoot/../../../Common/Scripts/Context.ps1";
|
|
|
|
$null = New-Module {
|
|
function Restore-Nextcloud([Context] $context) {
|
|
choco list --exact nextcloud-client
|
|
|
|
if (-not $?) {
|
|
Write-Information "Installing Nextcloud Client";
|
|
choco install nextcloud-client -y --params="'/KeepUpdateCheck'";
|
|
}
|
|
|
|
if (-not (Test-Path $context.GetNextcloudConfigFile())) {
|
|
Write-Information "Setting up Nextcloud configuration";
|
|
|
|
Write-Information "Ensuring all Let's Encrypt certificates are cached";
|
|
$null = Invoke-WebRequest https://valid-isrgrootx1.letsencrypt.org/;
|
|
|
|
while (-not (Test-Path $context.GetNextcloudConfigFile())) {
|
|
Write-Host "Nextcloud has been installed!";
|
|
Read-Host "Please log in in the Nextcloud app and hit enter to continue";
|
|
|
|
if (-not (Test-Path $context.GetNextcloudConfigFile())) {
|
|
Write-Error "The login seems to have failed. Please try again.";
|
|
}
|
|
}
|
|
|
|
$context.Reboot();
|
|
exit;
|
|
}
|
|
}
|
|
}
|