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

Docker Next Generation - Per language container strategy #7474

Merged
merged 6 commits into from
Sep 26, 2023

Commits on Sep 26, 2023

  1. feat(docker): Use per language container strategy

    ORT language components are built now in independent images.
    This enables the possibility to create custom tailored containers
    with only the required language components, reducing final size
    and improving build process.
    
    Main runtime contains Python, NodeJS, Rust, Ruby and Golang components.
    Other language components have their own images built, and can be
    included on custom containers.
    
    Signed-off-by: Helio Chissini de Castro <heliocastro@gmail.com>
    heliocastro committed Sep 26, 2023
    Configuration menu
    Copy the full SHA
    79c7341 View commit details
    Browse the repository at this point in the history
  2. feat(docker): Use runtime to do all the work for binaries

    Signed-off-by: Helio Chissini de Castro <heliocastro@gmail.com>
    heliocastro committed Sep 26, 2023
    Configuration menu
    Copy the full SHA
    c31e05a View commit details
    Browse the repository at this point in the history
  3. feat(docker): Provide extended image with all components

    Signed-off-by: Helio Chissini de Castro <heliocastro@gmail.com>
    heliocastro committed Sep 26, 2023
    Configuration menu
    Copy the full SHA
    2776cf0 View commit details
    Browse the repository at this point in the history
  4. feat(docker): Use jobs over workflow dependency

    Workflow dependencies relies on a single workflow,
    which make build pipelines for multiple docker containers
    complex and most of the time erratic.
    
    Move to single jobs dependency based with a internal action
    to check and build images if needed improve the logic of the
    process and allow to visually see the running pipeline.
    
    The pipeline will run on following cases:
    - On pull_request if .versions file is changed, but not
      publishing images on the registry.
    - On push or workflow_dispatch, publishing to defined registry.
    
    Signed-off-by: Helio Chissini de Castro <heliocastro@gmail.com>
    heliocastro committed Sep 26, 2023
    Configuration menu
    Copy the full SHA
    acf1e28 View commit details
    Browse the repository at this point in the history
  5. chore(docker): Use ort namespace

    Language images lives under the ort namespace to avoid
    clash on main organization image naming,
    e.g. ghcr.io/oss-review-toolkit/python versus
    ghcr.io/oss-review-toolkit/ort/python.
    
    Signed-off-by: Helio Chissini de Castro <heliocastro@gmail.com>
    heliocastro committed Sep 26, 2023
    Configuration menu
    Copy the full SHA
    da16b46 View commit details
    Browse the repository at this point in the history
  6. chore(docker): Use consistent naming and descriptions

    Signed-off-by: Helio Chissini de Castro <heliocastro@gmail.com>
    heliocastro committed Sep 26, 2023
    Configuration menu
    Copy the full SHA
    0e19bbc View commit details
    Browse the repository at this point in the history