Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(Re-)Dockerise Windows build #73

Closed
23 of 27 tasks
rolyp opened this issue Nov 11, 2020 · 1 comment
Closed
23 of 27 tasks

(Re-)Dockerise Windows build #73

rolyp opened this issue Nov 11, 2020 · 1 comment

Comments

@rolyp
Copy link
Collaborator

rolyp commented Nov 11, 2020

We dropped Docker for simplicity when moving the Windows build from Azure to GitHub Actions. It probably makes sense to containerise again because the Windows build is particularly slow. See Original Dockerfile.

To do:

  • get working inside container
    • docker run –rm -it -v ${PWD}:C:\data esig_builder_windows_64 and cd \data\build\Windows
    • .\windows-wheel-builder.ps1 14.1 64 C:\Users\runneradmin\AppData\Local\Programs\Python\Python35 3.5.4/python-3.5.4-amd64.exe
      • Python path (install target in windows-2019 GitHub VM) doesn’t exist in Docker image
        • windows-wheel-builder.ps1 to fail if $py_install_dir doesn’t exist
        • use C:\Users\ContainerAdministrator\AppData\Local\Programs\Python\Python35 instead
    • C:\data\build\recombine` doesn't exist
      • add $ErrorActionPreference = “Stop” (fails fast because pushd is shorthand for a cmdlet)?
      • manually run git-preamble.sh
    • MSBuild.exe fails building recombine
      • download/install from built asset instead (see
      • BuildTools\MSBuild\Microsoft\VC\v160\Microsoft.Cpp.Default.props not found
      • error MSB8036: The Windows SDK version 8.1 was not found.
      • switch to Visual Studio 2017 (15.0) and install Windows 8.1 SDK component – recombine uses 2019

Done/dropped:

  • create Docker for Windows container using mcr.microsoft.com/windows/servercore:ltsc2019 base image
  • attempt to run rest of build-wheel.ps1 monolithically to start with – can I see trace output?
  • Invoke-WebRequest : Cannot process command because of one or more missing mandatory parameters: Uri. in doall-windows.ps1 – add .exe to curl
  • cmake not found
    • try .NET image ❌
    • install chocolatey and use to install cmake
  • The CMAKE_C_COMPILER: cl is not a full path and was not found in the PATH.
    • run C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat ❌ can’t find path
    • install VSBuildTools
      • iex command to download choco installer no longer works – ah, previous script resets escape to `
    • useENTRYPOINT with VsDevCmd.bat
  • launch wheel build inside container
    • extract windows-wheel-builder.sh to do the bit that runs inside the container
    • correct volume specification
  • automation step to build Docker image inside Azure VM
@rolyp rolyp changed the title Dockerise Windows build (Re-)Dockerise Windows build Dec 16, 2020
@rolyp
Copy link
Collaborator Author

rolyp commented Jan 29, 2021

Performance issues solved by moving to Miniconda installation of MKL, so this unlikely to produce any benefits.

@rolyp rolyp closed this as completed Jan 29, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant