• boklm's avatar
    Bug 23039: add support for runc 1.0.0 · 209818fc
    boklm authored
    The var_p/runc100 option is used to detect the version of runc we are
    using. The format of the output of `runc --version` is different in both
    versions, so it is not easy to parse. However I noticed that runc 0.1.1
    does not exit with an error when we try to use a command that does not
    exist while runc >= 1.0.0 does, so we use that to detect the runc
    version we are using.
    
    When using runc >= 1.0.0, we use `runc run` instead of `runc start':
    https://github.com/opencontainers/runc/commit/c669b8d1568633c68bd915561ceb2e5ecc1bfc6a
    
    In the runc config.json file, the format of the capabilities has been
    changed. Instead of having one list of capabilities, there are now
    separate lists for bounding, effective, inheritable, permitted and
    ambient capabilities (and we use the same list for all of them):
    https://github.com/opencontainers/runtime-spec/commit/eb114f057094dd2314682d55f8cb9c189915ac86
    
    We also add /proc/timer_list and /sys/firmware to the "maskedPaths", as
    those paths are now listed by default in the config.json file generated
    by `runc spec` with runc 1.0.0.
    209818fc