comprehensive project intelligence - software summitjason van zyl Ñ comprehensive project...

12
Comprehensive Project Intelligence Jason van Zyl Sonatype Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Sonatype Jason van Zyl — Comprehensive Project Intelligence Slide 1

Upload: others

Post on 16-Jan-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Comprehensive Project Intelligence - Software SummitJason van Zyl Ñ Comprehensive Project Intelligence Slide 1. Outline m2eclipse Never leave the IDE for your Maven-related work!

Comprehensive Project Intelligence

Jason van ZylSonatype

Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Sonatype

Jason van Zyl — Comprehensive Project Intelligence Slide 1

Page 2: Comprehensive Project Intelligence - Software SummitJason van Zyl Ñ Comprehensive Project Intelligence Slide 1. Outline m2eclipse Never leave the IDE for your Maven-related work!

Outlinem2eclipse

Never leave the IDE for your Maven-related work!

NexusThe ultimate in Maven Repository management and beyond!

HudsonThe future of Continuous Integration, on-demand builds, and release management!

MavenThe best is yet to come (and we’ll fix a bunch of stuff)!

Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Sonatype

Jason van Zyl — Comprehensive Project Intelligence Slide 2

Page 3: Comprehensive Project Intelligence - Software SummitJason van Zyl Ñ Comprehensive Project Intelligence Slide 1. Outline m2eclipse Never leave the IDE for your Maven-related work!

m2eclipseNever leave the IDE for your Maven-related work

Configuration frameworkSearching for POMsCreating projects from ArchetypesAmazing POM editor – XML (with full auto completion), Dependency Analysis, Form-based, and graphical viewSearching for dependenciesSource materializationSearching for plugins – and even goals in pluginsDebugging Maven plugins from within Eclipsem2eclipse Configuration Framework – keeping IDEs and automated builds in sync!Project materialization – how long does it take a new developer to become effective?

Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Sonatype

Jason van Zyl — Comprehensive Project Intelligence Slide 3

Page 4: Comprehensive Project Intelligence - Software SummitJason van Zyl Ñ Comprehensive Project Intelligence Slide 1. Outline m2eclipse Never leave the IDE for your Maven-related work!

m2eclipse + configuration framework

Automation & Maven

Humans & Eclipse

WTP AJDT

JDT Flex

Turn Eclipse mumbo-jumbointo Maven talk

Turn Maven mumbo-jumbointo Eclipse talk

m2eclipse Configuration Framework

Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Sonatype

Jason van Zyl — Comprehensive Project Intelligence Slide 4

Page 5: Comprehensive Project Intelligence - Software SummitJason van Zyl Ñ Comprehensive Project Intelligence Slide 1. Outline m2eclipse Never leave the IDE for your Maven-related work!

Nexus

The ultimate in Maven Repository management and beyond!

Repository & Configuration ManagementFine grained security providing for authentication and authorizationVirtual repositories – What are those? A savior for you OSGi loversUI using EXTJS which is simply another REST client for NexusFull REST API using Restlet

Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Sonatype

Jason van Zyl — Comprehensive Project Intelligence Slide 5

Page 6: Comprehensive Project Intelligence - Software SummitJason van Zyl Ñ Comprehensive Project Intelligence Slide 1. Outline m2eclipse Never leave the IDE for your Maven-related work!

Nexus

Apache

Codehaus

JBoss

Terracotta

Dev

Test

QAProduction

Open Source Ghetto

Precious DevelopersYour Ghetto

Repository & Configuration Management

- bad POMs- repositories in POMs (bad dog!)- mixed snapshot and release repositories- bad optional dependencies- screwed up metadata

World

Unified indicesfor m2e

One repositoryconfiguration!

Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Sonatype

Jason van Zyl — Comprehensive Project Intelligence Slide 6

Page 7: Comprehensive Project Intelligence - Software SummitJason van Zyl Ñ Comprehensive Project Intelligence Slide 1. Outline m2eclipse Never leave the IDE for your Maven-related work!

OSGI Runtime

A 1.1

B 1.2

B 1.3

D 1.3

Bundle Bundle

A 1.1

B 1.2

D 1.3

Bundle Repository

Typical way people deal with OSGi runtimes – manually

Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Sonatype

Jason van Zyl — Comprehensive Project Intelligence Slide 7

Page 8: Comprehensive Project Intelligence - Software SummitJason van Zyl Ñ Comprehensive Project Intelligence Slide 1. Outline m2eclipse Never leave the IDE for your Maven-related work!

OSGI Runtime

?

Bundle Bundle

A 1.1

B 1.2

D 1.3

Maven/P2 Repository

OSGi runtimes resolving against Maven/P2 repositories – a problem

Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Sonatype

Jason van Zyl — Comprehensive Project Intelligence Slide 8

Page 9: Comprehensive Project Intelligence - Software SummitJason van Zyl Ñ Comprehensive Project Intelligence Slide 1. Outline m2eclipse Never leave the IDE for your Maven-related work!

OSGI Runtime

A 1.1

B 1.2

B 1.3

D 1.3

Bundle Bundle

A 1.1

B 1.2

D 1.3

Nexus Virtual Repository

Nexus

OSGi runtimes resolving against a virtual Nexus repository – OK!

Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Sonatype

Jason van Zyl — Comprehensive Project Intelligence Slide 9

Page 10: Comprehensive Project Intelligence - Software SummitJason van Zyl Ñ Comprehensive Project Intelligence Slide 1. Outline m2eclipse Never leave the IDE for your Maven-related work!

HudsonThe future of Continuous Integration, on-demand builds, and release management!

Writing all extension points in Hudson as Maven plugins and Plexus components (with the work we’ve done writing Spring components would also be possible)Integration of JSecurityImplementing a similar REST layer as Nexus and creating a UI using EXTJSAutomatic installation of external Maven installationsDrools Workflow integration

Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Sonatype

Jason van Zyl — Comprehensive Project Intelligence Slide 10

Page 11: Comprehensive Project Intelligence - Software SummitJason van Zyl Ñ Comprehensive Project Intelligence Slide 1. Outline m2eclipse Never leave the IDE for your Maven-related work!

MavenThe best is yet to come (and we’ll fix a bunch of stuff)!

Refactored Project Builder• A specification for building a project object model (POM)• Domain specific parsers – attribute-based XML, Groovy, Ruby• MixinsMercury – new repository and transport layer• Developed by Greg, Jan, and Jesse from Webtide (the Jetty people)• Super fast transport – async client with connection pooling and

parallelization• Atomic downloads and deployments (with Nexus)• Full PGP support• WebDAV client built-in• Full support for ranges using a pseudo boolean solver – SAT4J• Designed, implemented and tested without POMs. Mercury can be

embedded and will allow any domain specific application to retrieve, and deploy artifacts from any type of Repository: GEMs, P2, and Maven repositories are possible

Maven Embedder

Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Sonatype

Jason van Zyl — Comprehensive Project Intelligence Slide 11

Page 12: Comprehensive Project Intelligence - Software SummitJason van Zyl Ñ Comprehensive Project Intelligence Slide 1. Outline m2eclipse Never leave the IDE for your Maven-related work!

Hands on DemoLet’s take a look at m2eclipse, Hudson, Nexus, and Maven!I bet I can get anyone setup with this project faster then they’ve ever been on-boarded with a project before!

Colorado Software Summit: October 19 – 24, 2008 © Copyright 2008, Sonatype

Jason van Zyl — Comprehensive Project Intelligence Slide 12