summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wirzenius <lwirzenius@wikimedia.org>2019-05-07 14:56:58 +0300
committerLars Wirzenius <lwirzenius@wikimedia.org>2019-05-07 14:56:58 +0300
commit0277ab85eb730d996b1bab7a70c9fbbfa4364198 (patch)
treee2101fabb25f1e4a0b951d7f1b5e66d697787d3e
parentdd071c99dada3f54d68da8a7acce6aa29d10750c (diff)
downloadwmf-ci-arch-0277ab85eb730d996b1bab7a70c9fbbfa4364198.tar.gz
Add: requirements on ops for CI
-rw-r--r--ci-arch.html5
-rw-r--r--ci-arch.mdwn14
-rw-r--r--ci-arch.pdfbin279909 -> 280416 bytes
3 files changed, 19 insertions, 0 deletions
diff --git a/ci-arch.html b/ci-arch.html
index c6bb78e..d864866 100644
--- a/ci-arch.html
+++ b/ci-arch.html
@@ -122,6 +122,11 @@
<li><strong>ENFORCETESTS</strong> Must allow Release Engineering team to enforce tests on top of what a self-serving developer specifies, to allow us to set minimal technical standards.</li>
</ul></li>
<li><p><strong>CACHEDEPS</strong> Must support dependency caching – we have castor, maybe we could do better? Maybe some CI systems have this figured out? This means, for example, caching npm and PyPI packages so that every build doesn’t need to download them directly from the centralised package repositories. This is needed for speed.</p></li>
+<li><p><strong>GOODOPS</strong>: The CI system needs to maintained in a proper way, with monitoring, multiple people who can get notified of problems and can fix things.</p>
+<ul>
+<li><p><strong>MONITORING</strong>: The CI system needs to have monitoring to automatically alert of problems.</p></li>
+<li><p><strong>ONCALL</strong>: There must be multiple, named people who can be alerted to deal with problems in CI that users can’t deal with themselves. These people need to cover enough time zones to be available at almost all times, and have enough overlap to cover for each other when they’re not availble due to illness, vacation, travel, or such reasons.</p></li>
+</ul></li>
</ul>
<h2 id="softer-requirements">Softer requirements</h2>
<p>These requirements are even more easily negotiated.</p>
diff --git a/ci-arch.mdwn b/ci-arch.mdwn
index b295d19..0d38f40 100644
--- a/ci-arch.mdwn
+++ b/ci-arch.mdwn
@@ -254,6 +254,20 @@ to a minor degree.
build doesn't need to download them directly from the centralised
package repositories. This is needed for speed.
+* **GOODOPS**: The CI system needs to maintained in a proper way, with
+ monitoring, multiple people who can get notified of problems and can
+ fix things.
+
+ * **MONITORING**: The CI system needs to have monitoring to
+ automatically alert of problems.
+
+ * **ONCALL**: There must be multiple, named people who can be
+ alerted to deal with problems in CI that users can't deal with
+ themselves. These people need to cover enough time zones to be
+ available at almost all times, and have enough overlap to cover
+ for each other when they're not availble due to illness,
+ vacation, travel, or such reasons.
+
## Softer requirements
These requirements are even more easily negotiated.
diff --git a/ci-arch.pdf b/ci-arch.pdf
index b714254..e1e4ec9 100644
--- a/ci-arch.pdf
+++ b/ci-arch.pdf
Binary files differ