From 16cde364cb0bb100ab7e2a66b31be6c082108c09 Mon Sep 17 00:00:00 2001 From: Jan Kaluza Date: Apr 15 2020 13:54:24 +0000 Subject: Initial readme. --- diff --git a/README.md b/README.md index 04a0952..fbfb403 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,37 @@ -# cccc +# Compose Configuration Compare and Check tool (CCCC) -Compose Configuration Compare and Check tool \ No newline at end of file + +## Motivation + +Before merging any compose configuration change, we should be able to verify +how the resulting compose changes. For example, when adding new packages +to a comps file, we should be able to see all the packages pulled-in as +dependencies and we should also ensure this compose passes basic sanity tests. + + +## CCCC tool + +The CCCC tool takes following inputs: + +- git repository/commit with default Pungi configuration (For example pointing to some commit/branch in https://pagure.io/pungi-fedora/). +- default Pungi configuration file name (For example ``fedora.conf``). +- git repository with PR for Pungi configuration repository. +- git repository with PR for Comps repository. +- git repository with PR for module-defaults repository. + +The CCCC tool then uses this input to create two minimal composes using the ODCS (On Demand Compose Service): + +- The default compose using the unchanged configuration from git repository with default Pungi configuration. +- The PR compose with the PRs applied. + +The CCCC tool compares these two composes and prints the difference to stdout. + + +## CCCC tool use-case + +The plan is to have the Jenkins Job running the CCCC tool on any PR against +pungi-fedora, comps and module-defaults repositories. The summary of +compose difference will be added as comment to the PR. + +It should therefore be clear if the most important parts of the compose still +works with the PR applied and how the PR changed the compose.