Perforce Innovations Showcase 

Post on 13-Apr-2017

418 views 0 download

Transcript of Perforce Innovations Showcase 

Product Innovation Showcase

Product Innovation ShowcaseColleen Kulhanek

Vice President of Marketing

3

Great traction on our enterprise-grade Git solution

Large deployments of our native DVCS

Significant performance improvements in our core

10x growth in code review usage

Helix in simplified Chinese, Japanese, Korean

Significant accomplishments over past 18 months

4

Key market trends and insights from you

Unified experience is key

Teams are distributed Cloud usage on the rise Repository sizes on the rise

Developers prefer DVCS

Areas of focus for2016-17

6

Native support for Git in our core

One Product - HelixFrom… To…

Swarm Helix CloudApplicationInsights

SDKs(in C/C++, Java,

Ruby …)Git Fusion

Helix Versioning Engine

Helix UI(same in cloud and on-prem)

Web Services APIs and SDKs

Helix Core (P4 and Git)

Helix Web App

Desktop Apps

3rd Party Apps

GitSwarm

Apps

Versioning

Analytics Security

Notification

GitWeb Services Platform

PerformanceScalability

Distributed workflowsFederation

SecurityAudit logsMono repo

On premise/CloudHelix Core

Easier to integrate via Web Services

John WillistonProduct Marketing ManagerHelix

Web App

Desktop Apps

3rd Party Apps

GitSwarm

Charles McLouthDirector of Technical Sales

Versioning

Analytics Security

Notification

Git

PerformanceScalability

Distributed workflowsFederation

SecurityAudit logsMono repo

On premise/Cloud

Helix CoreCharles McLouth

Director of Technical Sales

Easier to integrate via Web Services

Helix Web App

Desktop Apps

3rd Party Apps

GitSwarm

Apps

Versioning

Analytics Security

Notification

GitWeb Services Platform

PerformanceScalability

Distributed workflowsFederation

SecurityAudit logsMono repo

On premise/CloudHelix Core

Two Years in Review

Administration

Performance

Streams

UserProductivity

DVCS

13

Native LDAP for Authentication

LDAP / Active Directory

Administration

14

LDAP Group Mirroring Administration

LDAP / Active Directory

P4-Developers P4-Developers

15

LDAP Group Mirroring

Protections:write group P4-Developers * //P4/...super group p4super * //...

Administration

Any command can fire a trigger> Edit > add > delete > etc

Command Triggers Administration

17

Command Triggers Administration

p4 obliterate //…

Sorry not allowed!

35%Compressed

ImprovedPerformance

ReducedFragmentation

Performance

db.have

Administration

19

Parallel Sync

p4 sync

Performance

20

Parallel Sync Performance

p4 sync

21

Parallel Submit

p4 submit

Performance

22

Parallel Submit

p4 submit

Performance

23

Read Only Client

p4 client builder

db.have builder.have

Performance

24

Read Only Client

p4 sync //builder/…

db.have builder.have

Performance

25

Read Only Client

p4 client –d builder

db.have builder.have

Performance

26

New Path types• Import @ Change• Writeable Imports

Stream Spec is Transactional• Can be staged and submitted with code

Streams Features Streams

Create an alias for a single command or a chain of commands

Introducing Aliases Productivity

I’m used to git/subversion

blame

checkout

pull

purge

stash-list

annotate

sync

fetch –r origin

clean

changes –s shelved

Git / SVN Emulation Productivity

Complex Commands

Copyup $(b)

Complex Commands

switch dev && merge --from $(b) && resolve -as && submit -d "Copied up from $(b)" && push

Productivity

30

Clone projects to local servers Work disconnected Fetch changes from shared server Independent local branches Push changes to shared server

Native Workflow DVCS

31

Extended Federation

Push

Fetch

Fetch

Push

Server AServer B

Server C

DVCS

32

Shallow Clone

clone –m 2

DVCS

#1

#2

#3

#4

#3

#4#2

#3

33

Narrow Clone

ArtCode

CoreiOSWin

Tests

Shared HelixCode

CoreiOS

Tests

Jill’sHelix repo

CodeCoreWin

Tests

John’sHelix repo

DVCS

34

Remote File Locking

foo.jpg

p4 edit –remote foo.jpg

DVCS

35

Share Local Shelves

Shelf# 666

p4 push -r –s 555

DVCS

What’s Coming

Give Protection permissions to non-super users

Limited to portions of depot

Administration

38

Access Control Delegation Administration

TeamMembers

Super grants admin access to depot path://helix/united/…

For user TeamLeadSuper

Team Lead grants write access to depot path://helix/united/…

For group TeamMembersTeamLead

Git is great, but… Maximum practical repository size

- Leading to Git sprawl (lots of repos) Too complex for some contributors Raises security concerns Weak visibility across the entire pipeline DevOps challenges for continuous delivery Destructible history can be a problem

Git

Git Data model idealfor single project

Git

What if a Git repository was just a Helix Depot?

Git

42

GraphDepot

Hierarchical Depot

HELIX MASTER REPOSITORY

Graph Depot Scalable Back End for Git

Git is great, but better with Helix

Maximum practical repository size - Leading to Git sprawl (lots of repos)

Too complex for some contributors Raises security concerns Weak visibility across the entire pipeline DevOps challenges for continuous delivery Destructible history can be a problem

Scalable Back End for Git

Web Services

Helix Web App

Desktop Apps

3rd Party Apps

GitSwarm

Apps

Versioning

Analytics Security

Notification

GitWeb Services Platform

PerformanceScalability

Distributed workflowsFederation

SecurityAudit logsMono repo

On premise/CloudHelix Core

45

Web services provide a standard means of interoperating between software applications running on a variety of platforms and frameworks.

Web services can be combined in a loosely coupled way to achieve complex operations.

Web Services Why Web Services?

46

Helix Web Services provide the building blocks• Well defined interfaces• Consistent data representation• Common Helix commands

Providing more complex capabilities• Project Administration• Project Metrics• Code Review

Web Services Why Web Services?

Recap

Available NowDownload Today! Helix Server 2016.1

- ReadOnly clients, db.have - Remote filelock, push to shelf- Command aliasing

What’s Coming WebServices

- Basic and Administrative commands GraphDepot

- Scalable Git Management

Helix ClientsJohn Williston

Product Marketing Manager / Developer Evangelist

Clients and Apps

Helix Web App

Desktop Apps

3rd Party Apps

GitSwarm

Apps

Versioning

Analytics Security

Notification

GitWeb Services Platform

PerformanceScalability

Distributed workflowsFederation

SecurityAudit logsMono repo

On premise/CloudHelix Core

Helix Clients

Swarm GitSwarm

SwarmCode Review and Collaboration

54

Swarm New Customers

New Features

Your own review groups Batched email notifications Enhanced search capabilities Improved differences viewing Download project content as a zip archive

Swarm

56

Review Groups Swarm

Batched Email

Delay Digest

Swarm

Enhanced Search Projects Users Content

Swarm

Improved Differencing

Whitespace

Swarm

Download Content

One Button Folders Files

Swarm

61

Federated Deployment Swarm

62

Support for Japanese, Korean, and Chinese

New Languages Swarm

Swarm – What’s Coming

Evolve Beyond review Unified UX One Surface

Swarm

Create Create Import Invite

Swarm

Administer Manage Assign Delegate

Swarm

Content Browse Drag/drop Create

Swarm

DVCS Workflow Copy & clone Workflow Native Git

Swarm

69

Multiple Servers Swarm

70

Phased Releases

New UIAdmin

Multi-server

Swarm

DVCS

GitSwarm

72

Distributed development Native Git experience & tools Built from GitLab

Newest Component

Bidirectional Helix mirroring Single source of truth All the Helix –ilities

GitSwarm

73

Hybrid Needed

““

GitSwarm

Enterprise-grade management of Git that offers important aspects of a DVCS — good merging, the ability to work offline and good collaboration — along with the security and central repository of a CVCS, will resolve most remaining concerns about the use of the DVCS model.

— Gartner, Inc. Market Guide for Software Change and Configuration Management

74

Hybrid Workflows• Distributed & Centralized Version control,

code reviews, simple file sharing• Happy developers & contributors

Every File• Efficiently handles large, often binary, data

DevOps Stay Happy & Productive• A mainline source for all builds even with

distributed development

All IP Safe & Secure • Granular permissions, theft risk monitoring

Perforce Helix

CONTRIBUTORS

CONSUMERS

GitSwarm

Notable Features

Simple project management Narrow cloning with Git Merge-request workflow Flexible security and administration

GitSwarm

Create Project

Scope Import Mirror

GitSwarm

77

Narrow Cloning

ArtCode

CoreiOSWin

Tests

Shared Helix Code

CoreiOS

Tests

Jill’sGit repo

CodeCoreWin

Tests

John’sGit repo

GitSwarm

Narrow cloning with Git Git-sized slices of a huge

Helix monorepo Remap content as needed Shallow-cloning support All pushed work is mirrored GitSwarm picks up others’

contributions

Narrow Cloning Branches Paths Go!

GitSwarm

Merge Requests

Deliver Review Collaborate Incorporate

GitSwarm

Flexible Security

Groups Roles Manage

GitSwarm

81

Six months since market launch Five product releases in that time Hundreds of GitSwarm users

Rapid Adoption GitSwarm

GitSwarm – What’s Coming

Centralized Auth

User: Password:

GitSwarm

AD/LDAP

84

Git LFS

Shared Helix

John’sGit repo

GitSwarm

85

Graph Depot GitSwarm

GraphDepot

Hierarchical Depot

HELIX MASTER REPOSITORY Significant performance gains

Reduced ownership cost

86

Phased Releases

Central Authentication

Central Authorization

GitSwarm

Git LFS and Graph Depot

Recap

Available NowDownload Today! Swarm 2016.1

- Review groups, batched email, etc. GitSwarm 2016.1

- Narrow cloning UI

What’s Coming Swarm

- One single-UX app for many stakeholders GitSwarm

- Central auth, Git LFS, graph depot

Thank you!

ckulhanek@perforce.comcmclouth@perforce.comjwilliston@perforce.com

Meet us at the Helix Hive

Workshop P4Ideax