You are on page 1of 7

This DZone Refcard is brought to you by:

Visit refcardz.com to browse and download the entire DZone Refcardz collection
brought to you by...
#98
Get More Refcardz! Visit refcardz.com

CONTENTS INCLUDE:
n

n
Repository Management
Repository Coordinates
Getting Started with
Maven Repository Management
n
Project Dependencies
n
Remote Repositories
n
Proxy Repositories
Hosted Repositories and more...
By Jason Van Zyl
n

becomes unavailable, your builds will rely on a local cache


MAVEN REPOSITORY MANAGEMENT of artifacts from a remote repository.
• You can deploy 3rd party artifacts to your repository
A Maven repository provides a standard for storing and serving manager. If you have a proprietary JDBC driver, add it to
binary software. Maven and other tools such as Ivy interact an internal 3rd party repository so developers can add it
with repositories to search for binary software artifacts, locate as a project dependency without having to manually
project dependencies, and retrieve software artifacts from install it in a local repository.
a repository.
• It will be easier to collaborate and distribute software
Maven Repository managers serve two purposes: they act internally. Instead of sending other developers
as highly configurable proxies between your organization instructions for checking out source from source control
and the public Maven repositories and they also provide an and building entire applications from source, publish
organization with a deployment destination for your own artifacts to an internal repository and share binary artifacts.
generated artifacts. • If you are deploying software to the public, the fastest
way to get your users productive is with a standard
Proxy Remote Repositories
Maven repository.
When you proxy a remote repository, you repository manager
www.dzone.com

• You can control which artifacts and repositories are


accepts requests for artifacts from clients. If the artifact is not
referenced by your projects.
already cached, the repository manager will retrieve the artifact
from the remote repository and cache the artifact. Subsequent Additional Features and Benefits
requests for the same artifact will be served from the local Searching and Indexing Artifacts: All repository managers
cache. provide an easy way to index and search software artifacts
using the standard Nexus Indexer format.
Repository Groups: Repository managers can consolidate
multiple repositories into a single repository group making it
Hosted Internal Repositories
easier to configure tools to retrieve artifacts from a single URL.
When you host a repository, your repository manager takes
care of organizing, storing, and serving binary artifacts. You
can use a hosted, internal repository to store internal release
artifacts, snapshot artifacts, or 3rd party artifacts.
Getting Started with Repository Management

Release Artifacts
These are specific, point-in-time releases. Released artifacts
are considered to be solid, stable, and perpetual in order to
guarantee that builds which depend upon them are repeatable
over time. Released JAR artifacts are associated with PGP
signatures and checksums verify both the authenticity and
integrity of the binary software artifact. The Central Maven
repository stores release artifacts.

Snapshot Artifacts
Snapshots capture a work in progress and are used during
development. A Snapshot artifact has both a version number
such as “1.3.0” or “1.3” and a timestamp. For example, a
snapshot artifact for commons-lang 1.3.0 might have the name
commons-lang-1.3.0-20090314.182342-1.jar.

Reasons to Use a Repository Manager


• Builds will run much faster as they will be downloading
artifacts from a local cache.
• Builds will be more stable because you will not be relying
on external resources. If your internet connection

DZone, Inc. | www.dzone.com


2
Getting Started with Maven Repository Management

Procuring External Artifacts: Organizations often want some


control over what artifacts are allowed into the organization.
Many repository managers allow administrators to define lists
of allowed and/or blocked repositories. PROJECT DEPENDENCIES
Staging and Release Management: Repository managers can
also support decisions and workflow associated with software Build tools like Maven and Ivy allow you to define project
releases sending email notifications to release managers, dependencies using Maven coordinates.
developers, and testers.
Declaring Dependencies in Maven
<project>
...
<dependencies>
<dependency>
<groupId>org.codehaus.xfire</groupId>
<artifactId>xfire-java5</artifactId>
Security and LDAP Integration: Repository managers can <version>1.2.5</version>
</dependency>
be configured to verify artifacts downloaded from remote <dependency>
<groupId>junit</groupId>
repositories and to integrate with external security providers <artifactId>junit</artifactId>
<version>3.8.1</version>
such as LDAP. <scope>test</scope>
</dependency>
Multiple Repository Formats: Repository managers can also </dependencies>
...
automatically transform between various repository formats </project>

including OSGi Bundle repositories (OBR), P2 repositories,


Maven repositories, and other repository formats. REMOTE REPOSITORIES
REPOSITORY COORDINATES
Central Maven Repository
Repositories store artifacts using a set of coordinates: groupId, The Central Maven repository contains almost 90,000 software
artifactId, version, and packaging. The GAV coordinate artifacts occupying around 100 GB of disk space. You can look
standard is the foundation for Maven’s ability to manage at Central as an example of how Maven repositories operate
dependencies. and how they are assembled.
http://repo1.maven.org
This set of coordinates is often referred to as a GAV coordinate,
which is short for “Group, Artifact, Version coordinate.” Apache Snapshot Repository
The Apache Snapshot repository contains snapshot artifacts for
Coordinate: groupId projects in the Apache Software Foundation.
A group identifier groups a set of artifacts into a logical group. http://repository.apache.org/snapshots/
For example, software components being produced by the
Maven project are available under the groupId Codehaus Snapshot Repository
org.apache.maven. The Codehaus Snapshot repository contains snapshot artifacts
for projects hosted by Codehaus.
Coordinate: artifactId http://nexus.codehaus.org/snapshots/
An artifact is simply a name for a software artifact. A simple web
application project might have the artifactId “simple-webapp”,
ABOUT NEXUS
and a simple library might be “simple-library”. The combination
of groupId and artifactId must be unique for a project. Nexus manages software “artifacts” required for development,
Coordinate: version deployment, and provisioning. If you develop software, Nexus
A numerical version for a software artifact. For example, if your can help you share those artifacts with other developers and
simple-library artifact has a Major release version of 1, a minor end-users. Maven’s central repository has always served as a
release version of 2, and point release version of 3, your version great convenience for users of Maven, but it has always been
would be 1.2.3. Versions can also contain extra information to recommended to maintain your own repositories to ensure
denote release status such as “1.2-beta”. stability within your organization. Nexus greatly simplifies the
maintenance of your own internal repositories and access
Coordinate: packaging
to external repositories. With Nexus you can completely
Packaging describes the contents of the software artifact.
control access to, and deployment of, every artifact in your
While the most common artifact is a JAR, Maven repositories
organization from a single location.
can store any type binary software format including ZIP, SWC,
SWF, NAR, WAR, EAR, SAR. Downloading Nexus Open Source
Addressing Resources in a Repository To download Nexus Open Source, go to
Tools designed to interact with Maven repositories translate http://nexus.sonatype.org and click on the Download menu
artifact coordinates into a URL which corresponds to a location item. Download the nexus-oss-webapp-1.6.0-bundle.tar.gz
in a Maven repository. If a tool such as Maven is looking for or nexus-oss-webapp-1.6.0-bundle.zip file from the Download
version 1.2.0 of the some-library JAR in the group com.example, directory.
this request is translated into: Downloading Nexus Professional
/com/example/some-library/1.2.0/some-library-1.2.0.jar To download Nexus Professional, go to
/com/example/some-library/1.2.0/some-library-1.2.0.pom
http://www.sonatype.com/products/nexus and click on Download

DZone, Inc. | www.dzone.com


3
Getting Started with Maven Repository Management

Nexus Pro. After you fill out a simple registration form, a upper right-hand corner of the web page, and you should see
download link will be sent via email. the login dialog.

Installing Java
Nexus Open Source and Nexus Professional only have one
prerequisite, a Java Runtime Environment (JRE) compatible
with Java 5 or higher. To download the latest release of the Sun
JDK, go to http://developers.sun.com/downloads/.

Installing Nexus THE DEFAULT NEXUS USERNAME AND PASSWORD IS “admin”


Unpack the Nexus distribution in any directory. Nexus doesn’t AND “admin123”.
have any hard coded directories, it will run from any directory. If
you downloaded the ZIP archive, run: Post-install Checklist
$ unzip nexus-webapp-1.6.0-bundle.zip After installing Nexus make sure to make the following
configuration changes.
And, if you downloaded the GZip’d TAR archive, run:
(A) Change the Administrative Password by clicking on Security -> Users.
$ tar xvzf nexus-webapp-1.6.0-bundle.tgz Right-click on the admin user and choose “Set Password”.
(B) Configure the SMTP Settings by selecting Administration -> Server and
This will create two directories nexus-webapp-1.6.0/ and filling out the SMTP server information.
sonatype-work/. (C) Enable Remote Index Downloads for the Central Maven Repository.
Click on Views/Repositories -> Repositories. Select the “Maven Central”
The Sonatype Work Directory repository and open up the Configuration tab. Under Remote
The Nexus installation directory nexus-webapp-1.6.0 has a Repository Access set Download Remote Indexes to true.
sibling directory named sonatype-work/. This directory contains (D) Install Professional License (Nexus Professional Only). Select
Administration -> Licensing and upload your Nexus Professional License.
all of the repository and configuration data for Nexus and is
stored outside of the Nexus installation directory to make it
easier to upgrade to a newer version of Nexus.
CONFIGURING MAVEN FOR NEXUS

RUNNING NEXUS To use Nexus, you will configure Maven to check Nexus instead
of the public repositories. To do this, you’ll need to edit your
When you start Nexus for the first time, it will be running mirror settings in your ~/.m2/settings.xml file.
on http://localhost:8081/nexus/. To start Nexus, find the
Update your Maven Settings
appropriate startup script for your platform in the
Place the following XML into a file named ~/.m2/settings.
${NEXUS_HOME}/bin/jsw directory.
xml. This Maven Settings file configures your Maven builds to
Starting Nexus fetch artifacts from the public group of the Nexus installation
The following example listing starts Nexus using the script for available at http://localhost:8081/nexus/
Mac OS X. The Mac OS X wrapper is started with a call to
<settings>
nexus start: <mirrors>
<mirror>
$ cd ~/nexus-webapp-1.6.0 <!--This sends everything else to /public -->
$ ls ./bin/jsw/ <id>nexus</id>
aix-ppc-32/ linux-ppc-64/ solaris-sparc-32/ <mirrorOf>*</mirrorOf>
aix-ppc-64/ linux-x86-32/ solaris-sparc-64/ <url>http://localhost:8081/nexus/content/groups/public</url>
hpux-parisc-32/ linux-x86-64/ solaris-x86-32/ </mirror>
hpux-parisc-64/ macosx-universal-32/ windows-x86-32/ </mirrors>
$ chmod -R a+x bin <profiles>
$ ./bin/jsw/macosx-universal-32/nexus start <profile>
Nexus Repository Manager... <id>nexus</id>
$ tail -f logs/wrapper.log <repositories>
INFO ... [ServletContainer:default] -SelectChannelConnector@0.0.0.0:8081 <repository>
<id>central</id>
<url>http://central</url>
Configuring Nexus as a Service <releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
When installing Nexus, you will often want to configure Nexus </repository>
</repositories>
as a service. To configure Nexus as a service on Windows: <pluginRepositories>
<pluginRepository>
(A) Open a Command Prompt <id>central</id>
<url>http://central</url>
(B) Change directories to C:/Program Files/nexus-webapp-1.6.0 <releases><enabled>true</enabled></releases>
<snapshots><enabled>true</enabled></snapshots>
(C) Change directories to bin/jsw/windows-x86-32 </pluginRepository>
(D) Run InstallNexus.bat to install Nexus as a Windows Service </pluginRepositories>
</profile>
(E) Run “net start nexus-webapp” to start the Nexus service </profiles>
<activeProfiles>
<!--make the profile active all the time -->
To configure Nexus as a service on Linux: <activeProfile>nexus</activeProfile>
</activeProfiles>
(A) Copy bin/jsw/$PLATFORM/nexus to /etc/init.d </settings>

(B) chmod 755 /etc/init.d/nexus


(C) Edit the startup script changing APP_NAME, APP_LONG_NAME, Deploying Artifacts to Nexus
NEXUS_HOME, PLATFORM, WRAPPER_CMD, and WRAPPER_CONF
To deploy artifacts to Nexus you must set server credentials
(D) (Optional) Set the RUN_AS_USER to “nexus
in your Maven Settings and configure your project’s POM
Login to Nexus to publish to Nexus. Using the default deployment user’s
To use Nexus, fire up a web browser and go to: credentials, put the following server element in your Maven
http://localhost:8081/nexus. Click on the “Log In” link in the Settings XML stored in ~/.m2/settings.xml

DZone,
DZone, Inc.
Inc. || www.dzone.com
www.dzone.com
4
Getting Started with Maven Repository Management

<settings> Once you select Proxy Repository you will see the New Proxy

<servers> Repository form shown here:
<server>
<id>releases</id>
<username>deployment</username>
<password>deployment123</password>
</server>
<server>
<id>snapshots</id>
<username>deployment</username>
<password>deployment123</password>
</server>
</servers>

</settings>

And, add the following XML to your Maven project’s pom.xml:


<distributionManagement>
<repository>
<id>releases</id>
<name>Releases Repository</name>
<url>
http://localhost:8081/nexus/content/repositories/releases
</url>
</repository> Supply a unique identifier and name, choose a Repository
<snapshotRepository>
<id>snapshots</id> Policy of either Release or Snapshot, and provide the URL of
<name>Snapshot Repository</name>
<url> the remote repository in the Remote Storage Location.
http://localhost:8081/nexus/content/repositories/snapshots
</url>
</snapshotRepository> Enabling Remote Index Downloads
</distributionManagement>
While Nexus is preconfigured with the Central Maven
This configures your Maven build to deploy snapshots to repository, it is not configured to download indexes from
the hosted Snapshots repository and releases to the hosted remote repositories. Enabling indexes is essential if you want
Releases repository. When Maven performs the deployment, it to take full advantage of Nexus’ intuitive search interface.
will match the id element of the repository with the id element To enable Remote Index Downloads. Go to Views/Repositories
of the server in the settings.xml and send the appropriate -> Repositories. Select the Maven Central repository and click
credentials. on the Configuration tab. Set “Download Remote Indexes”
to true and click on Save. Nexus will then download the
The default deployment user is deployment and the default repository index from the remote repository. This process
password is deployment123. may take a few minutes depending on the speed of your
connection.

PROXY REPOSITORIES If the remote index has been successfully downloaded and
processed, the Browse Index tab for the Maven Central
This section details working with Proxy Repositories. repository will display thousands of artifacts.

What is a Proxy Repository? HOSTED REPOSITORIES


A proxy repository sits between your builds and a remote
repository like the Central Maven repository. When you ask What is a Hosted Repository?
a proxy repository for an artifact, it checks a local cache of A Hosted Repository contains artifacts which have been
artifacts it has already downloaded. If it does not have the published to a Nexus instance. These published artifacts
artifact requested, it will retrieve the artifact from the remote are stored in the Sonatype Work directory. This can include
repository. repositories that hold release artifacts and repositories that
Proxy repositories speed up your builds by serving frequently hold snapshot artifacts.
used artifacts from a local cache. They also provide for more Nexus comes configured with three Hosted repositories: 3rd
stability in case when your internet connection or the remote Party, Releases, and Snapshots. The Releases repository is for
repository becomes unavailable. your own internal software release artifacts, and the Snapshots
repository is for your own project’s snapshot artifacts. The 3rd
Adding a New Proxy Repository
Party repository is for 3rd party artifacts such as proprietary
To add a new Proxy Repository, go to Views/Repositories ->
drivers or commercial libraries which are not available from a
Repositories, and click on the Add button as shown in the
public Maven repository.
following figure. Select Proxy Repository from the drop down:
Adding a New Hosted Repository
This section details working with Hosted Repositories.

DZone, Inc. | www.dzone.com


5
Getting Started with Maven Repository Management

Anonymous Access: Control how and if Nexus is made


REPOSITORY GROUPS available to anonymous, unauthenticated users.
Application Server Settings: If Nexus is hosted behind a proxy,
What is a Repository Group?
or if you need to customize the URL, you can do so here.
A repository groups combines one or more repositories under
a single repository URL. You use repository groups to simplify System Notifications Settings: Configure automatic email
the configuration of tools like Maven which need to retrieve notifications for important system events.
artifacts from a set of common repositories. As a Nexus
administrator you can define new repositories, control which
Configuring Scheduled Tasks
If you are publishing snapshots releases to Nexus, you will
repositories are available in a group and the order in which
want to configure at least one scheduled task to periodically
artifacts are resolved from repositories in a group.
delete older snapshots releases. To configure a Scheduled
Adding Repositories to a Group Task, click on Administration -> Scheduled Tasks, and click on
Nexus ships with a Public Repository Group which contains the Add button. Select the appropriate Task Type. Some of
all of your hosted and proxy repositories. If you create a new the more common and useful Task Types follow:
repository, and you need to add this repository to the Public
Backup All Nexus Configuration Files: Will cause Nexus to
Group, go to Views/Repositories -> Repositories and select the
create a snapshot of all Nexus configuration files.
Configuration tab.
Download Indexes: Nexus will retrieve or update indexes for
all remote, proxy repositories.
Evict Unused Proxy Items: If space is a premium, you can
configure Nexus to remove proxy items which have not been
used within a specific time period.
Remove Snapshots from Repository: Nexus can be configured
to keep a minimum number of repositories and to delete
snapshots older than a specific time period.

Scheduled tasks can be configured to send an email alert


when they are executed, and you can schedule a task to run
Once, Hourly, Daily, Weekly, Monthly, or using a custom cron
expression.
To add a repository to repository group, drag a repository
from the “Available Repositories” list to the “Ordered Group Defining Repository Routes
Repositories” list and click on the Save button. Repository routes allow you to direct requests matching
Reordering Repositories in a Group specific patterns to specific repositories. For example, if you
When Nexus resolves an artifact from a Repository Group it wanted to make sure all requests for artifacts under org.some-
iterates over the repositories in the group, returning the first oss where directed to internal, hosted Releases and Snapshots
match. If an artifact exists in more than one repository, you repositories, you would define the following route:
may need to change the order of repositories in a Repository Type: Inclusive
Group. To change the order, go to Repositories/View -> URL Pattern: .*/org/some-oss/.*
Repositories: Releases, Snapshots
Repositories, select the group you need to reorder, and then
select the Configuration tab. To reorder repositories, click and To define a Repository Route, go to Administration -> Routing.
drag repositories to the correct order in the Ordered Group The Routing panel is where you can edit existing routes and
Repositories field and then click Save. create additional routes.

NEXUS ADMINISTRATION Configuring Nexus Security


Nexus Security has a highly configurable Role-based Access
Configuring Nexus Server Control system which relies on Privileges, Roles, and Users.
To configure Sonatype Nexus, click on Administration -> Server By default, Nexus ships with a default admin, deployment,
this will load the Nexus configuration panel. The following is a anonymous user along with associated roles. To configure a
list of some of the configuration sections in this panel: new Nexus user, go to Security -> Users and open up the Users
panel. On the users panel, click on the Add button to add a
SMTP Settings: Nexus supports release and deployment
new Nexus user. Once the user is created, click on the user to
using email. Before Nexus can send emails, you will need to
edit the user’s email address or to assign the user new Nexus
configure the appropriate SMTP settings in this section.
roles.
HTTP Request Settings: Configure custom timeouts and retry
To create or edit roles, click on Security -> Roles. Most of the
behavior for remote repositories as well as customize the
default roles cannot be edited directly, but you are free to
Nexus User Agent.
create new, custom roles by clicking on the Add button. Once
Security Settings: Nexus’ pluggable security providers are a role is created, you can assign it new privileges, by dragging
configured in this section. You can control which security realms Roles and Privileges from the Available Roles/Privileges list
are active and the order in which they are consulted during to the Selected Roles/Privileges list and clicking on the Save
authentication and authorization. button.

DZone, Inc. | www.dzone.com


6
Getting Started with Maven Repository Management

NEXUS PROFESSIONAL OTHER NEXUS RESOURCES

Nexus Professional is a central point of access to external For more information about Sonatype’s Nexus, see the
repositories which provides the necessary controls to make following resources:
sure that only approved artifacts enter into your software Free Nexus Book:
development environment. Central features of Nexus http://books.sonatype.com/nexus-book
Professional are:
Nexus OSS Site:
Nexus Procurement Suite: Gives Nexus administrators control http://nexus.sonatype.org
of what artifacts are allowed into an organization from a remote Nexus Pro Site:
repository. http://www.sonatype.com/products/nexus
Nexus Staging Suite: Provides workflow support for software
releases. Artifacts can be deployed to staging repositories, Participate in the Nexus Community
tested, and promoted only after they have been tested and Everyone is welcome to participate in the Nexus community
certified. as a developer or user. To participate, take advantage of the
following resources:
Hosting Project Web Sites: With Nexus Professional, you can
publish Maven project sites directly to your repository manager. Nexus IRC Channel:
#nexus on irc.codehaus.org:6667
Support for OSGi Repositories: Nexus Professional
supports OBR and P2 repositories used in OSGi and Eclipse Subscribe to the Nexus User Mailing List:
development. nexus-user-subscribe@sonatype.org
Subscribe to the Nexus Developer Mailing List:
Enterprise LDAP Support: Nexus Professional adds support
nexus-dev-subscribe@sonatype.org
for LDAP clustering, and supporting mixed authentication
configurations for multiple sources of security information Subscribe to the Nexus Pro User Mailing List:
including Atlassian’s Crowd server. nexus-pro-users-subscribe@sonatype.org

In addition to these features, Nexus Pro also adds support for Checkout Nexus Source Code from Subversion:
Artifact Bundles, Centralized Management of Maven Settings, http://svn.sonatype.org/nexus/trunk
Custom Repository Metadata, Self-serve User Account Sign-up, Browse the Nexus JIRA Project:
and Artifact Validation and Verification. https://issues.sonatype.org/browse/NEXUS

ABOUT THE AUTHOR RECOMMENDED BOOK


Jason Van Zyl is the founder and CTO of This book covers both Nexus Open Source and
Sonatype, the Maven company, and founder Nexus Professional, a product which brings full
of the Apache Maven Project, the Plexus IoC control and visibility to organizations which
framework, and the Apache Velocity project. depend on Maven repositories to manage
releases and distribute software.

READ NOW
http://books.sonatype.com/nexus-book

#82

Browse our collection of over 95 Free Cheat Sheets


Get More Refcardz! Visit refcardz.com

CONTENTS INCLUDE:


About Cloud Computing
Usage Scenarios Getting Started with

Aldon Cloud#64Computing

Underlying Concepts
Cost
by...

Upcoming Refcardz
youTechnologies ®

Data
t toTier
brough Comply.
borate.
Platform Management and more...

Chan
ge. Colla By Daniel Rubio

tion:
dz. com

also minimizes the need to make design changes to support


CON

tegra ternvasll
ABOUT CLOUD COMPUTING one time events. TEN TS
INC ■
HTML LUD E:

us Ind Anti-PPaat
Basics
Automated growthHTM
ref car

Web applications have always been deployed on servers & scalable


L vs XHT technologies

nuorn

Valid
ation one time events, cloud ML
connected to what is now deemed the ‘cloud’. Having the capability to support

Java EE Security
Usef
Du
ti

ul M.
computing platforms alsoulfacilitate
4 Open the gradual growth curves

n an
Page Source

o

s
Vis it

However, the demands and technology used on such servers Structure

C
faced by web applications. Tools

Core
By Key ■
Elem

atte
has changed substantially in recent years, especially with Structur
E: al Elem ents
INC LUD gration
NTS
P the entrance of service providers like Amazon, Google and Large scale growth scenarios involvingents
specialized
and mor equipment
rdz !

ous Inte Change

HTML
CO NTE Microsoft. es e... away by
(e.g. load balancers and clusters) are all but abstracted
Continu at Every e chang
m

About ns to isolat
relying on a cloud computing platform’s technology.
Software i-patter
space

Adobe Flash Catalyst


rdz .co


n
Re fca

e Work
Build
riptio
and Ant
Desc
These companies have a Privat
are in long deployed
trol repos
itory
webmana applications
ge HTM
L BAS

Patterns Control lop softw n-con to



that adapt and scale
Deve
les toto large user
a versio ing and making them
bases, In addition, several cloud computing ICSplatforms support data
ment ize merg
rn
Version e... Patte it all fi minim le HTM
Manage s and mor e Work knowledgeable in amany ine to
mainl aspects related tos multip
cloud computing. tier technologies that Lexceed the precedent set by Relational
space Comm and XHT

ref ca

Build
re

tice Privat lop on that utilize HTML MLReduce,


Prac

Deve code lines a system Database Systems (RDBMS): is usedMap are web service APIs,
Build as thescalethe By An
sitory of work prog foundati
Ge t Mo

Repo
This Refcard active
will introduce are within
to you to cloud riente computing, with an
d units
RATION etc. Some platforms ram support large grapRDBMS deployments.

The src
dy Ha
softw
e ine loping and Java s written in hical on of
INTEG attribute
task-o it all
softwar emphasis onDeve es by
Mainl these
ines providers, so youComm can better understand
also rece JavaScri user interfac web develop and the rris
Vis it

OUS

Network Security
codel chang desc
ding e code Task Level as the
www.dzone.com

NTINU of buil trol what it is a cloudnize


line Policy sourc es as aplatform
computing can offer your ut web output ive data pt. Server-s e in clien ment. the ima alt attribute ribes whe
T CO cess ion con Code Orga it chang e witho likew mec ide lang t-side ge is describe re the ima
ABOU the pro ject’s vers applications. and subm with uniqu
e name
are from
sourc CLOUD COMPUTING ise hanism. fromAND
PLATFORMS web unavaila
was onc use HTML The eme pages and uages like ge file
it
(CI) is Nested s alte
rd z!

a pro evel Comm the build softw um ble. rnate can be


gration ed to Task-L Label ies to
build minim UNDERLYING CONCEPTS e and XHT rging use HTM PHP tags text that
blem activit the bare standard a very loos Tags found,
ous Inte committ to a pro USAGE SCENARIOS ate all
Autom configurat
ion cies to t
ization, ely-defi
ML as
their
Ajax
technolo L can is disp
Continu ry change cannot be (and freq
nden ymen layed
tion
Re fca

ive Build al depe deplo t need ned visual


eve , a solu , ineffect ) Label manu
stalle
d tool the same nmen for stan but as software languag engine. gies overlap uen if
with s (i.e. (i.e. blem ated
Build
ce pre-in t, use target enviro Amazon EC2: Industry
whether standard
dards it has and virtualization
e with HTM b></ , so <a>< tly are) nest
pattern lar pro has bec become
ymen
tterns a> is
ory. Autom Redu d deploEAR) in each very little L

Subversion
reposit ed via particu tions that e Pay only cieswhat you consume you cho platform fine. b></ ed insid
anti-pa Amazon’s cloud computing
the curr isome
heavily basedmoron
tagge or
lain the nden For each (e.g. WAR es t
ent stan ose to writ more e imp a></ e
not lega each othe
and x” solu b> is
be exp text) to “fi are duc al Depe
Web application deployment ge until
nden a few years
t librari agonmen
t enviro was similar that will softwaredard
industry standard and virtualization app
e HTM technology.
ortant,
tterns to pro Minim packa
Mo re

CI can ticular con used can rity all depe all targe
s will L or XHT arent. Reg the HTM l, but r. Tags
etimes Anti-pa they
tend
es, but to most phone services:
y Integ alizeplans with le that
late fialloted resources, ts with an and XHT simplify all help ML, und ardless
L VS
XHTM <a><
in a par hes som
Centr
end,
Binar
pro cess. the practic enti ng incurred costgeme
nt
whether sucha single
temp
resources on
were consumed
enviro
nmen
orthenot. Virtualization ML your
othe
you prov
erstand of L
b></
in e t muchallows aare physical piece ofr hardware ideto be HTML
rily bad cy Mana based
approac ed with the cial, but, implem
Creat
rties are nt targe es to actually web cod a solid
nden
into differe
of the ing has
necessa pared to
chang
efi Depe prope itting utilized by multiple operating
function systems.simplerThis allows ing.resourcesfoundati job adm been arou
associat to be ben
er
Ge t

te builds commo
are not Fortuna
late Verifi e comm than on
n com Cloud computing asRun it’sremo
known etoday has changed this.
befor alitytohas irably, nd for
They they
etc.
Temp Build (e.g. bandwidth, memory,
n elem CPU) be allocated exclusively totely exp that job som
lts whe
ually,
appear effects. rm a
Privat y, contin nt team Every mov
entsinstances. ed to CSS
used
to be, HTML
ected.
has exp e time. Whi
ed resu tion The various resourcesPerfo consumed by webperio applications
dicall (e.g.
opme pag
individual operating system because Brow Early
adverse unintend Integra
d Builds sitory Build r to devel common e (HTML . ser HTM anded le it has
web dev manufacture L had very
Stage Repo
e ous bandwidth, memory, CPU) are tallied
Integ
ration on a per-unit CI serve basis or XHT far done
duc extensio .) All are limited more than
an
Continu Refcard
Build from
e.com

pro e rm ML shar its


tern.
ack elopers rs add
Privat
(starting from zero) by Perfo all majorated cloud
feedb computing platforms. on As a user of Amazon’s
n. HTM EC2 essecloud
ntiallycomputing platform, you are
es cert result layout anybody
the pat the term” cycle, this is a lack came up ed many com
occur
tion h as autom as they based pr ain elem supp
Integra al use of L plain
Build Send builds
ous test cep ts suc Integ
ration ors as
soon
entat
ion with text ents in of stan with clev peting ort.
tion and dar er wor
Continu conven “build include
con oper
docum
kar
standar
While
the to the CI to rate devel
efers ion of
Gene

DZone, Inc.
Cloud Computing

the not
s on
expand

ISBN-13: 978-1-934238-98-1
140 Preston Executive Dr. ISBN-10: 1-934238-98-8
Suite 100
50795
Cary, NC 27513

DZone communities deliver over 6 million pages each month to 888.678.0399


919.678.0300
more than 3.3 million software developers, architects and decision
Refcardz Feedback Welcome
$7.95

makers. DZone offers something for everyone, including news,


refcardz@dzone.com
tutorials, cheat sheets, blogs, feature articles, source code and more. 9 781934 238981
Sponsorship Opportunities
“DZone is a developer’s dream,” says PC Magazine.
sales@dzone.com
Copyright © 2010 DZone, Inc. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by means electronic, mechanical, Version 1.0
photocopying, or otherwise, without prior written permission of the publisher.

You might also like