diff --git a/modules/sysadmin_guide/pages/dnf-counting.adoc b/modules/sysadmin_guide/pages/dnf-counting.adoc index 3947ef4..81650c3 100644 --- a/modules/sysadmin_guide/pages/dnf-counting.adoc +++ b/modules/sysadmin_guide/pages/dnf-counting.adoc @@ -22,3 +22,114 @@ Repositories:: Scripts sync http log files from proxies, combine the log data, summarize per Fedora version and spin, and produce graphs. + +== `mirrors-countme` + +The `mirrors-countme` project creates statistics from the already +combined log data. + +=== Deploying Upstream Changes + +Prerequisites: A change (bug fix or feature) is available in the `main` +branch of `mirrors-countme`. + +. Publish an upstream release ++ +From a clone of the upstream repository: ++ +.. In `countme/version.py`, bump `__version__` (e.g. to `0.0.7`) and +commit the change, e.g.: ++ +.... +git commit -s -m "Bump version to 0.0.7" -- countme/version.py +.... +.. Tag the previous change with a GPG-signed tag: ++ +.... +git tag -s 0.0.7 +.... +.. Push both the change and the tag: ++ +.... +git push origin main 0.0.7 +.... +.. Create a source tarball (this will be created as e.g. +`dist/mirrors-countme-0.0.7.tar.gz`): ++ +.... +python setup.py sdist +.... +.. https://pagure.io/mirrors-countme/upload[Upload this tarball] to the +`mirrors-countme` releases folder +. Update and Build the `python-mirrors-countme` Fedora Package ++ +From a clone of the Fedora package repository, in the `rawhide` branch: ++ +.. Bump the version in `python-mirrors-countme.spec`. No other changes +are necessary, the packages uses automatic release fields and changelog. ++ +.. Download the source tarball, either manually or one of: ++ +.... +spectool -g python-mirrors-countme.spec +.... ++ +.... +rpmspectool get python-mirrors-countme.spec +.... +.. Upload the source tarball to the lookaside cache: ++ +.... +fedpkg new-sources mirrors-countme-0.0.7.tar.gz +.... +.. Commit the changes to the repository, e.g.: ++ +.... +git commit -s -m "Version 0.0.7" -- python-mirrors-countme.spec +.... +.. Push the changes and build: ++ +.... +git push && fedpkg build +.... +.. For any other active Fedora and EPEL branch, fast forward them to the +state of the `rawhide` branch, push and build, e.g.: ++ +.... +git checkout epel8 \ +&& git merge --ff-only rawhide \ +&& git push \ +&& fedpkg build +.... +. Submit Fedora/EPEL Package Updates ++ +Either submit the update via the +https://bodhi.fedoraproject.org/updates/new[Bodhi web interface], or +from the command line in the respective checked out Fedora or EPEL +branch, e.g.: ++ +.... +fedpkg update --type bugfix --notes 'Put in some notes!' +.... +. Tag with Infra-Tags in Koji +.. Tag the build into the respective infra candidate tag in Koji, e.g.: ++ +.... +koji tag-build epel8-infra-candidate +.... +.. Check that the build was picked up and signed (this should take no +more than a few minutes), e.g.: ++ +.... +koji buildinfo python-mirrors-countme-0.0.7-1.el8 +.... ++ +The build must be tagged with the corresponding `*-infra-stg` tag. +.. Tag the build into the respective infra production tag in Koji, e.g.: ++ +.... +koji tag-build epel8-infra +.... + +When the respective infra tag repository is updated, the new version +should be ready to be installed/updated in our infrastructure.