# escape=`
FROM mcr.microsoft.com/windows/servercore:ltsc2022@sha256:5d09ffa90d91a46e2fe7652b0a37cbf5217f34a819c3d71cbe635dae8226061b

SHELL ["pwsh.exe","-command"]

# the source msi should change on a daily basis
# the destination should not change
ADD PSCore.msi /PSCore.msi

# the msipath (PSCore.msi) below will need to change based on the daily package
# set up for basic auth
# install-powershellremoting will restart winrm service
RUN new-LocalUser -Name testuser -password (ConvertTo-SecureString 11aa!!AA -asplaintext -force); `
    add-localgroupmember -group administrators -member testuser; `
    set-item wsman:/localhost/service/auth/basic $true; `
    set-item WSMan:/localhost/client/trustedhosts "*" -force; `
    set-item wsman:/localhost/service/AllowUnencrypted $true; `
    set-item WSMan:/localhost/client/AllowUnencrypted $true; `
    Start-Process -FilePath msiexec.exe -ArgumentList '-qn', `
    '-i c:\PSCore.msi','-log c:\PSCore-install.log','-norestart' -wait ; `
    $psexec = get-item -path ${ENV:ProgramFiles}/powershell/*/pwsh.exe; `
    $corehome = $psexec.directory.fullname; `
    & $psexec Install-PowerShellRemoting.ps1; `
    remove-item -force c:\PSCore.msi
