From 64b4c3652b77b814daa931525c2067de30075f7a Mon Sep 17 00:00:00 2001 From: rrrutledge Date: Tue, 2 Jan 2024 08:39:48 -0600 Subject: [PATCH] Add wiki implementation of InnerSource portal pattern (#637) Add wiki implementation of InnerSource portal pattern. To structure the information more clearly, this adds a new "Implementation" section to this pattern, which complements the "Solution" and "Known Instances" section. --- patterns/2-structured/innersource-portal.md | 30 +++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/patterns/2-structured/innersource-portal.md b/patterns/2-structured/innersource-portal.md index 141d2fbb7..e362a616a 100644 --- a/patterns/2-structured/innersource-portal.md +++ b/patterns/2-structured/innersource-portal.md @@ -52,10 +52,39 @@ Key properties of the portal are: When launching the portal, a communications campaign promoting the addition of InnerSource data files or meta-data to code repositories should be considered, to bolster the number of projects displayed within the portal. +### Implementations + +#### SAP Project Portal + A [reference implementation](https://github.com/SAP/project-portal-for-innersource) of an InnerSource portal is available on GitHub and open for contributions. It lists all InnerSource projects of an organization in an interactive and easy to use way. Projects can self-register using a dedicated GitHub topic and provide additional metadata. ![Example of an InnerSource Portal](../../assets/img/portal-overview.png "Example of an InnerSource Portal") +#### Wiki + +As a simple way to start, you can set aside a page on an internal wiki for listing out available projects. +An easy way to display this information is in a table with columns giving just a little bit of extra information about the projects. +Try to have just enough columns so that viewers can determine if they want to learn more about the project, but no more. +Too much information will make the page overwhelming and difficult to use. +Individuals and teams can self-add their projects to the page. + +Here is a sample set of columns: + +* **Name**. Name of the project (optionally linked to its homepage). +* **Brief Description**. Explaining the purpose of the project (which problem does it solve?) +* **Technology Pre-requisites**. You must use these technologies in order to on-board to the project. +* **Getting Started**. Link to instructions on how to start using the project. +* **Chat**. Link to a chat channel to ask questions about the project. +* **Host Team**. Seeing if a team is behind the project can help others to have the confidence to use it. +* **Production Since**. How long as the project been used in a production environment? Seeing this information is a rough proxy for its maturity. +* **Contribution**. Link to instructions on how to contribute to the project. + +This solution doesn't allow for a fancy display - it is just a wiki table. +If it's important for you to have a snazzy-looking UI, then this idea won't work for you. +Additionally, if you end up with a lot of projects (e.g. nearing 100), +this solution won't scale to allow the search and filtering or auto-updating of project entries that you'll probably need. +It is a good solution for a portal with a few dozen projects, though. + ## Resulting Context * The InnerSource Portal has enabled InnerSource project owners to advertise their projects to an organization-wide audience. Due to this increased visibility they are attracting much larger communities of contributors than ever before. @@ -78,6 +107,7 @@ A [reference implementation](https://github.com/SAP/project-portal-for-innersour * **Airbus** used the [SAP Portal](https://github.com/SAP/project-portal-for-innersource) as a Proof of Concept. It is now using the [Bazaar plugin](https://github.com/backstage/backstage/blob/master/plugins/bazaar/README.md) of [Backstage](https://backstage.io) as the latter became the official developer experience tool internally. It provides a convenient self-registering capability for all the divisions. * **Mercado Libre** use an instance of the [SAP portal](https://github.com/SAP/project-portal-for-innersource) to discover existing InnerSource projects within the organization. * **Mercedes-Benz** is [using](https://opensource.mercedes-benz.com/news/sponsor_innersource_commonsoss) the SAP reference implementation mentioned above for their InnerSource Portal. +* **WellSky** has a simple _Confluence Wiki_ page were InnerSource and reusable projects are listed. ## References