Engine icon indicating copy to clipboard operation
Engine copied to clipboard

All-in-one minimal multi-stage Dockerfiles, and GitHub action to buil…

Open nickcmaynard opened this issue 6 months ago • 0 comments

This PR adds:

  1. Multi-stage Dockerfiles for centos-stream9, debian11 and fedora40 which compile & test (with Examples), and package minimal container images for executing ore-engine within a Container, thus avoiding the need for users to install dependencies, compile, etc. manually.
  2. A Github Action workflow to do this for centos-stream9 and debian11 all automatically, creating release-quality minimal container images in the ghcr.io container image repository associated with OpenSourceRisk (see https://github.com/nickcmaynard/ore-engine/pkgs/container/ore-engine)
  3. Documentation on usage of the released container images from (2).
  4. A tweak to the Python examples helper to allow it to search the PATH for ore, allowing execution of an Example within the container.

Limitations:

  1. I have not fully tested the build triggers, and it might be helpful to be able to manually run the workflow against a certain Git tag for manual release purposes.
  2. debian11 is not debian12 due to the Python-based Examples/ test suite's requirement for the "nose" library. "nose" needs Python 3.9 and debian12 doesn't have that. This area needs some work from a Python-capable person - "nose" appears to be beset with maintenance and IP concerns.

nickcmaynard avatar Jul 31 '24 22:07 nickcmaynard