From ef323a0241eb8e0ec5dd9180e15e87599d9ca618 Mon Sep 17 00:00:00 2001
From: Nils Philippsen <nils@redhat.com>
Date: Sep 16 2021 14:27:37 +0000
Subject: [PATCH 1/2] Add DNF Counting SOP skeleton


Signed-off-by: Nils Philippsen <nils@redhat.com>

---

diff --git a/modules/sysadmin_guide/nav.adoc b/modules/sysadmin_guide/nav.adoc
index 2cbc637..8d50a04 100644
--- a/modules/sysadmin_guide/nav.adoc
+++ b/modules/sysadmin_guide/nav.adoc
@@ -21,6 +21,7 @@
 ** xref:datanommer.adoc[datanommer - SOP]
 ** xref:debuginfod.adoc[Fedora Debuginfod Service - SOP]
 ** xref:departing-admin.adoc[Departing admin - SOP]
+** xref:dnf-counting.adoc[DNF Counting - SOP]
 ** xref:dns.adoc[DNS repository for fedoraproject - SOP]
 ** xref:docs.fedoraproject.org.adoc[Docs - SOP]
 ** xref:fas-notes.adoc[Fedora Account System - SOP]
diff --git a/modules/sysadmin_guide/pages/dnf-counting.adoc b/modules/sysadmin_guide/pages/dnf-counting.adoc
new file mode 100644
index 0000000..3947ef4
--- /dev/null
+++ b/modules/sysadmin_guide/pages/dnf-counting.adoc
@@ -0,0 +1,24 @@
+= DNF Counting
+
+We use DNF Counting to get statistics about the number of Fedora
+installations.
+
+== Contact Information
+
+Owner::
+  Fedora Infrastructure Team
+Contact::
+  #fedora-admin, #fedora-noc
+Servers::
+  log01, proxy0*
+Purpose::
+  Give interested parties information about the number of Fedora
+  installations.
+Repositories::
+  * https://pagure.io/mirrors-countme
+  * https://pagure.io/fedora-infra/ansible/blob/main/f/roles/web-data-analysis
+
+== How it works
+
+Scripts sync http log files from proxies, combine the log data,
+summarize per Fedora version and spin, and produce graphs.

From 46569e38c2182a8e48fcf6c796026398987a0138 Mon Sep 17 00:00:00 2001
From: Nils Philippsen <nils@redhat.com>
Date: Sep 16 2021 16:26:01 +0000
Subject: [PATCH 2/2] Document how to release mirrors-countme


Signed-off-by: Nils Philippsen <nils@redhat.com>

---

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.

