-
Notifications
You must be signed in to change notification settings - Fork 4
Review/daniel farrell/13709 #2
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
base: master
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,74 @@ | ||
| =============================== | ||
| Suggestions for LFN Initiatives | ||
| =============================== | ||
|
|
||
| Update Infra | ||
| ------------ | ||
|
|
||
| LFN Projects are using a Gerrit+Jenkins+Nexus infra that is both antequated and | ||
| expensive to maintain. More modern open source projects tend to use Github based | ||
| infra like: | ||
|
|
||
| * Github - Source Code Management | ||
| * CircleCI or TravisCI or other cloud based CI - CI | ||
| * Various artifact repo as a service services | ||
| * Github Issues - Bug tracking | ||
| * Github + Hugo + Netlify - Websites/doc sites | ||
|
|
||
| This subgroup will explore cross project how to POC, and perhaps migrate LFN | ||
| projects to such more modern infra. | ||
|
|
||
| It is important to be clear: no community should change if it does not see benefit. | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Need to specifically evaluate if moving to a CI as a Service approach would be lower cost and meet all the security and access requirements. For those consumers of opensource would github be easier to work with - for example companies already usin git would moving to github from gerrit allow preservation of commit history etc which is lost in the git to gerrit pushes that occur today Task should include report on:
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @bdfreeman1421 Excellent questions! I have some partial answers:
Github has flexiblity here. You can pick how PRs get merged either PR by PR, or at the repo level. Options are:
Squash and merge has the 'collapse the history from the requested change into a single commit' behavior. I personally prefer squash and merge, but communities can decide their own preferences.
Changes to pom.xml would depend on whether a community chose to switch to a cloud based maven repo provider, there are a bunch: sonatype provides free maven hosting for open source projects, packagecloud.io provides free hosting for open source projects (though at your scale, we may have to pay them a bit),deps.co offers maven hosting as a service. Not sure which if any of these would meet your communities needs... but there are a lot of good choices.
One way to approach the problem would be to simply give the TSC members (or some subset chosen by the projects TSC) Admin rights to their github orgs. This way, when a project is approved by the TSC, a TSC member can create the repo right there on the spot.
There are tools to require DCO for github (we are using one in this repo), and a bunch of available tools for enforcing CLA (I've had to go through them at times when contributing to a project on github). So eminently solvable :) But an important point to bring up. |
||
|
|
||
| CII Badging | ||
| ----------- | ||
|
|
||
| LNF Projects should work together to meet CII Badging requirements. | ||
|
|
||
| CII Badging covers many aspects of project quality along an increasing | ||
| difficulty scale from Passing to Silver to Gold. At the high end of the scale, | ||
| the requirements are exceptionally difficult (binary-reproducible builds, 2FA | ||
| for all commits). | ||
|
|
||
| The CII Badging requirements are here: | ||
|
|
||
| https://github.com/coreinfrastructure/best-practices-badge/blob/master/README.md | ||
|
|
||
| ONAP has extensive CII Badging docs here: | ||
|
|
||
| https://wiki.onap.org/display/DW/CII+Badging+Program | ||
|
|
||
| Cross-Project Security | ||
| ---------------------- | ||
|
|
||
| Track and quash security vulnerabilities in LFN leveraging cross-project | ||
| advantages. | ||
|
|
||
| Cross-Project CI/CD | ||
| ------------------- | ||
|
|
||
| Continue improving and extending LFN Cross-Project Continuous Integration | ||
| Testing (CI) and Continuous Delivery (CD) pipelines. | ||
|
|
||
| Examples: | ||
|
|
||
| * Provide continuous, automated builds in common package formats for | ||
| consumption by other projects. | ||
| * Provide common configuration management tooling to facilitate installation | ||
| and configuration by other projects. | ||
| * Provide pre-built/installed/configured containers to facilitate deployments | ||
| by other projects. | ||
| * Run tests that consume LFN Project's CD pipelines and tooling, potentially | ||
| integrating multiple LFN Projects, and validate deployment scenarios. | ||
|
|
||
| Identify Quality Tooling | ||
| ------------------------ | ||
|
|
||
| Leverage the shared knowledge and experience of LFN Projects to identify good | ||
| solutions to common tooling problems. | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. there are lots of interesting linters available, vrpg created a docker which integrates lots of upstream linters |
||
|
|
||
| As always, LFN Projects are completely in control of what tooling they choose | ||
| to use. | ||
|
|
||
| Examples: | ||
| * Better options than Nexus IQ for scanning | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
as mentioned in the discussion thread (#1)
on our side we moved to gitlab because most of the features mentioned though github + .. are built-in.
we use the following features
Moreover gitlab is open source, which provides flexibility.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@morganrOL Happy to throw gitlab into the consideration as well. The thing I care most about personally is ecosystem of tools. Github is the leader there, but gitlab is a close second (and has lots of other cool features as you mention).