Windows Server (PowerShell-Модуль)
Обновление PowerShell-модуля
Открыть PowerShell от имени «Администратора»:
С помощью контекстного меню Пуск
- Нажать правой кнопкой мыши на значке Пуск в левом нижнем углу экрана.
- Выбрать «Windows PowerShell (администратор)» из контекстног о меню.
С помощью меню Пуск
- Нажать левой кнопкой мыши на значок Пуск в левом нижнем углу экрана.
- Прописать
powershell
- Открыть PowerShell от имени «Администратора» комбинацией —
Ctrl + Shift + Enter
Получить архив PassworkModule.zip в текущую директорию:
- PowerShell
if (-not (Test-Path "$pwd\PassworkModule.zip")) {
(New-Object System.Net.WebClient).DownloadFile(
"https://repos.passwork.ru/repository/powershell/PassworkModule.zip",
"$pwd\PassworkModule.zip"
)
Write-Host "Модуль успешно получен" -ForegroundColor Green
} else {
Write-Host "Архив с модулем уже существует" -ForegroundColor Red
}
В случае ошибок, архив можно получить вручную: https://repos.passwork.ru/repository/windows_powershell/PassworkModule.zip
Разархивировать PowerShell-модуль с заменой файлов:
- PowerShell
# Получить расположение PowerShell модулей
$windowsModulePaths = $env:PSModulePath -split ";" | Where-Object { $_ -like "C:\Windows*" }
# Разархивировать PowerShell-модуль в директорию с перезаписью
Expand-Archive `
-Path "$pwd\PassworkModule.zip" `
-DestinationPath $windowsModulePaths -Force
# Удалить архив PassworkModule.zip
Remove-Item "$pwd\PassworkModule.zip"
Деактивировать и активировать PowerShell-модуль для применения изменений в новой версии:
- PowerShell
# Деактивировать PowerShell-модуль
Remove-Module -Name "PassworkModule"
# Активировать PowerShell-модуль
Import-Module -Name "PassworkModule"
Если Пассворк расположен в закрытом контуре
Если сервер с Пассворк расположен в закрытом контуре и не имеет доступа в интернет, нужно выполнить:
- Получить архив PHP8.3 и переместить на Windows Server;
- Получить архив 7 версии на клиентском портале Пассворка и переместить на Windows Server.
Архивы должны быть расположены в директории откуда будет выполняться функция для обновления PHP и Пассворка:
- PowerShell
$PWD\php_latest.zip
$PWD\Passwork-xxxxxx.zip
Обновление PHP и Пассворка
Запустить функцию в PowerShell:
- PowerShell
Update-Passwork-Environment
Выполняемые действия
- Проверка версии Пассворка
- Проверка выполнения миграции в веб-интерфейсе
- Проверка доступности клиентского портала
- Получение архивов или ожидание архивов в
$PWD
- Разархивирование PHP
- Удаление старых PHP версий из PATH
- Добавление новой PHP версии в PATH
- Создание архива Пассворка (6.5.x)
- Разархивирование актуальной версии Пассворка
- Создание файлов с заполнением данных из
config.ini
- Регистрация PHP8.3 в веб-сервере IIS
- Обновление данных в
.passwork_component
Процесс выполнения функции
Функция проверяет выполнение первичной миграции в веб-интерфейсе Пассворка (6.5). Она распаковывает актуальные версии Пассворка и PHP, а затем создаёт файлы конфигурации. В случае ошибок они выводятся в консоль PowerShell:

По завершению отобразится сообщение об успешном обновлении Пассворка и PHP. Так выглядит успешное завершение функции:
