Open Developer Platform: What Is It and Why Should I Care? Maurizio Pillitu
symphonyOSS
1,119 views
19 slides
Jun 28, 2017
Slide 1 of 19
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
About This Presentation
Presented at the 2017 Members Meeting.
Size: 2.32 MB
Language: en
Added: Jun 28, 2017
Slides: 19 pages
Slide Content
Open Developer Platform
2017-06-21 Annual Member’s Meeting, NYC
Maurizio Pillitu
Devops Director, Symphony Software Foundation
@maoo [email protected]
What is it and why should I care
1/14
A set of online services and
best practices to expedite the
developer productivity of
Foundation's project teams.
Open Developer Platform
What is it
2/14
Open Developer Platform
Architecture
Source Code (SCM)
Build Test Report Publish
Dev
Deploy
Project Infrastructure
Open Developer Platform
Architecture
Project Infrastructure
Source Code (SCM)
Build Test Report Publish
Dev
Deploy
Technology 1 Technology 2 Technology N... Technologies
2/14
Project Infrastructure
Source Code (SCM)
Build Test Report Publish
Technology 1 Technology 2 Technology N... Technologies
Incubating Active Archived Project Lifecycle
Dev
Deploy
Open Developer Platform
Contribution flow
3/14
3/14
Open Developer Platform
Contribution flow
Project Infrastructure
Source Code (SCM)
Build Test Report Publish
Technology 1 Technology 2 Technology N... Technologies
Incubating Active Archived Project Lifecycle
Contribution
Dev
Deploy
4/14
A service-based
infrastructure to support
committers throughout the
entire project lifecycle.
Project Infrastructure
What is it
Github
symphonyoss
TRAVIS CI
Build and Test
✅Clojure, Java, Javascript and Python currently tested and documented
✅Language-specific frameworks/DSLs/platforms for building and testing
✅Use myget.org for C# projects
Build and test - Travis CI
6/14
Github
symphonyoss
TRAVIS CI
Build and Test
TRAVIS CI
Reporting
✅Github IdM widely used
❗Reporting != Validation. Manual checks always needed!
❗Manage false negatives
❗Self-governed repos with org-wide configuration
❗Work in progress: WhiteSource and Fossa
Reporting
SonarCloud
VersionEye
Coverity
Scan
Node
Security
Bithound Code Climate
Github PagesWhiteSource Fossa
7/14
Github
symphonyoss
TRAVIS CI
Build and Test
TRAVIS CI
Reporting
✅Foundation-wide license and components whitelist
✅Identify licenses
❗Dual licensing
❗Code-driven ignores (for transitive dependencies and hosted files)
Reporting - Legal
SonarCloud
VersionEye
Coverity
Scan
Node
Security
Bithound Code Climate
Github PagesWhiteSource Fossa
8/14
Github
symphonyoss
TRAVIS CI
Build and Test
TRAVIS CI
Reporting
✅Define/customise quality gates
❗Test coverage is fundamental
❗Mocked interfaces
❗Integration testing
Reporting - Quality
SonarCloud
VersionEye
Coverity
Scan
Node
Security
Bithound Code Climate
Github PagesWhiteSource Fossa
9/14
Github
symphonyoss
TRAVIS CI
Build and Test
TRAVIS CI
Reporting
✅CVEs based on package name/version
❗Language-specific static code analysis
Reporting - Security
SonarCloud
VersionEye
Coverity
Scan
Node
Security
Bithound Code Climate
Github PagesWhiteSource Fossa
10/14
Github
symphonyoss
TRAVIS CI
Build and Test
TRAVIS CI
Reporting
✅Integration with most important eco-systems
❗Artifact signing (security)
❗code-driven automation (ie semantic-release)
❗Work in progress: Docker Hub
Publish
TRAVIS CI
Artifact
publishing
PyPI NuGet Docker Hub
Maven Central NPMJS
11/14
Github
symphonyoss
TRAVIS CI
Build and Test
TRAVIS CI
Reporting
✅Continuous (Dev) Delivery keystone
✅Containerised deployments
❗Cloud enablement
❗Deployment configuration standardisation
❗Certified image registry
Dev Deployment
TRAVIS CI
Artifact
publishing
TRAVIS CI
Dev Deploy
Openshift
Online
Symphony Dev
Pod
foundation-dev
Rolling
deployment
Symphony APIs
Integration
testing
12/14
13/14
✓CLA bot to scan PRs for IP
cleanliness
✓Facilitate cloud enablement
✓Reporting
○More tools
○Improve existing integrations
Open Developer Platform
Future
14/14
❗Implementing and/or maintaining a
modern developer workflow is
hard and time-consuming
❗Outdated tools/processes are
enemies of productivity and talent
retention
✅Let us take care of your dev
workflow!
Open Developer Platform
Why should I care
14/14
✅symphonyoss.atlassian.net/wiki
✅github.com/symphonyoss
✅symphony.foundation
Open Developer Platform
Resources