diff --git a/docs/.pages b/docs/.pages index 06765ee..8fa8a40 100644 --- a/docs/.pages +++ b/docs/.pages @@ -1,4 +1,6 @@ --- nav: - ... | index.md + - ... | about.md + - Documentation | documentation ... diff --git a/docs/CNAME b/docs/CNAME new file mode 100644 index 0000000..492df2a --- /dev/null +++ b/docs/CNAME @@ -0,0 +1 @@ +core.sig.rocky.page diff --git a/docs/documentation/.pages b/docs/documentation/.pages new file mode 100644 index 0000000..c781ea1 --- /dev/null +++ b/docs/documentation/.pages @@ -0,0 +1,6 @@ +--- +nav: + - ... | index.md + - Composing Releases | compose.md + - Empanadas | empanadas.md +... diff --git a/docs/documentation/index.md b/docs/documentation/index.md new file mode 100644 index 0000000..ae3cc8f --- /dev/null +++ b/docs/documentation/index.md @@ -0,0 +1,56 @@ +--- +title: Composing Releases +--- + +This section goes over at a high level how we compose releases for Rocky Linux. +As most of our tools are home grown, we have made sure that the tools are open +source and in our git services. + +This page should serve as an idea of the steps we generally take and we hope +that other projects out there who wish to also use our tools can make sure they +can use them in this same way, whether they want to be an Enterprise Linux +derivative or another project entirely. + +## Build System and Tools + +The tools in use for the distribution are in the table below. + +| Tool | Maintainer | Code Location | +|-----------------|-------------------|---------------------------------------------------------------------| +| srpmproc | SIG/Core at Rocky | [GitHub](https://github.com/rocky-linux/srpmproc) | +| empanadas | SIG/Core at Rocky | [sig-core-toolkit](https://github.com/rocky-linux/sig-core-toolkit) | +| Peridot | SIG/Core at Rocky | | +| MirrorManager 2 | Fedora Project | [MirrorManager2](https://github.com/fedora-infra/mirrormanager2) | + +For Rocky Linux to be build, we use `Peridot` as the build system and +`empanadas` to "compose" the distribution. As we do not use Koji for Rocky +Linux beyond version 9, pungi no longer can be used. Peridot instead takes +pungi configuration data and comps and transforms them into a format it +can understand. Empanadas then comes in to do the "compose" and sync +all the repositories down. + +## Full Compose (major or minor releases) + +Step by step, it looks like this: + +* Distribution is built and maintained in Peridot +* Comps and pungi configuration is converted into the peridot format for the project +* Repositories are created in yumrepofs based on the configuration provided +* In Parallel: + * Repositories are synced as a "full run" in empanadas + * Lorax is ran using empanadas in the peridot cluster +* Lorax results are pulled down from an S3 bucket +* DVD images are built for each architecture +* Compose directory is synced to staging for verification + +## General Updates + +Step by step, it looks like this: + +* Distribution is maintained in Peridot +* Updates are built, repos are then "hashed" in yumrepofs +* Empanadas syncs updates as needed, either per repo or all repos at once +* Updates are synced to staging to be verified +* Staging is synced to production to allow mirror syncing + +{% include "resources_bottom.md" %} diff --git a/docs/include/resources_bottom.md b/docs/include/resources_bottom.md new file mode 100644 index 0000000..365a10d --- /dev/null +++ b/docs/include/resources_bottom.md @@ -0,0 +1,53 @@ + +