From 3d9dbc474f2e64e79010f68e365d3f93cee0b9e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Antonin=20D=C3=A9cimo?= Date: Thu, 9 Feb 2023 14:00:03 +0100 Subject: [PATCH] Update submodules - ocaml-dockerfile + Build and install opam master from source in Windows images. (@MisterDA ocurrent/ocaml-dockerfile#140) + Include the ocaml-beta-repository in the images. (@kit-ty-kate ocurrent/ocaml-dockerfile#132, review by @MisterDA) - ocluster + Custom healthcheck period. (@mtelvers ocurrent/ocluster#214) + Allow workers to report additional prometheus metrics. (@patricoferris ocurrent/ocluster#210) + other minor things. - ocaml-version + Expose 4.08.1 and 4.14.1 (@MisterDA ocurrent/ocaml-version#60) --- builds.expected | 128 ++++++++++++++++++++++++++++++++++++++--------- ocaml-dockerfile | 2 +- ocaml-version | 2 +- ocluster | 2 +- 4 files changed, 107 insertions(+), 27 deletions(-) diff --git a/builds.expected b/builds.expected index 97909d8..ccb9146 100644 --- a/builds.expected +++ b/builds.expected @@ -12670,6 +12670,29 @@ windows-mingw-1809/amd64 move "C:\TEMP\winget-cli\\WindowsPackageManager.dll" "C:\Program Files\winget-cli\" && ` move "C:\TEMP\winget-cli\\resources.pri" "C:\Program Files\winget-cli\" # escape=` + FROM mcr.microsoft.com/windows:1809-KB5022286 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 && cp -P -R -p . ../opam-sources && git checkout master" + RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp/opam-sources && cp -P -R -p . ../opam-build-master && cd ../opam-build-master && git checkout master && git config --global --add safe.directory /tmp/opam-build-master" + RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp/opam-build-master && make cold CONFIGURE_ARGS="--enable-cold-check --with-0install-solver"" + RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp/opam-build-master && mkdir -p /usr/local/bin && cp /tmp/opam-build-master/opam /usr/local/bin/opam-master && chmod a+x /usr/local/bin/opam-master" + # escape=` # Autogenerated by OCaml-Dockerfile scripts FROM mcr.microsoft.com/windows:1809-KB5022286 LABEL distro_style="windows" @@ -12684,7 +12707,7 @@ windows-mingw-1809/amd64 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')" - ENV CYGWIN="winsymlinks:native" + 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" ] @@ -12697,13 +12720,10 @@ windows-mingw-1809/amd64 ADD [ "https://github.com/metastack/msvs-tools/archive/0.4.1.tar.gz", "C:\\TEMP\\msvs-tools.tar.gz" ] RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp && tar -xf /cygdrive/c/TEMP/msvs-tools.tar.gz && cp msvs-tools-0.4.1/msvs-detect msvs-tools-0.4.1/msvs-promote-path /bin" RUN awk -i inplace "/(^#)|(^$)/{print;next}{$4=""noacl,""$4; print}" C:\cygwin64\etc\fstab - RUN powershell -Command "Foreach($file in Get-ChildItem -Path 'C:\cygwin64\dev' -Recurse -force) { ` - If (((Get-ItemProperty -Path $file.fullname).attributes -band [io.fileattributes]::System)) { ` - Set-ItemProperty -Path $file.fullname -Name attributes -Value ((Get-ItemProperty $file.fullname).attributes -BXOR [io.fileattributes]::System) ` - } ` - } #end Foreach" ADD [ "https://github.com/fdopen/opam-repository-mingw/releases/download/0.0.0.2/opam64.tar.xz", "C:\\TEMP\\" ] RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp && tar -xf /cygdrive/c/TEMP/opam64.tar.xz && ./opam64/install.sh --prefix=/usr && rm -rf opam64 opam64.tar.xz" + COPY --from=opam-builder [ "C:\\cygwin64\\usr\\local\\bin\\opam-master", "C:\\cygwin64\\usr\\bin\\opam-dev" ] + RUN mklink C:\cygwin64\usr\bin\opam-2.2 C:\cygwin64\usr\bin\opam-dev 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" @@ -12735,6 +12755,29 @@ windows-mingw-21H2/amd64 move "C:\TEMP\winget-cli\\WindowsPackageManager.dll" "C:\Program Files\winget-cli\" && ` move "C:\TEMP\winget-cli\\resources.pri" "C:\Program Files\winget-cli\" # escape=` + FROM mcr.microsoft.com/windows/server:ltsc2022-KB5022291 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 && cp -P -R -p . ../opam-sources && git checkout master" + RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp/opam-sources && cp -P -R -p . ../opam-build-master && cd ../opam-build-master && git checkout master && git config --global --add safe.directory /tmp/opam-build-master" + RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp/opam-build-master && make cold CONFIGURE_ARGS="--enable-cold-check --with-0install-solver"" + RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp/opam-build-master && mkdir -p /usr/local/bin && cp /tmp/opam-build-master/opam /usr/local/bin/opam-master && chmod a+x /usr/local/bin/opam-master" + # escape=` # Autogenerated by OCaml-Dockerfile scripts FROM mcr.microsoft.com/windows/server:ltsc2022-KB5022291 LABEL distro_style="windows" @@ -12750,7 +12793,7 @@ windows-mingw-21H2/amd64 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="winsymlinks:native" + 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" ] @@ -12763,13 +12806,10 @@ windows-mingw-21H2/amd64 ADD [ "https://github.com/metastack/msvs-tools/archive/0.4.1.tar.gz", "C:\\TEMP\\msvs-tools.tar.gz" ] RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp && tar -xf /cygdrive/c/TEMP/msvs-tools.tar.gz && cp msvs-tools-0.4.1/msvs-detect msvs-tools-0.4.1/msvs-promote-path /bin" RUN awk -i inplace "/(^#)|(^$)/{print;next}{$4=""noacl,""$4; print}" C:\cygwin64\etc\fstab - RUN powershell -Command "Foreach($file in Get-ChildItem -Path 'C:\cygwin64\dev' -Recurse -force) { ` - If (((Get-ItemProperty -Path $file.fullname).attributes -band [io.fileattributes]::System)) { ` - Set-ItemProperty -Path $file.fullname -Name attributes -Value ((Get-ItemProperty $file.fullname).attributes -BXOR [io.fileattributes]::System) ` - } ` - } #end Foreach" ADD [ "https://github.com/fdopen/opam-repository-mingw/releases/download/0.0.0.2/opam64.tar.xz", "C:\\TEMP\\" ] RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp && tar -xf /cygdrive/c/TEMP/opam64.tar.xz && ./opam64/install.sh --prefix=/usr && rm -rf opam64 opam64.tar.xz" + COPY --from=opam-builder [ "C:\\cygwin64\\usr\\local\\bin\\opam-master", "C:\\cygwin64\\usr\\bin\\opam-dev" ] + RUN mklink C:\cygwin64\usr\bin\opam-2.2 C:\cygwin64\usr\bin\opam-dev 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" @@ -13137,6 +13177,29 @@ windows-msvc-1809/amd64 move "C:\TEMP\winget-cli\\WindowsPackageManager.dll" "C:\Program Files\winget-cli\" && ` move "C:\TEMP\winget-cli\\resources.pri" "C:\Program Files\winget-cli\" # escape=` + FROM mcr.microsoft.com/windows:1809-KB5022286 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 && cp -P -R -p . ../opam-sources && git checkout master" + RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp/opam-sources && cp -P -R -p . ../opam-build-master && cd ../opam-build-master && git checkout master && git config --global --add safe.directory /tmp/opam-build-master" + RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp/opam-build-master && make cold CONFIGURE_ARGS="--enable-cold-check --with-0install-solver"" + RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp/opam-build-master && mkdir -p /usr/local/bin && cp /tmp/opam-build-master/opam /usr/local/bin/opam-master && chmod a+x /usr/local/bin/opam-master" + # escape=` # Autogenerated by OCaml-Dockerfile scripts FROM mcr.microsoft.com/windows:1809-KB5022286 LABEL distro_style="windows" @@ -13151,7 +13214,7 @@ windows-msvc-1809/amd64 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')" - ENV CYGWIN="winsymlinks:native" + 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" ] @@ -13164,11 +13227,6 @@ windows-msvc-1809/amd64 ADD [ "https://github.com/metastack/msvs-tools/archive/0.4.1.tar.gz", "C:\\TEMP\\msvs-tools.tar.gz" ] RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp && tar -xf /cygdrive/c/TEMP/msvs-tools.tar.gz && cp msvs-tools-0.4.1/msvs-detect msvs-tools-0.4.1/msvs-promote-path /bin" RUN awk -i inplace "/(^#)|(^$)/{print;next}{$4=""noacl,""$4; print}" C:\cygwin64\etc\fstab - RUN powershell -Command "Foreach($file in Get-ChildItem -Path 'C:\cygwin64\dev' -Recurse -force) { ` - If (((Get-ItemProperty -Path $file.fullname).attributes -band [io.fileattributes]::System)) { ` - Set-ItemProperty -Path $file.fullname -Name attributes -Value ((Get-ItemProperty $file.fullname).attributes -BXOR [io.fileattributes]::System) ` - } ` - } #end Foreach" ADD [ "https://raw.githubusercontent.com/avsm/ocaml-dockerfile/master/src-opam/Install.cmd", "C:\\TEMP\\" ] ADD [ "https://aka.ms/vscollect.exe", "C:\\TEMP\\collect.exe" ] ADD [ "https://aka.ms/vs/16/release/channel", "C:\\TEMP\\VisualStudio.chman" ] @@ -13180,6 +13238,8 @@ windows-msvc-1809/amd64 --add Microsoft.VisualStudio.Component.Windows10SDK.18362 ADD [ "https://github.com/fdopen/opam-repository-mingw/releases/download/0.0.0.2/opam64.tar.xz", "C:\\TEMP\\" ] RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp && tar -xf /cygdrive/c/TEMP/opam64.tar.xz && ./opam64/install.sh --prefix=/usr && rm -rf opam64 opam64.tar.xz" + COPY --from=opam-builder [ "C:\\cygwin64\\usr\\local\\bin\\opam-master", "C:\\cygwin64\\usr\\bin\\opam-dev" ] + RUN mklink C:\cygwin64\usr\bin\opam-2.2 C:\cygwin64\usr\bin\opam-dev 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" @@ -13212,6 +13272,29 @@ windows-msvc-21H2/amd64 move "C:\TEMP\winget-cli\\WindowsPackageManager.dll" "C:\Program Files\winget-cli\" && ` move "C:\TEMP\winget-cli\\resources.pri" "C:\Program Files\winget-cli\" # escape=` + FROM mcr.microsoft.com/windows/server:ltsc2022-KB5022291 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 && cp -P -R -p . ../opam-sources && git checkout master" + RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp/opam-sources && cp -P -R -p . ../opam-build-master && cd ../opam-build-master && git checkout master && git config --global --add safe.directory /tmp/opam-build-master" + RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp/opam-build-master && make cold CONFIGURE_ARGS="--enable-cold-check --with-0install-solver"" + RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp/opam-build-master && mkdir -p /usr/local/bin && cp /tmp/opam-build-master/opam /usr/local/bin/opam-master && chmod a+x /usr/local/bin/opam-master" + # escape=` # Autogenerated by OCaml-Dockerfile scripts FROM mcr.microsoft.com/windows/server:ltsc2022-KB5022291 LABEL distro_style="windows" @@ -13227,7 +13310,7 @@ windows-msvc-21H2/amd64 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="winsymlinks:native" + 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" ] @@ -13240,11 +13323,6 @@ windows-msvc-21H2/amd64 ADD [ "https://github.com/metastack/msvs-tools/archive/0.4.1.tar.gz", "C:\\TEMP\\msvs-tools.tar.gz" ] RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp && tar -xf /cygdrive/c/TEMP/msvs-tools.tar.gz && cp msvs-tools-0.4.1/msvs-detect msvs-tools-0.4.1/msvs-promote-path /bin" RUN awk -i inplace "/(^#)|(^$)/{print;next}{$4=""noacl,""$4; print}" C:\cygwin64\etc\fstab - RUN powershell -Command "Foreach($file in Get-ChildItem -Path 'C:\cygwin64\dev' -Recurse -force) { ` - If (((Get-ItemProperty -Path $file.fullname).attributes -band [io.fileattributes]::System)) { ` - Set-ItemProperty -Path $file.fullname -Name attributes -Value ((Get-ItemProperty $file.fullname).attributes -BXOR [io.fileattributes]::System) ` - } ` - } #end Foreach" ADD [ "https://raw.githubusercontent.com/avsm/ocaml-dockerfile/master/src-opam/Install.cmd", "C:\\TEMP\\" ] ADD [ "https://aka.ms/vscollect.exe", "C:\\TEMP\\collect.exe" ] ADD [ "https://aka.ms/vs/16/release/channel", "C:\\TEMP\\VisualStudio.chman" ] @@ -13256,6 +13334,8 @@ windows-msvc-21H2/amd64 --add Microsoft.VisualStudio.Component.Windows10SDK.18362 ADD [ "https://github.com/fdopen/opam-repository-mingw/releases/download/0.0.0.2/opam64.tar.xz", "C:\\TEMP\\" ] RUN C:\cygwin64\bin\bash.exe --login -c "cd /tmp && tar -xf /cygdrive/c/TEMP/opam64.tar.xz && ./opam64/install.sh --prefix=/usr && rm -rf opam64 opam64.tar.xz" + COPY --from=opam-builder [ "C:\\cygwin64\\usr\\local\\bin\\opam-master", "C:\\cygwin64\\usr\\bin\\opam-dev" ] + RUN mklink C:\cygwin64\usr\bin\opam-2.2 C:\cygwin64\usr\bin\opam-dev 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" diff --git a/ocaml-dockerfile b/ocaml-dockerfile index 9b865e4..01fb81e 160000 --- a/ocaml-dockerfile +++ b/ocaml-dockerfile @@ -1 +1 @@ -Subproject commit 9b865e4cca3ee8d85d2b8f1d23ad097d2e39262f +Subproject commit 01fb81ee2ce22f78920e566794675cb29ea31062 diff --git a/ocaml-version b/ocaml-version index 5b5413a..b886824 160000 --- a/ocaml-version +++ b/ocaml-version @@ -1 +1 @@ -Subproject commit 5b5413a42c3a9e3c10ca0a9b247ef11c78b23b9b +Subproject commit b886824947c6a2362c324fa994d174fde5b9eaf0 diff --git a/ocluster b/ocluster index 513c170..81a524b 160000 --- a/ocluster +++ b/ocluster @@ -1 +1 @@ -Subproject commit 513c17095fa97f3418970180cd72de880869c292 +Subproject commit 81a524b46b66e90cdb9fa19bd5f8505faba3d2f1