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

add fedora-ostree-pruner #79

Merged
merged 6 commits into from
Dec 13, 2022
Merged

Commits on Dec 13, 2022

  1. add fedora-ostree-pruner

    This will be run in Fedora's infrastructure and will prune out OSTree
    repos that are used to serve content to Fedora users.
    dustymabe committed Dec 13, 2022
    Configuration menu
    Copy the full SHA
    0b5c637 View commit details
    Browse the repository at this point in the history
  2. fedora-ostree-pruner: generic prune for deleted refs

    Just delete the ref first and then we'll do a generic prune for
    unreachable objects after looping through all the refs in the repo.
    
    This also means if more than one refs points to a commit we won't delete
    it like we were doing with the `ostree prune --delete-commit=$commit`
    approach.
    dustymabe committed Dec 13, 2022
    Configuration menu
    Copy the full SHA
    f72d12f View commit details
    Browse the repository at this point in the history
  3. fedora-ostree-pruner: drop prune_prod_repo_deltas function

    When we prune commits the static deltas will get dropped too so this
    function is not needed.
    dustymabe committed Dec 13, 2022
    Configuration menu
    Copy the full SHA
    9a7b0d1 View commit details
    Browse the repository at this point in the history
  4. fedora-ostree-pruner: generic prune for all unreachable objects

    OStree just learned a new `--commit-only` option to `ostree prune` [1].
    This allows us to just delete the commits in the history of a ref that
    we desire to prune based on our policy, which is a fast operation. After
    we've deleted all the commit objects we can then go back and do one
    sweep over the repo to now clean up any unreachable objects.
    
    Previously everytime we ran `ostree prune` and deleted a certain amount
    of history from a ref the prune operation also computed reachability for
    every object in the repo at that time, which is expensive. If you have
    many refs this means the entire pruning process can take a long time.
    With this new mode of operation deleting the commit objects should take
    little time per run and then we can have one big expensive run at the
    very end that does the expensive reachability determination for every
    object in the repo.
    dustymabe committed Dec 13, 2022
    Configuration menu
    Copy the full SHA
    7616cc9 View commit details
    Browse the repository at this point in the history
  5. fedora-ostree-pruner: add a catch_exceptions_and_continue decorator

    This commit adds a decorator that will catch execptions and continue
    execution so that we don't lose logs in the container we are running
    in.
    dustymabe committed Dec 13, 2022
    Configuration menu
    Copy the full SHA
    ea1f901 View commit details
    Browse the repository at this point in the history
  6. cci.Jenkinsfile: add python3-toml to dep list

    This is no longer baked into COSA for some reason and config-bot
    needs it.
    dustymabe committed Dec 13, 2022
    Configuration menu
    Copy the full SHA
    178b1fe View commit details
    Browse the repository at this point in the history