[RELEASE] Window native installer (no Docker!)

After much work—including native [Microsoft Visual Studio (MSVC)] Windows porting of Redis, Valkey, and Memcached—I now have Open edX running completely natively on Windows.

https://github.com/SamuelMarks/libscript/releases/download/v0.0.1/openedx-offline-verawood.1.msi

You may remember me from 2017 when I wrote custom multicloud deployment scripts (in Python) for deploying Open edX. Eucalyptus I think was the last supported there.

Then I perambulated around building package managers in Rust, Go, and C.

Finally, I settled on a new design in POSIX /bin/sh, Windows Command Prompt (.cmd,.bat), and Microsoft PowerShell. That way a machine with nothing installed can be fully bootstrapped. Paving the way for new image bakes, and deploying without hoisting issues (e.g., deploying clustered Kubernetes and clustered PostgreSQL and shared reverse proxies; without requiring their preexistence or preexistence of a particular Python version, Puppet agent, etc.).

Unlike my old Python multicloud Open edX deployment library, this new one isn’t limited to a particular version of Ubuntu as its target host. This new Open edX installer supports and is tested [via Vagrant on]:

  • Windows
  • Alpine Linux (.apk musl based distribution; known for its small size)
  • Rocky Linux (.rpm distribution; known for its Fedora / RHEL compat)
  • FreeBSD
  • SunOS→Solaris→OpenSolaris→illumos OmniOS (UNIX!)

Attached are screenshots of the installer. My libscript enables export to .msi, Dockerfile, docker-compose.yml, .pkg, .dmg, and more. Including selectable during the OS installation process of: Linux, illumos, and/or FreeBSD.

If you like this, give my GitHub - SamuelMarks/libscript: Docker-optional zero-dependency multicloud cross-platform deploys (Windows, Linux, BSD, macOS, SunOS, …) · GitHub a GitHub star :star: - Also let me know what other features you would like. For example, can port the last 10+ release versions of Open edX and incorporate upgrade paths using proper .msi mechanisms. Was also thinking of clustered {Redis,MySQL,…} deploys, both individual cluster and multicluster (Mesos, Kubernetes, etc.) variants. And might publish some variants to the various cloud marketplaces.

Hi @SamuelMarks! Congratulations!

I’m curious about a couple of things:

  1. Do you currently run Open edX sites from this kind of deployment?
  2. The web screenshots here don’t look like our platform. Why is that?

Thank you.