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

rewrite depsolve external #196

Closed
wants to merge 20 commits into from

Commits on Sep 16, 2024

  1. test: add a new normalize_rpm_refs helper

    This commit adds a new `normalize_rpm_refs()` helper that will
    normalize the rpm file inputs for comparison, i.e. it will sort
    the hashes and remove duplicates. This is important because the
    "images" library writes duplicated input rpm packages from the
    inputs as duplicated hashes into the references.
    
    But in our test we only need to worry about that exactly the right
    rpm files got included, the order is not important.
    mvo5 committed Sep 16, 2024
    Configuration menu
    Copy the full SHA
    acdfea1 View commit details
    Browse the repository at this point in the history
  2. external: remove unused subcommands

    Remove unused subcommands of the `osbuild_external`.
    
    Signed-off-by: Simon de Vlieger <[email protected]>
    supakeen authored and mvo5 committed Sep 16, 2024
    Configuration menu
    Copy the full SHA
    c12c626 View commit details
    Browse the repository at this point in the history
  3. external: don't expect name

    Externals no longer receive their name within the tree structure that
    they get from `otk`.
    
    Signed-off-by: Simon de Vlieger <[email protected]>
    supakeen authored and mvo5 committed Sep 16, 2024
    Configuration menu
    Copy the full SHA
    b7707e6 View commit details
    Browse the repository at this point in the history
  4. external: split out the depsolve external

    This splits out the depsolve external along the lines of the previously
    written partition externals. Using the external is now a two-step
    process where you run one external in a define and then use its output
    to generate stages and sources.
    
    Signed-off-by: Simon de Vlieger <[email protected]>
    supakeen authored and mvo5 committed Sep 16, 2024
    Configuration menu
    Copy the full SHA
    5284567 View commit details
    Browse the repository at this point in the history
  5. example: centos9-qcow/ami with depsolve

    Use depsolver for the CentOS 9 QCOW and AMI omnifests
    
    Signed-off-by: Simon de Vlieger <[email protected]>
    supakeen authored and mvo5 committed Sep 16, 2024
    Configuration menu
    Copy the full SHA
    d2e61cf View commit details
    Browse the repository at this point in the history
  6. external: mock depsolve

    In `images` we mock depsolves so we can run them very fast under test.
    This introduces the same functionality to the depsolve external.
    
    Signed-off-by: Simon de Vlieger <[email protected]>
    supakeen authored and mvo5 committed Sep 16, 2024
    Configuration menu
    Copy the full SHA
    1c1ac86 View commit details
    Browse the repository at this point in the history
  7. external: use const.internal

    Use a `const.internal` subkey for the dnf4 depsolving external. This
    follows the ideas set forth in the partition tables. `.const` means that
    the format can be considered un-changing and `.internal` means that this
    shouldn't be used directly but only through other externals in the same
    group.
    
    Signed-off-by: Simon de Vlieger <[email protected]>
    supakeen authored and mvo5 committed Sep 16, 2024
    Configuration menu
    Copy the full SHA
    24645b4 View commit details
    Browse the repository at this point in the history
  8. external: rename depsolve externals

    Renames the depsolve externals to fit into the partition externals
    naming scheme.
    
    Signed-off-by: Simon de Vlieger <[email protected]>
    supakeen authored and mvo5 committed Sep 16, 2024
    Configuration menu
    Copy the full SHA
    364d4f3 View commit details
    Browse the repository at this point in the history
  9. test: copy python externals into externals

    Bit of a hacky way to copy the (installed) Python externals into the
    search path for the manifest tests. Also sets testing environment to
    True.
    
    Signed-off-by: Simon de Vlieger <[email protected]>
    supakeen authored and mvo5 committed Sep 16, 2024
    Configuration menu
    Copy the full SHA
    64ce109 View commit details
    Browse the repository at this point in the history
  10. example: sort packages

    Signed-off-by: Simon de Vlieger <[email protected]>
    supakeen authored and mvo5 committed Sep 16, 2024
    Configuration menu
    Copy the full SHA
    e660454 View commit details
    Browse the repository at this point in the history
  11. external: fix depsolve output

    Properly output the RPM stage.
    
    Signed-off-by: Simon de Vlieger <[email protected]>
    supakeen authored and mvo5 committed Sep 16, 2024
    Configuration menu
    Copy the full SHA
    53eb4b2 View commit details
    Browse the repository at this point in the history
  12. example: drop gpg key(s)

    Drop the second GPG key as they are not in the reference manifests.
    
    Signed-off-by: Simon de Vlieger <[email protected]>
    supakeen authored and mvo5 committed Sep 16, 2024
    Configuration menu
    Copy the full SHA
    cd69d3e View commit details
    Browse the repository at this point in the history
  13. example: remove unused file

    Signed-off-by: Simon de Vlieger <[email protected]>
    supakeen authored and mvo5 committed Sep 16, 2024
    Configuration menu
    Copy the full SHA
    9978335 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    569159f View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    4428e7e View commit details
    Browse the repository at this point in the history
  16. external: provide package information

    Provide a map keyed by package name of the depsolve result that can be
    used by omnifests to look up package information.
    
    Signed-off-by: Simon de Vlieger <[email protected]>
    supakeen committed Sep 16, 2024
    Configuration menu
    Copy the full SHA
    3810989 View commit details
    Browse the repository at this point in the history
  17. chore: remove warning comments

    With the rewrite of the depsolver these are not extremely poc anymore.
    
    Signed-off-by: Simon de Vlieger <[email protected]>
    supakeen committed Sep 16, 2024
    Configuration menu
    Copy the full SHA
    6b734b2 View commit details
    Browse the repository at this point in the history
  18. external: exception contains stderr and stdout

    Signed-off-by: Simon de Vlieger <[email protected]>
    supakeen committed Sep 16, 2024
    Configuration menu
    Copy the full SHA
    14967a7 View commit details
    Browse the repository at this point in the history
  19. external: remove a line of code

    Signed-off-by: Simon de Vlieger <[email protected]>
    supakeen committed Sep 16, 2024
    Configuration menu
    Copy the full SHA
    c141f07 View commit details
    Browse the repository at this point in the history
  20. external/example: use solved kernel version

    Use the depsolved kernel version and release for grub. Note that this
    assumes there is a `packages.os` which might not be true for all
    situations. Perhaps this should  be a separate define in the examples.
    
    Signed-off-by: Simon de Vlieger <[email protected]>
    supakeen committed Sep 16, 2024
    Configuration menu
    Copy the full SHA
    a7b8a91 View commit details
    Browse the repository at this point in the history