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

Podman support #30

Merged
merged 5 commits into from
Nov 17, 2023
Merged

Podman support #30

merged 5 commits into from
Nov 17, 2023

Commits on Nov 17, 2023

  1. run.py: reformat docstring

    It currently passes format checks only by abuse, and won't pass any more
    with following commits.
    
    Signed-off-by: Yann Dirson <[email protected]>
    ydirson committed Nov 17, 2023
    Configuration menu
    Copy the full SHA
    617aa70 View commit details
    Browse the repository at this point in the history
  2. README: reduce the explicit mentions of Docker

    We're going to introduce podman support, this prepares the doc to make
    real changes easier to review.
    
    Signed-off-by: Yann Dirson <[email protected]>
    ydirson committed Nov 17, 2023
    Configuration menu
    Copy the full SHA
    973e4ea View commit details
    Browse the repository at this point in the history
  3. Allow using podman as alternative to docker

    podman does not interact with a daemon running as root, so unlike docker
    it will not be able to modify files owned by arbitrary users including root.
    
    To keep with current practices, we need to pass --userns=keep-id so it can
    write into the user's directories: the `builder` user inside the container
    is indeed equivalent to the user launching the container.
    
    All other users including root are mapped UIDs not existing on the host
    (typically 100000 and above), so any file created by such users in build
    trees in the container will (by design) have those (numeric-only) owners
    on the host if they remain after the build.
    
    Signed-off-by: Yann Dirson <[email protected]>
    ydirson committed Nov 17, 2023
    Configuration menu
    Copy the full SHA
    7eb9409 View commit details
    Browse the repository at this point in the history
  4. run.py: identify podman hiding behind podman-docker

    `podman-docker` installs a `docker` binary calling `podman`, we have to
    call it to discover how to properly handle it.
    
    Signed-off-by: Yann Dirson <[email protected]>
    ydirson committed Nov 17, 2023
    Configuration menu
    Copy the full SHA
    16b6d7a View commit details
    Browse the repository at this point in the history
  5. Fallback to podman automatically if docker is not installed

    Signed-off-by: Yann Dirson <[email protected]>
    ydirson committed Nov 17, 2023
    Configuration menu
    Copy the full SHA
    7b6988b View commit details
    Browse the repository at this point in the history