summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wirzenius <lwirzenius@wikimedia.org>2019-05-07 15:39:44 +0300
committerLars Wirzenius <lwirzenius@wikimedia.org>2019-05-07 15:39:44 +0300
commit4fa09c8750f2984f0b58210b127433fcd14e7faa (patch)
tree63f37169a551a800ec41f6d88e2f172032477224
parent80a065218b7f784d299e8c7ce2ee95234dc3e20c (diff)
downloadwmf-ci-arch-4fa09c8750f2984f0b58210b127433fcd14e7faa.tar.gz
Add: stakeholders
Also tweak margins a bit.
-rw-r--r--Makefile2
-rw-r--r--ci-arch.html15
-rw-r--r--ci-arch.mdwn25
-rw-r--r--ci-arch.pdfbin284207 -> 285841 bytes
4 files changed, 41 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index 34ae82f..138ad48 100644
--- a/Makefile
+++ b/Makefile
@@ -16,7 +16,7 @@ ci-arch.pdf ci-arch.html: ci-arch.mdwn ecosystem.svg pipeline.svg
-Vmainfont:FreeSerif \
-Vsansfont:FreeSans \
-Vmonofont:FreeMonoBold \
- -Vgeometry:top=2cm,bottom=2.5cm,left=2cm,right=1cm \
+ -Vgeometry:top=2cm,bottom=2.5cm,left=5cm,right=2cm \
-o $@ $<
diff --git a/ci-arch.html b/ci-arch.html
index f9a1e90..9672f31 100644
--- a/ci-arch.html
+++ b/ci-arch.html
@@ -23,6 +23,8 @@
<ul>
<li><a href="#introduction">Introduction</a><ul>
<li><a href="#vision-for-ci">Vision for CI</a></li>
+<li><a href="#overall-solution-approach">Overall solution approach</a></li>
+<li><a href="#stakeholders">Stakeholders</a></li>
</ul></li>
<li><a href="#requirements">Requirements</a><ul>
<li><a href="#very-hard-requirements">Very hard requirements</a></li>
@@ -62,6 +64,19 @@
<p>This is Lars’s personal opinion, for now, but it’s based on discussions with various people while at WMF. It’s not expected to be new, radical, or controversial, compared to status quo.</p>
<p>In the future, CI at WMF serves WMF, its developers, and the Wikipedia movement by making software development more productive, more confident, and faster. The cycle time of changes (the time from idea to running in production) is short: for a trivial change, as little as five minutes. At the same time, the safety and security of production is protected: malicious changes do not get deployed, mistakes are rare, and can easily be fixed or the problematic change reverted.</p>
<p>Production here means all the software needed to run all the sites (Wikipedias in different languages, Commons, etc), as well as supporting services, including tooling and services that supports development.</p>
+<h2 id="overall-solution-approach">Overall solution approach</h2>
+<p>The overall approach to the architecture of the CI system, and the workflow supported by it, is to keep all changes in version control (git), which includes code, configuration, and scripts for building and deploying. When a change to version control is pushed, CI builds and tests the change, humans review the change, and if all seems to be in order, CI deploys to production.</p>
+<h2 id="stakeholders">Stakeholders</h2>
+<p>Stakeholders in the WMF CI system include:</p>
+<ul>
+<li>RelEng, who are responsible for keeping CI running</li>
+<li>SRE, who are responsible for the infrastrcture on which CI runs</li>
+<li>MediaWiki developers, who develop MW and its extensions, and will (eventually) be doing MW releases for external MW deployers</li>
+<li>staff and volunteer developers of anything else built, tested, and deployed by CI</li>
+<li>WMF, who pays for CI using donations</li>
+<li>the Wikipedia movement, who use sites and services operated by WMF</li>
+<li>all of humanity, who benefit from having knowledge freely disseminated</li>
+</ul>
<h1 id="requirements">Requirements</h1>
<p>This chapter lists the requirements we have for the CI system and which we design the system to fulfil.</p>
<p>Each requirement is given a semi-mnemonic unique identifier, so it can be referred to easily.</p>
diff --git a/ci-arch.mdwn b/ci-arch.mdwn
index 04a6327..c6773ad 100644
--- a/ci-arch.mdwn
+++ b/ci-arch.mdwn
@@ -68,6 +68,31 @@ Production here means all the software needed to run all the sites
supporting services, including tooling and services that supports
development.
+## Overall solution approach
+
+The overall approach to the architecture of the CI system, and the
+workflow supported by it, is to keep all changes in version control
+(git), which includes code, configuration, and scripts for building
+and deploying. When a change to version control is pushed, CI builds
+and tests the change, humans review the change, and if all seems to be
+in order, CI deploys to production.
+
+## Stakeholders
+
+Stakeholders in the WMF CI system include:
+
+* RelEng, who are responsible for keeping CI running
+* SRE, who are responsible for the infrastrcture on which CI runs
+* MediaWiki developers, who develop MW and its extensions, and will
+ (eventually) be doing MW releases for external MW deployers
+* staff and volunteer developers of anything else built, tested, and
+ deployed by CI
+* WMF, who pays for CI using donations
+* the Wikipedia movement, who use sites and services operated by WMF
+* all of humanity, who benefit from having knowledge freely
+ disseminated
+
+
# Requirements
This chapter lists the requirements we have for the CI system and
diff --git a/ci-arch.pdf b/ci-arch.pdf
index 4946aea..0db2c55 100644
--- a/ci-arch.pdf
+++ b/ci-arch.pdf
Binary files differ