artemis-portable/assets/update-artemis.ps1

41 lines
1.4 KiB
PowerShell

$artemis_branch = "%%ARTEMIS_BRANCH%%"
$old = Join-Path $(Get-Location) "artemis"
$tmpdir = Join-Path $env:TEMP $(New-Guid)
New-Item -ItemType Directory -Path $tmpdir
cd $tmpdir
Write-Output "[INFO] Downloading ARTEMiS..."
Invoke-WebRequest "https://gitea.tendokyu.moe/Hay1tsme/artemis/archive/$artemis_branch.zip" -OutFile "artemis-$artemis_branch.zip"
Expand-Archive "artemis-$artemis_branch.zip"
Move-Item "artemis-$artemis_branch/artemis" artemis
Remove-Item -Recurse "artemis-$artemis_branch"
Remove-Item "artemis-$artemis_branch.zip"
Write-Output "[INFO] Copying files..."
(Get-ChildItem "$tmpdir/artemis/*").FullName | Copy-Item -Destination "$old" -Recurse -Force
Set-Location "$old"
Write-Output "[INFO] Updating dependencies..."
../python/python.exe -m pip install --no-warn-script-location -r requirements.txt
Write-Output "[INFO] Migrating databases..."
$mariadb = Start-Process -NoNewWindow -PassThru -WorkingDirectory ..\mariadb ..\mariadb\bin\mysqld.exe --console
../python/python.exe dbutils.py upgrade
Get-ChildItem -Name .\core\data\schema\versions | ForEach-Object {
$schema = ($_ -split "_")[0]
if ($schema -eq "CORE") {
return
} else {
return $schema
}
} | Get-Unique | ForEach-Object {
../python/python.exe dbutils.py --game "$_" upgrade
}
Stop-Process $mariadb.Id
Remove-Item -Recurse "$tmpdir"
Write-Output "ARTEMiS update finished."
cmd /k pause