Template:Project infrastructure
Goal
This is an universal template for referencing the current open source infrastructure used by the FlightGear project.
Ideally other templates this will use this template for URNs and links, so that this will be the only template that need to be changed if parts of the FlightGear infrastructure move from one host to another (for details of why, see the Background section below).
Usage
{{project infrastructure | mode | urn = | link = | text = | noprotocol = }}
- mode
- The type of infrastructure. This defaults to name, but can be one of:
- name
- The name of the hosting infrastructure.
- abbrev
- An abbreviation for the hosting infrastructure, mainly for use in other templates (no link, and current returns sf).
- nightlies
- nightly builds
- buildserver
- The FlightGear build server
- forum
- The FlightGear forum.
- scenery
- The FlightGear scenery website.
- website
- The FlightGear website.
- wiki
- The FlightGear wiki.
- mailing lists
- The FlightGear mailing lists.
- urn
- The optional uniform resource name, the part of the URL after the domain name.
- link
- If set to yes, then a MediaWiki link will be created, when appropriate. The value of no will cause plain text to be returned. This defaults to yes.
- text
- The optional custom text to use for the link.
- noprotocol
- If set, then the protocol part of the URL will not be added. This is, for example, https://.
Examples
Name
{{project infrastructure|name}}
{{project infrastructure|name|link=no}}
SourceForge
{{project infrastructure|nightlies}}
Abbreviation
{{project infrastructure|abbrev}}
sf
Build Server
{{project infrastructure|buildserver}}
Forum
{{project infrastructure|forum}}
{{project infrastructure|forum|urn=search.php|text=Search the forum}}
{{project infrastructure|forum|link=no}}
site:{{project infrastructure|forum|link=no|noprotocol=yes}}
site:forum.flightgear.org
Scenery
{{project infrastructure|scenery}}
Website
{{project infrastructure|website}}
{{project infrastructure|website|link=no}}
Wiki
{{project infrastructure|wiki}}
{{project infrastructure|wiki|link=no}}
Background
Currently all our code and data lives on SourceForge. Collecting everything from gitorious, googlecode and private servers, getting our build server work with the new locations was not a trivial task, took months to complete and was everything but a pleasant job.<ref>Template:Cite web</ref><ref>https://sourceforge.net/p/flightgear/mailman/message/33553643/</ref> However, should the project (or any of its associated websites) ever need to be moved again (a discussion that keeps coming up, and is even raised by former core developers,<ref>https://sourceforge.net/p/flightgear/mailman/message/35054466</ref><ref>https://sourceforge.net/p/flightgear/mailman/message/35083528/</ref><ref>https://sourceforge.net/p/flightgear/mailman/message/33510482/</ref>) this template will help isolate required changes.
The creation of this template was motivated by the workload caused by the shutdown of gitorious (to become gitlab) and subsequent migration of all repositories to sourceforge.<ref>FlightGear Newsletter April 2015#FlightGear now lives at SourceForge</ref> Shortly afterwards, Sourceforge and Slashdot were sold, where most of the FlightGear project's infrastructure had moved at the time.<ref>https://forum.flightgear.org/viewtopic.php?f=42&p=277816#p277816</ref>
The wiki admins back then realized that the workload due to having to update dozens, if not even hundreds, of articles could be greatly reduced if a common set of templates were to be used for "encapsulating" (hiding) such details. In particular, the creation of the repo link (respectively git/svn link) templates (started by Template:Usr and Template:Usr) will greatly help isolate and reduce the amount of work needed to maintain our wiki articles up to date.