Inrtroduction of Sonatype Nexus

sonatype-nexus

Sonatype Nexus: Manage Artifacts
Sonatype Nexus sets the standard for repository management providing development teams with the ability to proxy remote repositories and share software artifacts. Download Nexus and gain control over open source consumption and internal collaboration.

Why Nexus?

A repository manager stores and organizes binary software components for use in development, deployment, and provisioning. Repository managers serve four primary purposess:

  • Provides a central point for management of binary software components and their dependencies
  • Provides a solid component repository for a complete Component Lifecycle Management approach
  • Acts as highly configurable proxy between your organization and public repositories
  • Provides a deployment destination for internally developed binary components

Repository managers have become essential infrastructure for component-based software development. To the right is a diagram that depicts where a repository manager fits into a typical development process.

The Benefits of a Repository Manager

A repository manager encourages collaboration, speeds build times, and improves visibility and control over component usage. Some of the specific benefits you’ll see from a repository manager include:

  • Faster and more reliable builds

Caching components locally eliminates the need to download dependencies over the Internet, saving time and eliminating the risk that the Internet or remote server won’t be available during the build.

  • Improved collaboration

It provides a mechanism for developers to share binary components for internally developed software projects. The repository manager becomes a deployment target when components are created, and the standard source of both internally developed and open source components for use in development.

  • Component usage visibility

By examining the components present in the repository manager you’ll have visibility into what internally developed components are available and what components developers have downloaded from public repositories.

  • Enforce component standards

Problematic components that don’t meet your standards can be kept out of the repository so developers won’t use them. The challenge is to ensure that all developers and build systems acquire components only from the enterprise repository manager.

  • Controlled sharing with partners

Partner-specific repositories with access controls allow you to choose which components and projects to share.

  • Ideal repo for robust governance

It provides the basis for storing components, which is an integral part of an overall Component Lifecycle Management solution.

Nexus OSS Manual Setup

http://webdev.apl.jhu.edu/~jcs/ejava-javaee/coursedocs/605-784-site/docs/content/html/devenv-mavenproxy-setup.html
http://books.sonatype.com/nexus-book/reference/_installing_nexus.html

Reference:
http://www.sonatype.org/nexus/
http://books.sonatype.com/nexus-book/reference/
http://www.sonatype.com/resources/books/repository-management-with-nexus

Step by Step Instruction to Upgrade Perforce to 2014

perforce-2014-upgrade-instructions

Step by Step Instruction to Upgrade Perforce to 2014

The step are as follows:

a) Check if the license is current.

p4 license -o

The expiry date must be later than the binary release date you are installing

b) Verify server archives using the command ‘p4 verify -q //… > verify.txt’

* Note – If the file ‘verify.txt’ contains a ‘BAD!’ or MISSING!’
signature during the verify command, please contact Perforce Support prior to upgrading.
** If the depot is large and you get an error message “Request too large for server memory”, you can split the verify to check chink of the depot:

Example:
p4 verify -q //depot/project1/… > prj1-verify.txt
p4 verify -q //depot/project2/… > prj2-verify.txt
p4 verify -q //depot/project3/… > prj3-verify.txt

c) Stop the Perforce Server.

p4 admin stop

d) Make a checkpoint of the database.

p4d -r P4ROOT -J journal -jc

e) Copy the db.* files to a safe location.

f) Backup your archive files.

g) Read the release notes so you are aware of the latest changes.

http://www.perforce.com/perforce/doc.current/user/relnotes.txt

h) Download the latest P4D version.

ftp://ftp.perforce.com/perforce/

i) Verify that the newly downloaded binary is the latest. You might need to copy the p4d.exe to p4s.exe

p4d.exe -V
p4s.exe -V

j) Install the upgraded version of the Perforce server.

k) Restore the Perforce Server using the new P4D Binary and the checkpoint taken from the old P4D binary, with the following command ‘p4d –r root –jr checkpoint.xxx’.

l) If the server contains more than 1000 changelists, please run the following command ‘p4d -r root -xu’ from the command line’.

m) Start the perforce Sever.

n) Verify server archive files.

p4 verify -q //… > upgrade-verify.txt

** Note – If the file ‘upgrade-verify.txt’ will contains a ‘BAD!’ or MISSING!’ signature during the verify command, please contact us.

o) Take a checkpoint
p4d -r root -J journal -jc

This is also explained in the below article:

Upgrading to 2013.3 and beyond – http://answers.perforce.com/articles/KB_Article/Upgrading-to-2013-3-and-beyond

Windows To Linux
Moving from Linux to Windows is not a trivial issue, and such a migration is also not supported and will most likely require consolidation of case sensitivity conflicts using our P4 Migrate product. Please see the link below:

Cross-Server Platform Migration
http://answers.perforce.com/articles/KB_Article/Cross-Platform-Perforce-Server-Migration/?q=linux+to+windows&l=en_US&fs=Search&pn=1
http://answers.perforce.com/articles/KB_Article/Cross-Platform-Perforce-Server-Migration

Change of Server is a “Self-serve” option, please fill out this form and licensing will update accordingly.
P4 Support Change of Server License Request
http://www.perforce.com/support-services/change-server-request

Please pass the -z switch during the replay as the checkpoint/journal you are replaying are compressed:
p4d -r P4ROOT -jr -z checkpoint.ckp.104.gz

You will need to request for a background user I believe to be able to do all the required command. This can be done by filling in this below form and using one background user for all of you build machines.
http://www.perforce.com/support-services/request-background-user

Moving a Perforce Server
http://answers.perforce.com/articles/KB_Article/Moving-a-Perforce-Server

 By Chris Lesemann <support@perforce.com

Our Knowledge Base has accurate and up to date information that will help you prepare your own procedure for upgrading. Because the database structures have changed, you will need to take an existing checkpoint and then replay that checkpoint with the 2014.1 version of the P4 Server.

It appear you are on a 32-bit Windows instance…will you be doing an inplace upgrade or moving to 64-bit hardware? If you are moving from 32-bit to -64bit you have to recover from checkpoint anyway.

Please review the two links below and if you have any further questions I would be happy to assist you:

 Upgrading to 2013.3 and beyond <– specific procedure for moving from 2013.2 and earlier P4 to 2013.3 and later

 Upgrading a Perforce Server <– in-place upgrade

 Moving a Perforce Server <– if you have to move to new hard – do NOT start a 64-bit P4D binary against 32-bit db.* databases, or vice versa.

 Upgrading the Perforce Proxy

General information on the new Btree structures and functionality:

 BTree Format Changed for Perforce Server Versions 2013.3 and Later

 Lockless Reads

Tagged : / / / / / / / / / / / / / / / / /

Introduction of Gradle

gradle

Gradle is build automation evolved. Gradle can automate the building, testing, publishing, deployment and more of software packages or other types of projects such as generated static websites, generated documentation or indeed anything else.
Gradle combines the power and flexibility of Ant with the dependency management and conventions of Maven into a more effective way to build. Powered by a Groovy DSL and packed with innovation, Gradle provides a declarative way to describe all kinds of builds through sensible defaults. Gradle is quickly becoming the build system of choice for many open source projects, leading edge enterprises and legacy automation challenges.

REVOLUTIONARY FEATURES ON THE GRADLE ROADMAP

We are convinced that Gradle 2.0 is the best available enterprise build system. Yet we are far from done. Learn about upcoming features in Gradle including:

  • Configuration Tasks
  • Persistable Build Configuration
  • Variant Aware Dependency Management
  • Parallel Task Execution
  • Watcher Mode for Daemon
  • Global Cache

Reference
http://www.gradle.org/
http://en.wikipedia.org/wiki/Gradle
http://spring.io/guides/gs/gradle/
http://developer.android.com/sdk/installing/studio-build.html