Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pattern/innersource-portal-hygiene #120

Merged
merged 5 commits into from
Dec 16, 2020
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
71 changes: 71 additions & 0 deletions innersource-portal-hygiene.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
## Title

InnerSource Portal - Hygiene

## Patlet

Based off the [InnerSource portal](https://github.com/InnerSourceCommons/InnerSourcePatterns/blob/master/innersource-portal.md) pattern.

Allow generation of an official badge for projects intending to be recognised as InnerSource project within your company.

This will help users distiguishing InnerSource projects which strive to adhere to InnerSourcing principals from repos that - have been made public by mistake, due to negligence or for ease of discoverability ( but do NOT adhere to InnerSource patterns/best practices). Furthermore the badge serves as additional marketing for the InnerSource intiative at your company.

## Problem

- Users don't have a mechanism of distiguishing InnerSource projects which strive to adhere to InnerSourcing principals from repos that have been made public by mistake, due to negligence or for ease of discoverability ( but do NOT adhere to InnerSource patterns/best practices).
- Unmaintained or stale InnerSource projects clutter the portal and make it difficult for people to discover active projects, and diminishes the value on the InnerSource portal

## Context

Large organisation with lots of public repos, not all necessarily meeting the desired innerSource project standard.

## Forces

- Mix of managed and unmanaged projects makes it difficult to figure out what needs to be in the InnerSource portal
- Repos are made public when they really shouldn't be
- Repos become stale and never get cleaned up

## Sketch


- Click [here](https://www.draw.io/?lightbox=1&highlight=0000ff&edit=_blank&layers=1&nav=1&title=Untitled%20Diagram.drawio#R7V1Zl5s4Fv41fiwfdsxjLanunpN0MqnMdOcpB4NsqwOIZqmlf%2F1oQRgt2Dg2xjUp55yUEULgu%2Bne716JmX2bPv9ShPnmA4pBMrOM%2BHlm380sy%2FR8G%2F8hLS%2BsxTIck7WsCxg3vbYND%2FAf0DQaTWsNY1AKHSuEkgrmYmOEsgxEldAWFgV6ErutUCLeNQ%2FXQGl4iMJEbf0DxtWGtS5cY9v%2BK4DrDb%2BzaTRn0pB3bhrKTRijp06T%2FW5m3xYIVexb%2BnwLEkI9Thd23X3P2fbBCpBVQy64WWYf%2FduH%2BvG%2F%2Fv3HX%2B9v%2Fp18ubsyLZ%2BN8xgmdfOTZ5aX4BFvVggPjJ%2B7emmI4f1dI37iqqSsusYdTC9%2F3p7E39bk701YRRt89l9oWfIR8cOxQVmXhi7t%2BFaB6iwG5HlNfPppAyvwkIcROfuE5Qu3bao0aU7HYblp%2B5Jh78MUJkTOfgXJI6hgFDYnGqny8WFZFeg7uEUJKugt7cU1%2BYfPPIKCXJJcJ3Cd4XMVyttHJOfAcy%2FdzZabWA8ASkFVvOAu%2FAKHyzLXAbNRiqetQFlcbDYdYfIWDXPCRojX7eBbPuMvDasPYLunMP03rD7FA6oLTG3L%2BISKKkwU%2FnSoz8n1PlyC5BMqYQURIdsSVRVKcYewoWOEyQQwsW8S0vMmjL6vKZs7PFjRTy8PGM%2B49lk6LhrGwrg3CLthkuhGbpXP6EqOwc7k5Oelz2tiwuYQlf4cYnNSzp9gRi86hRTIQuDoZMBVZcDklubkMmArMvAZ5ISRiD53FqZAEQCRFaaokAfReA6%2FgOfqtyyvKx1DHfpp9FdgNPng9mWN5SwjY5ATgp4vdsiBzqZwSU3AqjoRs11LYLZpOHNX4bdpaXTedEdit6Ow%2B6FeprDaY4QH8VdH1Q5DTI1mevSjsxOqLNyRf6ostEw9BccCiWO2qfCLey4Cu8ay0KapUc81LAmNsHKCJ%2Fx%2F0dFXiYkVVYwu9wqAZ%2BxwSTsQfuQIZhV9avdm5hLyhnWFyoZjOsb0WGfMdpitv5ADImWnYYdjcYVpGOKr%2FDAdjf5YY5lLU2cvW4YQVuzQJEJwPKVu0BpleM5ElFiEyH%2BBqnpp1ITQX%2BQZGxHEiosq0RHflc3cO2b8Rr6rsFiDap9roDKmAElYwUfxQXREbi79RMSr4wRZztxzfMNdLCzbtQJrIbpEwWLOTjim6XuO54g3YD%2BvGVNiZPuQR%2FBW9YduNyD6XpKIIYQJ5qHMW8KUh%2BZwy9l329abo7kPnmH1J7kcqwI7%2BtoMRr7fPXcPXvhBhinBLnIWC97wtXt2eyE9Eq78BAqIiUnUnTaeUABN55wCeF0U4UunQ2PteuVzYZiCQF6ZUjAl9betnf3xF%2FYEJxVTbtt0YpqHZTmJkG4Fzj1E3KaQLOZzn9y2eZbo2puBPch6KQP5thQoWtJA7BeOZwZVHxEbhBUq0hn5iSyGXxY8fO%2B6H%2FK5qJFLeUbcoHRZl%2FuD%2BxP4EL4teRBaH9zW%2BBCL0XwIVyGwqrNZfE1wK%2BJ5JVipYdSncIK6bbVvfIXzBuobkyeVQR36uxry87ZjXQ5RmexA4upQrfSkcRxpnJGVkotIR2b%2BKLDuqDp31fqhRl0k%2BvPLkAgA9mqwU8Mi%2FF29wHMONcHFGX0f%2Fr0j4wN8n8k0w3EHqkaf7TpS5hcy1OgMm4pOJaz2QmPgDkSTLRFNxg54JF6whXcV0PkOlnlCHb8IxUSCywzmOSA3rpB2EoNZlNS0K8y2%2BvP53fXdh3fzNB6KXJ9BJQSI%2BxbzEdLI83fwJKItXkd9roy5YbiiDrnWbi3CByOGAfbgONTaObuTH8YxmiOVxl%2BISuMa5iClOTTItd3FPOh8FoPmkUMjGceQ7tpQSRuZbK%2Fmw6PVqgSj2AZPtQ3%2FrgHlKZ1nSJDNZ57XMeEMSTqZ1mn1p02C7tWfY4OdozxdX%2FVaOLMpi0nImoGwgNn6Av0MfxQ%2F46LFxTemFJdARTamlAYRcTOPNgL%2BVEwdB8z1HRH8cv1hIdGhU5lpBOLM7FnnQNnUzIuQHJc9SJ4rl9vvwipchqUmidpkQ6OXBGJ5LfajIUsm2O%2BXbUObRv9YV3gUMDsZbGIaTk%2Fg3IVNdOUKwVjWQVOjEqxWthfE3nJpWfOcTCI9RI5RVKf0px9M5JMQUw7IXC0KpctkeWOlFq3g9ZJTglotXy2jOC8xbXXmejXElOHmxWJqYqpe41td0sh1SUYgZdptHv5OWJqk5tq%2FYhHALaI46KPF1177YPsiPzSlKKYONx%2Bt9MHW1oiGKSEBdXpgum4bsmVJSVNEsy5ox%2F0jTLJspoMBCdeuGroTHLAlPfnlxDpelcw8kpMZKlJsBxg%2BKOKHpBiV3k6CBjdVRUqGrwkprHtI5Ig52vPnl3%2FmEbYN5ESL9rHn5GjfxM%2FenVEu9Rm7DvB%2BlHffKNKvY9Nop7Mga2FSCfeCOiPRd3FHg3gXx%2BrvvlXCnb31KLFqmXaCunvK6rwT2Rsea7cwpcbeLM6ZJnV8hXKvOPg%2FNaTDUzr7yx160q%2FngXQcdQ7%2FBWC9DKv%2BmVvk4R6f%2BEDaH1dLIMXEbYnHvnJebzQd8d50ZJ%2FoD9ER90gd6cnD2phCvJjRN9xAtLByKcLIJQTOYkpZufSMymBZsSeFyB21OOuhQsX%2FgTG1AnPo6ojxzGkwqTk9QEU6BZdBEMzEDBRdMnNwle8kWje0UoZhQpNpnVqxx7UO3yCMwyp8vYpnT%2B7F8FUJHfL%2Bp2wWVLC1FSxBTGNaEfvJC%2FQXWfArUx%2BxhMhtux6YS3gHfsP%2F7slT3qyLMIZgey5DJJWi4njtBX04ngDd7cUg9WiSAjpJYtKVBnrc%2FGhyy7DM2a9dwWfyHAp8GD6VzrwATC9%2Fi8jzEFiMfRN71WWDCxwPMUtwfaBGlt5ZxU1d53EHElDxisjLmQOsgZNAWxF8uSUI3tB4dVr%2FylOzYq1skHLsixGNH5MM%2BzVLxtHVssdJhopktJIhVa6pKx467NR5AqKMnNMZMB1X8gYMTZ5f5w2Mhvt5aoij0FOe15Z5ms0r7M4W30osRwRezTvuLb4rzEvQ8Xi7CpZIE3TBfuSQlKC0aFzrdQzi0kHFe%2BIwHUbplrHwtiOxjHbVSruYXRxhvIpR01T5f6Egl65q%2BoSVYTvt0n47OxThMI1jg60fqvPyTREfc85Q5WXyjPblg2Jj1pueuDKRFwIOkLRpy5PVqp0HkJFpPEMVXGEykRmBFCmrdX0rVMwOqWJ%2BPR6A6wRDgbjRfAC%2Bz8ObD9BXkf1z%2BQC%2B6nz3aCpd4JUhghSJBQB5vUxgNGsXd6EnUvvxivXU96b21P03T12Qz59dS9t68NfpqV%2BAh7XT%2BO33u4Z6%2BMGkNSH%2B276D09f3uo7q4525vtfvXya%2BMQXW95QP%2BrodR%2F9kH9Vj31sbSUd%2Fan56p%2F5RucV7VACyGQqeqWryN6Ysx0NCuoY2JdYVk4TsRlvi2QVUtGg5jGEOSxg1YUICm14lBQ5j4pMAWJcpIocVSHM6JswiGMO4pha%2BJv9hSWapR7qgnd6bJiLDdRaS2yTw7zqc7ykQxc2Exj3r2NUKRVHmmwRZV9x5zozVQuMGdyZXRlt9iVCEZXuVUAXZwDgG2Q85Wv6JVIU7MXy1mTlwpc5ohdeLvfaSJUFVZ%2Fa118Ar%2B%2F%2B5%2FsDNe8ZjRv9OyW9G681oXYrR0szuWqMlBwen05O3yf1NTy5fT7ypJ%2FdgANK5bzO4oQQ8NBYfELAOTgkM3S2O7YejMvA8u8VJpXGBKY0wdA8gaceChSeNc%2FDWCKeHajjnLj7xNUECKxgMpPh6aT3TfilD8FcZrIjpZwhYsZ0aulv9ixvDh8sSJXUFrovooRM0tEfWee276Uka7PsqSG7xIi%2FBgHhjMUmtHf6KanL38JFM7WRaF3ITc9W7Ibsx3mJ%2FA8a0KjYNvzM%2Fg7okeQEf2XIq4lPot4PsVtHCZqOvg%2BppBdCqectOJ4zsTkaiWPku%2BdfnZMjw1zrKrXlel5tv3bzOtxIUj5Bo7E1OUwY7kwF92GCKvQ9qxaRUgBzQtv0aB%2Bc97UZdnr7XUPxQuucgZLYRZ0OTmeXbJQipBOsk06EYfLcbpI%2BfSQjUKPuTLn%2BnyOlb3fcF1X0Hwf6M5VkrvwM1KG0WGizJO8KYfdQaRBVbe5O0C5I0ee%2FOQGcozypqTRGdIGtfihpPwzGdzNMUVhUtQLhnC6LJiIQib5J2yZJmmbZYpei51vSiNukq8AuP5Zoaw7PUvR7Jxv7Uwm5Ys7Nttq1DTUkMgPkdxlFYEu%2FuEZKgI0IJRRupi02ONyE2MD07xmuqrWZNsVXVWrWoY9UMsukhacROIjF4H%2B%2Feffzj93efH2Z8kVUfhKuAmnvxywFJrYEu%2F4AqAUlSeyW619iI0dOshRb3xgaNnvfaJmNOAmDBOp1ma2x8ZykPZ3m84QxVRZZa%2FHfsdvJMtD6HsKR7vpdlLe39fjH7veut7IQLA6czz5335U5innVi%2BJOjbdJbUVxPt4eDrfOGRsPbTENFRbX7BRqshL%2BBE2hWEVuCmVrLrwHkOmAcJhZ4Yt2bofZia%2FJodBoFWVnTXB%2FF5%2FAkUcGsBm1Jc5jn%2BLG4kao2QB1eXzX3htydB7nrXcvyk0F3pub9YT%2B9nZS33OBLGqezkpqXkA22khtq4ZYAMH8pRY%2FU0w%2F1K6X6LeGbsZrMWPW9lO2nM1a6MiXZWDXSA9OQOLw3mjp0Efbai5YNCDPpza45BqYFxJrnuRP3tI3izKAV5Cv6WoFmT1u2RdE9rSzHf2t4BcoSZEQb7wkT7795Lm40rQXdZHXCEh3TkHckMLXrEX1VGsd7DbfmbRCnCUF%2FYXVelDvY8YwwV0JKDWZ2VWuas1dxMoeTv1%2Fz4qLVE%2BxVcoGhKkdqfviVl%2BMuoFfSbbtfXux6ix3dR1pvr3l58WkU6eH2Az73%2BQDwpn3%2FAlY%2BspsbM%2B57Nmqb0CzKPuTA97H8wOpPfFggQt0t64nb9AHFgPT4Hw%3D%3D) for draw.io diagram
- Click [here](https://www.draw.io/?title=Untitled%20Diagram.drawio#R7V1Zl5s4Fv41fiwfdsxjLanunpN0MqnMdOcpB4NsqwOIZqmlf%2F1oQRgt2Dg2xjUp55yUEULgu%2Bne716JmX2bPv9ShPnmA4pBMrOM%2BHlm380sy%2FR8G%2F8hLS%2BsxTIck7WsCxg3vbYND%2FAf0DQaTWsNY1AKHSuEkgrmYmOEsgxEldAWFgV6ErutUCLeNQ%2FXQGl4iMJEbf0DxtWGtS5cY9v%2BK4DrDb%2BzaTRn0pB3bhrKTRijp06T%2FW5m3xYIVexb%2BnwLEkI9Thd23X3P2fbBCpBVQy64WWYf%2FduH%2BvG%2F%2Fv3HX%2B9v%2Fp18ubsyLZ%2BN8xgmdfOTZ5aX4BFvVggPjJ%2B7emmI4f1dI37iqqSsusYdTC9%2F3p7E39bk701YRRt89l9oWfIR8cOxQVmXhi7t%2BFaB6iwG5HlNfPppAyvwkIcROfuE5Qu3bao0aU7HYblp%2B5Jh78MUJkTOfgXJI6hgFDYnGqny8WFZFeg7uEUJKugt7cU1%2BYfPPIKCXJJcJ3Cd4XMVyttHJOfAcy%2FdzZabWA8ASkFVvOAu%2FAKHyzLXAbNRiqetQFlcbDYdYfIWDXPCRojX7eBbPuMvDasPYLunMP03rD7FA6oLTG3L%2BISKKkwU%2FnSoz8n1PlyC5BMqYQURIdsSVRVKcYewoWOEyQQwsW8S0vMmjL6vKZs7PFjRTy8PGM%2B49lk6LhrGwrg3CLthkuhGbpXP6EqOwc7k5Oelz2tiwuYQlf4cYnNSzp9gRi86hRTIQuDoZMBVZcDklubkMmArMvAZ5ISRiD53FqZAEQCRFaaokAfReA6%2FgOfqtyyvKx1DHfpp9FdgNPng9mWN5SwjY5ATgp4vdsiBzqZwSU3AqjoRs11LYLZpOHNX4bdpaXTedEdit6Ow%2B6FeprDaY4QH8VdH1Q5DTI1mevSjsxOqLNyRf6ostEw9BccCiWO2qfCLey4Cu8ay0KapUc81LAmNsHKCJ%2Fx%2F0dFXiYkVVYwu9wqAZ%2BxwSTsQfuQIZhV9avdm5hLyhnWFyoZjOsb0WGfMdpitv5ADImWnYYdjcYVpGOKr%2FDAdjf5YY5lLU2cvW4YQVuzQJEJwPKVu0BpleM5ElFiEyH%2BBqnpp1ITQX%2BQZGxHEiosq0RHflc3cO2b8Rr6rsFiDap9roDKmAElYwUfxQXREbi79RMSr4wRZztxzfMNdLCzbtQJrIbpEwWLOTjim6XuO54g3YD%2BvGVNiZPuQR%2FBW9YduNyD6XpKIIYQJ5qHMW8KUh%2BZwy9l329abo7kPnmH1J7kcqwI7%2BtoMRr7fPXcPXvhBhinBLnIWC97wtXt2eyE9Eq78BAqIiUnUnTaeUABN55wCeF0U4UunQ2PteuVzYZiCQF6ZUjAl9betnf3xF%2FYEJxVTbtt0YpqHZTmJkG4Fzj1E3KaQLOZzn9y2eZbo2puBPch6KQP5thQoWtJA7BeOZwZVHxEbhBUq0hn5iSyGXxY8fO%2B6H%2FK5qJFLeUbcoHRZl%2FuD%2BxP4EL4teRBaH9zW%2BBCL0XwIVyGwqrNZfE1wK%2BJ5JVipYdSncIK6bbVvfIXzBuobkyeVQR36uxry87ZjXQ5RmexA4upQrfSkcRxpnJGVkotIR2b%2BKLDuqDp31fqhRl0k%2BvPLkAgA9mqwU8Mi%2FF29wHMONcHFGX0f%2Fr0j4wN8n8k0w3EHqkaf7TpS5hcy1OgMm4pOJaz2QmPgDkSTLRFNxg54JF6whXcV0PkOlnlCHb8IxUSCywzmOSA3rpB2EoNZlNS0K8y2%2BvP53fXdh3fzNB6KXJ9BJQSI%2BxbzEdLI83fwJKItXkd9roy5YbiiDrnWbi3CByOGAfbgONTaObuTH8YxmiOVxl%2BISuMa5iClOTTItd3FPOh8FoPmkUMjGceQ7tpQSRuZbK%2Fmw6PVqgSj2AZPtQ3%2FrgHlKZ1nSJDNZ57XMeEMSTqZ1mn1p02C7tWfY4OdozxdX%2FVaOLMpi0nImoGwgNn6Av0MfxQ%2F46LFxTemFJdARTamlAYRcTOPNgL%2BVEwdB8z1HRH8cv1hIdGhU5lpBOLM7FnnQNnUzIuQHJc9SJ4rl9vvwipchqUmidpkQ6OXBGJ5LfajIUsm2O%2BXbUObRv9YV3gUMDsZbGIaTk%2Fg3IVNdOUKwVjWQVOjEqxWthfE3nJpWfOcTCI9RI5RVKf0px9M5JMQUw7IXC0KpctkeWOlFq3g9ZJTglotXy2jOC8xbXXmejXElOHmxWJqYqpe41td0sh1SUYgZdptHv5OWJqk5tq%2FYhHALaI46KPF1177YPsiPzSlKKYONx%2Bt9MHW1oiGKSEBdXpgum4bsmVJSVNEsy5ox%2F0jTLJspoMBCdeuGroTHLAlPfnlxDpelcw8kpMZKlJsBxg%2BKOKHpBiV3k6CBjdVRUqGrwkprHtI5Ig52vPnl3%2FmEbYN5ESL9rHn5GjfxM%2FenVEu9Rm7DvB%2BlHffKNKvY9Nop7Mga2FSCfeCOiPRd3FHg3gXx%2BrvvlXCnb31KLFqmXaCunvK6rwT2Rsea7cwpcbeLM6ZJnV8hXKvOPg%2FNaTDUzr7yx160q%2FngXQcdQ7%2FBWC9DKv%2BmVvk4R6f%2BEDaH1dLIMXEbYnHvnJebzQd8d50ZJ%2FoD9ER90gd6cnD2phCvJjRN9xAtLByKcLIJQTOYkpZufSMymBZsSeFyB21OOuhQsX%2FgTG1AnPo6ojxzGkwqTk9QEU6BZdBEMzEDBRdMnNwle8kWje0UoZhQpNpnVqxx7UO3yCMwyp8vYpnT%2B7F8FUJHfL%2Bp2wWVLC1FSxBTGNaEfvJC%2FQXWfArUx%2BxhMhtux6YS3gHfsP%2F7slT3qyLMIZgey5DJJWi4njtBX04ngDd7cUg9WiSAjpJYtKVBnrc%2FGhyy7DM2a9dwWfyHAp8GD6VzrwATC9%2Fi8jzEFiMfRN71WWDCxwPMUtwfaBGlt5ZxU1d53EHElDxisjLmQOsgZNAWxF8uSUI3tB4dVr%2FylOzYq1skHLsixGNH5MM%2BzVLxtHVssdJhopktJIhVa6pKx467NR5AqKMnNMZMB1X8gYMTZ5f5w2Mhvt5aoij0FOe15Z5ms0r7M4W30osRwRezTvuLb4rzEvQ8Xi7CpZIE3TBfuSQlKC0aFzrdQzi0kHFe%2BIwHUbplrHwtiOxjHbVSruYXRxhvIpR01T5f6Egl65q%2BoSVYTvt0n47OxThMI1jg60fqvPyTREfc85Q5WXyjPblg2Jj1pueuDKRFwIOkLRpy5PVqp0HkJFpPEMVXGEykRmBFCmrdX0rVMwOqWJ%2BPR6A6wRDgbjRfAC%2Bz8ObD9BXkf1z%2BQC%2B6nz3aCpd4JUhghSJBQB5vUxgNGsXd6EnUvvxivXU96b21P03T12Qz59dS9t68NfpqV%2BAh7XT%2BO33u4Z6%2BMGkNSH%2B276D09f3uo7q4525vtfvXya%2BMQXW95QP%2BrodR%2F9kH9Vj31sbSUd%2Fan56p%2F5RucV7VACyGQqeqWryN6Ysx0NCuoY2JdYVk4TsRlvi2QVUtGg5jGEOSxg1YUICm14lBQ5j4pMAWJcpIocVSHM6JswiGMO4pha%2BJv9hSWapR7qgnd6bJiLDdRaS2yTw7zqc7ykQxc2Exj3r2NUKRVHmmwRZV9x5zozVQuMGdyZXRlt9iVCEZXuVUAXZwDgG2Q85Wv6JVIU7MXy1mTlwpc5ohdeLvfaSJUFVZ%2Fa118Ar%2B%2F%2B5%2FsDNe8ZjRv9OyW9G681oXYrR0szuWqMlBwen05O3yf1NTy5fT7ypJ%2FdgANK5bzO4oQQ8NBYfELAOTgkM3S2O7YejMvA8u8VJpXGBKY0wdA8gaceChSeNc%2FDWCKeHajjnLj7xNUECKxgMpPh6aT3TfilD8FcZrIjpZwhYsZ0aulv9ixvDh8sSJXUFrovooRM0tEfWee276Uka7PsqSG7xIi%2FBgHhjMUmtHf6KanL38JFM7WRaF3ITc9W7Ibsx3mJ%2FA8a0KjYNvzM%2Fg7okeQEf2XIq4lPot4PsVtHCZqOvg%2BppBdCqectOJ4zsTkaiWPku%2BdfnZMjw1zrKrXlel5tv3bzOtxIUj5Bo7E1OUwY7kwF92GCKvQ9qxaRUgBzQtv0aB%2Bc97UZdnr7XUPxQuucgZLYRZ0OTmeXbJQipBOsk06EYfLcbpI%2BfSQjUKPuTLn%2BnyOlb3fcF1X0Hwf6M5VkrvwM1KG0WGizJO8KYfdQaRBVbe5O0C5I0ee%2FOQGcozypqTRGdIGtfihpPwzGdzNMUVhUtQLhnC6LJiIQib5J2yZJmmbZYpei51vSiNukq8AuP5Zoaw7PUvR7Jxv7Uwm5Ys7Nttq1DTUkMgPkdxlFYEu%2FuEZKgI0IJRRupi02ONyE2MD07xmuqrWZNsVXVWrWoY9UMsukhacROIjF4H%2B%2Feffzj93efH2Z8kVUfhKuAmnvxywFJrYEu%2F4AqAUlSeyW619iI0dOshRb3xgaNnvfaJmNOAmDBOp1ma2x8ZykPZ3m84QxVRZZa%2FHfsdvJMtD6HsKR7vpdlLe39fjH7veut7IQLA6czz5335U5innVi%2BJOjbdJbUVxPt4eDrfOGRsPbTENFRbX7BRqshL%2BBE2hWEVuCmVrLrwHkOmAcJhZ4Yt2bofZia%2FJodBoFWVnTXB%2FF5%2FAkUcGsBm1Jc5jn%2BLG4kao2QB1eXzX3htydB7nrXcvyk0F3pub9YT%2B9nZS33OBLGqezkpqXkA22khtq4ZYAMH8pRY%2FU0w%2F1K6X6LeGbsZrMWPW9lO2nM1a6MiXZWDXSA9OQOLw3mjp0Efbai5YNCDPpza45BqYFxJrnuRP3tI3izKAV5Cv6WoFmT1u2RdE9rSzHf2t4BcoSZEQb7wkT7795Lm40rQXdZHXCEh3TkHckMLXrEX1VGsd7DbfmbRCnCUF%2FYXVelDvY8YwwV0JKDWZ2VWuas1dxMoeTv1%2Fz4qLVE%2BxVcoGhKkdqfviVl%2BMuoFfSbbtfXux6ix3dR1pvr3l58WkU6eH2Az73%2BQDwpn3%2FAlY%2BspsbM%2B57Nmqb0CzKPuTA97H8wOpPfFggQt0t64nb9AHFgPT4Hw%3D%3D) for editable draw.io diagram


## Solutions

### Register your InnerSource project

In your InnerSource portal allow registering your project as an InnerSource project. This is a super simple an intuitive webform that only requires you to enter your repos url.

Once the url is entered some basic checks will be carried out against your repo based on some very basic standards required for entry into the InnerSource portal. These checks include:

- Access to the repo
- Description for repo is set
- Topic labels exists
- Code owners file exists and populated
- Readme file exists
- Pull request template file exists
- Issue template file exists
- Contributing guidelines file exists

Once all checks have passed the InnerSource portal will generate your very own InnerSource badge, which is basically am image with a random filename. Note this badge is specific to the repo that was being registered. In the background the repo name, badge filename and badge expiry date is stored.

The last step is for users update there repos README.md file to include the badge. This will then allow the InnerSource portal to discover the project and will automatically include it in the portal.

### InnerSource portal batch jobs

- Remove expired badges.
Query InnerSource projects which have an expired badge. Delete badge file causing the badge to not appear in the repos rendered README anymore.
- Notify projects approaching expiry.
Query InnserSource projects which have a badge close to expiration. Send a notification to the InnerSource projects code owners, publish an issue to the repo, publish a message in the InserSource channel on Teams. This should be ample warning to go update the badge.
- Bonus: Notify owners of public repos not registered as InnerSource projects yet to either make their repos private or to consider registering their repo as an innerSource project. This isn't entirely related to hygiene of the InnerSource portal rather general hygiene of all repos in your organisations SCM system. Also servers as excellent marketing and awareness generation for your organisations InnerSource initiative.

## Resulting Context

The autom managed InnerSource portal and badge system has ensured that the InnerSource portal only displays active projects and as result contains less clutter, thus increasing the credibility of the portal and InnerSource project initiative itself. The badges in the repos itself allow people to quickly distinguish an innerSource project from a standard public repo.

## Author(s)

- Dinesh Dharmawardena