2026-05-12 20:42.46: New job: Build using windows-x86_64 in
[https://github.com/ocaml/opam-repository#master (fc08333d1ba03c1ffbc960479a92aa94085c5f78)]
2026-05-12 20:42.46: Will push staging image to ocurrent/opam-staging:windows-server-mingw-ltsc2022-opam-amd64
Dockerfile:
# escape=`
# Autogenerated by OCaml-Dockerfile scripts
FROM mcr.microsoft.com/windows/server:10.0.20348.5139 AS winget-builder
USER ContainerAdministrator
ADD [ "https://github.com/microsoft/winget-cli/releases/latest/download/Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle", "C:\\TEMP\\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.zip" ]
RUN powershell -Command "Expand-Archive -LiteralPath C:\TEMP\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.zip -DestinationPath C:\TEMP\winget-cli -Force"
RUN ren C:\TEMP\winget-cli\AppInstaller_x64.msix AppInstaller_x64.zip
RUN powershell -Command "Expand-Archive -LiteralPath C:\TEMP\winget-cli\AppInstaller_x64.zip -DestinationPath C:\TEMP\winget-cli\ -Force"
RUN mkdir "C:\Program Files\winget-cli" && `
move "C:\TEMP\winget-cli\\winget.exe" "C:\Program Files\winget-cli\" && `
move "C:\TEMP\winget-cli\\WindowsPackageManager.dll" "C:\Program Files\winget-cli\" && `
move "C:\TEMP\winget-cli\\resources.pri" "C:\Program Files\winget-cli\"
FROM mcr.microsoft.com/windows/server:10.0.20348.5139 AS opam-builder
USER ContainerAdministrator
RUN for /f "tokens=1,2,*" %a in ('reg query "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /V Path ^| findstr /r "\\$"') do `
for /f "delims=" %l in ('cmd /v:on /c "set v=%c&& echo !v:~0,-1!"') do `
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /V Path /t REG_EXPAND_SZ /f /d "%l"
ENV CYGWIN="nodosfilewarning winsymlinks:native"
RUN for /f "tokens=1,2,*" %a in ('reg query "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /V Path ^| findstr /r "^[^H]"') do `
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /V Path /t REG_EXPAND_SZ /f /d "C:\cygwin64\bin;%c"
ADD [ "https://www.cygwin.com/setup-x86_64.exe", "C:\\cygwin64\\setup-x86_64.exe" ]
RUN mkdir C:\cygwin64\lib\cygsympathy && mkdir C:\cygwin64\etc\postinstall
ADD [ "https://raw.githubusercontent.com/metastack/cygsympathy/master/cygsympathy.cmd", "C:\\cygwin64\\lib\\cygsympathy\\" ]
ADD [ "https://raw.githubusercontent.com/metastack/cygsympathy/master/cygsympathy.sh", "C:\\cygwin64\\lib\\cygsympathy\\cygsympathy" ]
RUN mklink C:\cygwin64\etc\postinstall\zp_zcygsympathy.sh C:\cygwin64\lib\cygsympathy\cygsympathy
RUN C:\cygwin64\setup-x86_64.exe --quiet-mode --no-shortcuts --no-startmenu --no-desktop --only-site --local-package-dir C:\TEMP\cache --root C:\cygwin64 --site https://mirrors.kernel.org/sourceware/cygwin/ --symlink-type=native --packages diffutils,git,make,mingw64-i686-gcc-g++,mingw64-x86_64-gcc-core,mingw64-x86_64-gcc-g++,patch && `
powershell -Command "Remove-Item 'C:\TEMP' -Recurse"
RUN awk -i inplace "/(^#)|(^$)/{print;next}{$4=""noacl,""$4; print}" C:\cygwin64\etc\fstab
ENV HOME="C:\cygwin64\home\opam"
RUN C:\cygwin64\bin\bash.exe --login -c "git config --global user.email 'docker@example.com' && git config --global user.name 'Docker' && git config --system core.longpaths true && git config --global --add safe.directory /tmp/opam-sources"
RUN C:\cygwin64\bin\bash.exe --login -c "git clone https://github.com/ocaml/opam /tmp/opam && cd /tmp/opam && git checkout 1ea21b460db391ba6f8fb727ee296a86f65579e2 && sed -i \"s/make -j[0-9]*/make -j\$NUMBER_OF_PROCESSORS/g\" shell/bootstrap-ocaml.sh && make compiler "
RUN C:\cygwin64\bin\bash.exe --login -c "git clone /tmp/opam /tmp/opam-build-2.2 && cd /tmp/opam-build-2.2 && git config --global --add safe.directory /tmp/opam-build-2.2 && git checkout 01e9a24a61e23e42d513b4b775d8c30c807439b2"
RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp/opam-build-2.2 && env PATH="/tmp/opam/bootstrap/ocaml/bin:$PATH" ./configure --enable-cold-check --with-private-runtime --with-vendored-deps --with-0install-solver && env PATH="/tmp/opam/bootstrap/ocaml/bin:$PATH" make && make install && mv /usr/local/bin/opam.exe /usr/local/bin/opam-2.2.exe"
RUN C:\cygwin64\bin\bash.exe --login -c "git clone /tmp/opam /tmp/opam-build-2.3 && cd /tmp/opam-build-2.3 && git config --global --add safe.directory /tmp/opam-build-2.3 && git checkout 35acd0c5abc5e66cdbd5be16ba77aa6c33a4c724"
RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp/opam-build-2.3 && env PATH="/tmp/opam/bootstrap/ocaml/bin:$PATH" ./configure --enable-cold-check --with-private-runtime --with-vendored-deps --with-0install-solver && env PATH="/tmp/opam/bootstrap/ocaml/bin:$PATH" make && make install && mv /usr/local/bin/opam.exe /usr/local/bin/opam-2.3.exe"
RUN C:\cygwin64\bin\bash.exe --login -c "git clone /tmp/opam /tmp/opam-build-2.4 && cd /tmp/opam-build-2.4 && git config --global --add safe.directory /tmp/opam-build-2.4 && git checkout 7c92631391984f698f31ee24f3ae4dc1cd3698ff"
RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp/opam-build-2.4 && env PATH="/tmp/opam/bootstrap/ocaml/bin:$PATH" ./configure --enable-cold-check --with-private-runtime --with-vendored-deps --with-0install-solver && env PATH="/tmp/opam/bootstrap/ocaml/bin:$PATH" make && make install && mv /usr/local/bin/opam.exe /usr/local/bin/opam-2.4.exe"
RUN C:\cygwin64\bin\bash.exe --login -c "git clone /tmp/opam /tmp/opam-build-2.5 && cd /tmp/opam-build-2.5 && git config --global --add safe.directory /tmp/opam-build-2.5 && git checkout 6218d0c4c022106034a93c8ecb5b80fa213d7356"
RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp/opam-build-2.5 && env PATH="/tmp/opam/bootstrap/ocaml/bin:$PATH" ./configure --enable-cold-check --with-private-runtime --with-vendored-deps --with-0install-solver && env PATH="/tmp/opam/bootstrap/ocaml/bin:$PATH" make && make install && mv /usr/local/bin/opam.exe /usr/local/bin/opam-2.5.exe"
RUN C:\cygwin64\bin\bash.exe --login -c "git clone /tmp/opam /tmp/opam-build-master && cd /tmp/opam-build-master && git config --global --add safe.directory /tmp/opam-build-master && git checkout 1ea21b460db391ba6f8fb727ee296a86f65579e2"
RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp/opam-build-master && env PATH="/tmp/opam/bootstrap/ocaml/bin:$PATH" ./configure --enable-cold-check --with-private-runtime --with-vendored-deps --with-0install-solver && env PATH="/tmp/opam/bootstrap/ocaml/bin:$PATH" make && make install && mv /usr/local/bin/opam.exe /usr/local/bin/opam-master.exe"
FROM mcr.microsoft.com/windows/server:10.0.20348.5139
USER ContainerAdministrator
LABEL distro_style="windows"
USER ContainerAdministrator
RUN for /f "tokens=1,2,*" %a in ('reg query "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /V Path ^| findstr /r "\\$"') do `
for /f "delims=" %l in ('cmd /v:on /c "set v=%c&& echo !v:~0,-1!"') do `
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /V Path /t REG_EXPAND_SZ /f /d "%l"
ADD [ "https://aka.ms/vs/17/release/vc_redist.x64.exe", "C:\\TEMP\\" ]
RUN C:\TEMP\vc_redist.x64.exe /install /passive /norestart /log C:\TEMP\vc_redist.log && `
powershell -Command "Remove-Item 'C:\TEMP' -Recurse"
COPY --from=winget-builder [ "C:\\Program Files\\winget-cli", "C:\\Program Files\\winget-cli" ]
RUN for /f "tokens=1,2,*" %a in ('reg query "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /V Path ^| findstr /r "^[^H]"') do `
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /V Path /t REG_EXPAND_SZ /f /d "C:\Program Files\winget-cli;%c"
RUN powershell -Command "$path=(Join-Path $env:LOCALAPPDATA 'Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState'); New-Item $path -ItemType Directory -Force; '{ """"$schema"""": """"https://aka.ms/winget-settings.schema.json"""", """"telemetry"""": { """"disable"""": """"true"""" } }' | Out-File -encoding ASCII (Join-Path $path 'settings.json')"
RUN winget install --exact --accept-source-agreements --accept-package-agreements Git.Git
ENV CYGWIN="nodosfilewarning winsymlinks:native"
RUN for /f "tokens=1,2,*" %a in ('reg query "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /V Path ^| findstr /r "^[^H]"') do `
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /V Path /t REG_EXPAND_SZ /f /d "C:\cygwin64\bin;%c"
ADD [ "https://www.cygwin.com/setup-x86_64.exe", "C:\\cygwin64\\setup-x86_64.exe" ]
RUN mkdir C:\cygwin64\lib\cygsympathy && mkdir C:\cygwin64\etc\postinstall
ADD [ "https://raw.githubusercontent.com/metastack/cygsympathy/master/cygsympathy.cmd", "C:\\cygwin64\\lib\\cygsympathy\\" ]
ADD [ "https://raw.githubusercontent.com/metastack/cygsympathy/master/cygsympathy.sh", "C:\\cygwin64\\lib\\cygsympathy\\cygsympathy" ]
RUN mklink C:\cygwin64\etc\postinstall\zp_zcygsympathy.sh C:\cygwin64\lib\cygsympathy\cygsympathy
RUN C:\cygwin64\setup-x86_64.exe --quiet-mode --no-shortcuts --no-startmenu --no-desktop --only-site --local-package-dir C:\TEMP\cache --root C:\cygwin64 --site https://mirrors.kernel.org/sourceware/cygwin/ --symlink-type=native --packages curl,diffutils,git,m4,make,mingw64-x86_64-gcc-core,patch,perl,rsync,unzip && `
powershell -Command "Remove-Item 'C:\TEMP' -Recurse"
RUN awk -i inplace "/(^#)|(^$)/{print;next}{$4=""noacl,""$4; print}" C:\cygwin64\etc\fstab
COPY --from=opam-builder [ "C:\\cygwin64\\usr\\local\\bin\\Opam.Runtime.amd64", "C:\\Opam.Runtime.amd64" ]
RUN move C:\Opam.Runtime.amd64 C:\cygwin64\usr\local\bin
COPY --from=opam-builder [ "C:\\cygwin64\\usr\\local\\bin\\opam-2.2.exe", "C:\\opam-2.2.exe" ]
RUN move C:\opam-2.2.exe C:\cygwin64\usr\local\bin
COPY --from=opam-builder [ "C:\\cygwin64\\usr\\local\\bin\\opam-2.3.exe", "C:\\opam-2.3.exe" ]
RUN move C:\opam-2.3.exe C:\cygwin64\usr\local\bin
COPY --from=opam-builder [ "C:\\cygwin64\\usr\\local\\bin\\opam-2.4.exe", "C:\\opam-2.4.exe" ]
RUN move C:\opam-2.4.exe C:\cygwin64\usr\local\bin
COPY --from=opam-builder [ "C:\\cygwin64\\usr\\local\\bin\\opam-2.5.exe", "C:\\opam-2.5.exe" ]
RUN move C:\opam-2.5.exe C:\cygwin64\usr\local\bin
COPY --from=opam-builder [ "C:\\cygwin64\\usr\\local\\bin\\opam-master.exe", "C:\\opam-dev.exe" ]
RUN move C:\opam-dev.exe C:\cygwin64\usr\local\bin
RUN mklink C:\cygwin64\usr\local\bin\opam.exe C:\cygwin64\usr\local\bin\opam-2.2.exe
RUN for /f "tokens=1,2,*" %a in ('reg query "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /V Path ^| findstr /r "^[^H]"') do `
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /V Path /t REG_EXPAND_SZ /f /d "C:\cygwin64\usr\local\bin;C:\cygwin64\bin;%c"
WORKDIR C:\cygwin64\home\opam
ENV HOME="C:\cygwin64\home\opam"
RUN C:\cygwin64\bin\bash.exe --login -c "git config --global user.email 'docker@example.com' && git config --global user.name 'Docker' && git config --system core.longpaths true && git config --global --add safe.directory /home/opam/opam-repository"
COPY [ ".", "C:\\cygwin64\\home\\opam\\opam-repository" ]
ENV OPAMROOT="C:\opam\.opam"
RUN opam init -k git -a "C:\cygwin64\home\opam\opam-repository" --bare --disable-sandboxing
RUN C:\cygwin64\bin\bash.exe --login -c "rm -rf /cygdrive/c/opam/.opam/repo/default/.git"
COPY [ "Dockerfile", "/Dockerfile.opam" ]
2026-05-12 20:42.46: Using cache hint "opam-windows-server-mingw-ltsc2022"
2026-05-12 21:05.24: Waiting for worker…
2026-05-12 21:05.24: Got resource from pool OCluster
Building on ltsc2025-1
All commits already cached
HEAD is now at fc08333d1b Merge pull request #29875 from ocaml/mseri-patch-3
------------------------------------------------------------------------------
Total Copied Skipped Mismatch FAILED Extras
Dirs : 56796 56796 0 0 0 0
Files : 60818 60818 0 0 0 0
Bytes : 227.53 m 227.53 m 0 0 0 0
Times : 0:04:40 0:03:06 0:00:00 0:01:33
Speed : 1,278,862 Bytes/sec.
Speed : 73.177 MegaBytes/min.
Ended : Tuesday, May 12, 2026 9:11:32 PM
Sending build context to Docker daemon 372.6MB
Step 1/74 : FROM mcr.microsoft.com/windows/server:10.0.20348.5139 AS winget-builder
10.0.20348.5139: Pulling from windows/server
Digest: sha256:b6754104e49ebec66426295546ef858206d6ccd9f5c7d1ccd992e24b2f75d9fb
Status: Downloaded newer image for mcr.microsoft.com/windows/server:10.0.20348.5139
---> e7fb7bcc4305
Step 2/74 : USER ContainerAdministrator
---> Running in 8f6060161a46
---> Removed intermediate container 8f6060161a46
---> 28d6da8bed28
Step 3/74 : ADD [ "https://github.com/microsoft/winget-cli/releases/latest/download/Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle", "C:\\TEMP\\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.zip" ]
---> 0661e2ebb79b
Step 4/74 : RUN powershell -Command "Expand-Archive -LiteralPath C:\TEMP\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.zip -DestinationPath C:\TEMP\winget-cli -Force"
---> Running in fdc20aae9dac
---> Removed intermediate container fdc20aae9dac
---> b9cbdaedf785
Step 5/74 : RUN ren C:\TEMP\winget-cli\AppInstaller_x64.msix AppInstaller_x64.zip
---> Running in 3b0ce3e35880
---> Removed intermediate container 3b0ce3e35880
---> c23967235911
Step 6/74 : RUN powershell -Command "Expand-Archive -LiteralPath C:\TEMP\winget-cli\AppInstaller_x64.zip -DestinationPath C:\TEMP\winget-cli\ -Force"
---> Running in 5e2dfffe1290
---> Removed intermediate container 5e2dfffe1290
---> e712ff681900
Step 7/74 : RUN mkdir "C:\Program Files\winget-cli" && move "C:\TEMP\winget-cli\\winget.exe" "C:\Program Files\winget-cli\" && move "C:\TEMP\winget-cli\\WindowsPackageManager.dll" "C:\Program Files\winget-cli\" && move "C:\TEMP\winget-cli\\resources.pri" "C:\Program Files\winget-cli\"
---> Running in ab3871991be7
1 file(s) moved.
1 file(s) moved.
1 file(s) moved.
---> Removed intermediate container ab3871991be7
---> ef56ebc2fbba
Step 8/74 : FROM mcr.microsoft.com/windows/server:10.0.20348.5139 AS opam-builder
10.0.20348.5139: Pulling from windows/server
Digest: sha256:b6754104e49ebec66426295546ef858206d6ccd9f5c7d1ccd992e24b2f75d9fb
Status: Image is up to date for mcr.microsoft.com/windows/server:10.0.20348.5139
---> e7fb7bcc4305
Step 9/74 : USER ContainerAdministrator
---> Using cache
---> 28d6da8bed28
Step 10/74 : RUN for /f "tokens=1,2,*" %a in ('reg query "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /V Path ^| findstr /r "\\$"') do for /f "delims=" %l in ('cmd /v:on /c "set v=%c&& echo !v:~0,-1!"') do reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /V Path /t REG_EXPAND_SZ /f /d "%l"
---> Running in 8649acd1a835
C:\>for /F "delims=" %l in ('cmd /v:on /c "set v=%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;%SYSTEMROOT%\System32\OpenSSH\&& echo !v:~0,-1!"') do reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /V Path /t REG_EXPAND_SZ /f /d "%l"
C:\>reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /V Path /t REG_EXPAND_SZ /f /d "C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH"
The operation completed successfully.
---> Removed intermediate container 8649acd1a835
---> d7f37e2e0689
Step 11/74 : ENV CYGWIN="nodosfilewarning winsymlinks:native"
---> Running in d4073971a998
---> Removed intermediate container d4073971a998
---> c5ae61a365fa
Step 12/74 : RUN for /f "tokens=1,2,*" %a in ('reg query "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /V Path ^| findstr /r "^[^H]"') do reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /V Path /t REG_EXPAND_SZ /f /d "C:\cygwin64\bin;%c"
---> Running in 408872097b57
C:\>reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment" /V Path /t REG_EXPAND_SZ /f /d "C:\cygwin64\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH"
The operation completed successfully.
---> Removed intermediate container 408872097b57
---> d83bbbe5d2cf
Step 13/74 : ADD [ "https://www.cygwin.com/setup-x86_64.exe", "C:\\cygwin64\\setup-x86_64.exe" ]
---> 297561f27ff0
Step 14/74 : RUN mkdir C:\cygwin64\lib\cygsympathy && mkdir C:\cygwin64\etc\postinstall
---> Running in c32374a08a59
---> Removed intermediate container c32374a08a59
---> aef6ab533143
Step 15/74 : ADD [ "https://raw.githubusercontent.com/metastack/cygsympathy/master/cygsympathy.cmd", "C:\\cygwin64\\lib\\cygsympathy\\" ]
---> 14284bfafb14
Step 16/74 : ADD [ "https://raw.githubusercontent.com/metastack/cygsympathy/master/cygsympathy.sh", "C:\\cygwin64\\lib\\cygsympathy\\cygsympathy" ]
---> fbd078654596
Step 17/74 : RUN mklink C:\cygwin64\etc\postinstall\zp_zcygsympathy.sh C:\cygwin64\lib\cygsympathy\cygsympathy
---> Running in 7ccc6b419f93
symbolic link created for C:\cygwin64\etc\postinstall\zp_zcygsympathy.sh <<===>> C:\cygwin64\lib\cygsympathy\cygsympathy
---> Removed intermediate container 7ccc6b419f93
---> 6bc453e05bec
Step 18/74 : RUN C:\cygwin64\setup-x86_64.exe --quiet-mode --no-shortcuts --no-startmenu --no-desktop --only-site --local-package-dir C:\TEMP\cache --root C:\cygwin64 --site https://mirrors.kernel.org/sourceware/cygwin/ --symlink-type=native --packages diffutils,git,make,mingw64-i686-gcc-g++,mingw64-x86_64-gcc-core,mingw64-x86_64-gcc-g++,patch && powershell -Command "Remove-Item 'C:\TEMP' -Recurse"
---> Running in fe20ef2fa776
Starting cygwin install, version 2.937
User has backup/restore rights
User has symlink creation right
io_stream_cygfile: fopen(/etc/setup/setup.rc) failed 2 No such file or directory
Current Directory: C:\TEMP\cache
2026-05-16 06:34.53: Cancelling: Auto-cancelling job because it is no longer needed
Job cancelled