Skip to content

pattern/innersource-portal-hygiene #118

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

Closed
dineshdh opened this issue Oct 27, 2019 · 3 comments
Closed

pattern/innersource-portal-hygiene #118

dineshdh opened this issue Oct 27, 2019 · 3 comments

Comments

@dineshdh
Copy link
Contributor

Title

InnerSource Portal - Hygiene

Patlet

Based off the InnerSource portal 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 due to neglegence or other reasons, plus 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 due to neglegence or other reasons.
  • 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 unmanged 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

Sorry about the picture :(

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

  • Update InnerSource portal projects.
    Query InnerSource projects have a non expired badge. Display these in the portal
  • 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.

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
@dineshdh dineshdh changed the title Pattern proposal: innersource-portal-hygiene pattern/innersource-portal-hygiene Oct 27, 2019
@rrrutledge
Copy link
Contributor

This is cool, @dineshdh. I think it would be a good idea to open a pull request to the InnerSourcePatterns repository so that we can all discuss there. Looking forward to it!

@dineshdh
Copy link
Contributor Author

dineshdh commented Nov 2, 2019

PR created as suggested by @rrrutledge
#120

@dineshdh dineshdh closed this as completed Nov 2, 2019
@spier
Copy link
Member

spier commented Dec 14, 2021

@dineshdh I just found this PR again, and was wondering if you have made further experiences with this "hygiene approach" in your InnerSource practice?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants