WARNING: This is the _old_ Lustre wiki, and it is in the process of being retired. The information found here is all likely to be out of date. Please search the new wiki for more up to date information.

Accessing Lustre Code: Difference between revisions

From Obsolete Lustre Wiki
Jump to navigationJump to search
No edit summary
No edit summary
Line 1: Line 1:
We welcome and encourage contributions to the development and testing of a more robust, feature-rich Lustre.  
We welcome and encourage contributions to the development and testing of a more robust, feature-rich Lustre. Three options are available for accessing Lustre code:
 
Three options are available for accessing Lustre code:
* ''Anonymous access''. You can obtain Lustre source code from the [[Open CVS repository]]. When using this option, you will have read-only access to the code. See [[Contribution Landing Page]] for how to submit code.
* ''Anonymous access''. You can obtain Lustre source code from the [[Open CVS repository]]. When using this option, you will have read-only access to the code. See [[Contribution Landing Page]] for how to submit code.



Revision as of 12:55, 29 August 2009

We welcome and encourage contributions to the development and testing of a more robust, feature-rich Lustre. Three options are available for accessing Lustre code:

  • Read/write access. With a password-protected account, you can check out Lustre source code from the Lustre CVS repository. After signing a Contributor Agreement (see our Contribution Policy), you will be able to submit changes directly to the Lustre code.
  • Authorized access. Obtaining Lustre source code from the External Lustre CVS repository requires a password-protected account and authorization from Sun Microsystems.

For all these options, the Concurrent Versions System (CVS) must be installed on your local system. For more information about CVS, see [- Concurrent Versions System].

Naming conventions

Stable development branches are named b{major}_{minor} (for example, b1_6 and b1_8). Release branches are cut for making an official release to isolate it from further development, named b_release_{major}_{minor}_{patch} (for example, b_release_1_8_0). A final release gets a tag in the form v{major}_{minor}_{patch} (for example, v1_8_0 or v1_6_7_1).

Even-numbered minor releases are considered stable releases. Odd-numbered minor releases correspond to alpha and beta releases and will sometimes be given v{major}_{minor}_{patch} tags to provide a point of reference for internal and external testing. Long-range development is done on the HEAD branch.


Accessing the Open CVS repository

The Open CVS repository allows anonymous, read-only access to the Lustre code. See Contribution Landing Page for more information about contributing to the Lustre code development effort.

You can check out any of the following Lustre modules from the Open CVS repository:

  • lustre
  • ldiskfs
  • libsysio
  • lnet
  • lustre-build (as .../build)
  • lustre-core (as .../lustre)
  • lustre-snmp (as .../snmp)

Checking out Code from Open CVS

To check out Lustre source code from Open CVS:

1. Set CVSROOT in your environment by entering one of these commands:

:pserver:anonymous@cvs.lustre.org:/lustre
or
cvs -d :pserver:anonymous@cvs.lustre.org:/lustre login

2. Run

cvs login 
If a password is requested, hit enter to continue.

3. Check out the lustre source by entering:

cvs co lustre

4. Check out the lustre modules by entering:

cd lustre
./lustrecvs b1_6
In this example, modules for Release 1.6 are checked out.


Example

In this example, all sources are checked out into ~/tmp.

cfaber@atitude:~$ cd tmp
cfaber@atitude:~/tmp$ cvs -d :pserver:anonymous@cvs.lustre.org:/lustre login
Logging in to :pserver:anonymous@cvs.lustre.org:2401/lustre
CVS password:      (Leave blank, Hit Enter)

cfaber@atitude:~/tmp$ cvs -d :pserver:anonymous@cvs.lustre.org:/lustre co lustre
cvs checkout: Updating lustre
U lustre/.cvsignore
U lustre/COPYING
U lustre/ChangeLog
U lustre/Makefile.in
U lustre/README
U lustre/README.lustrecvs
U lustre/autoMakefile.am
U lustre/autogen.sh
U lustre/configure.ac
U lustre/lustre.spec.in
U lustre/lustrecvs

cfaber@atitude:~/tmp$ cd lustre
cfaber@atitude:~/tmp/lustre$ ./lustrecvs b1_6

(You may also use lustrecvs HEAD for the HEAD release)

lustrecvs: updating lustrecvs
cvs update: Updating .
lustrecvs: Checking out build from b1_6
cvs checkout: Updating build
U build/.cvsignore
U build/Makefile
U build/README.kernel-source
U build/Rules.in
U build/autoMakefile.am
U build/autoMakefile.am.toplevel
.........

Accessing the Lustre CVS repository

The Lustre CVS repository allows read/write access to Lustre code.

[[This page contains instructions for obtaining CVS versions of Lustre, as well as migrating checkouts from sourceforge to the new CVS server.


Read/Write CVS Access

  • Test that your account is working by logging into bugzilla. CVS and bugzilla share the same account information.
  • Upload a public ssh key
You can use an ssh key so that you don't have to keep typing in your password. This is done in bugzilla's user preferences. If there is no "Change Public SSH key" field, please send mail to the address below.
Currently, only SSH2 keys are supported.
  • Set the CVS_RSH environment variable.
For bash users, this is
export CVS_RSH=ssh
. For csh users,
setenv CVS_RSH ssh
.
You should probably put this in your .bashrc or .cshrc.
  • You can now check out lustre by running the following (changing
    youraccountname
    to your cvs account name, as specified on the user preferences page):
$ cvs -d :ext:youraccountname@cvs.lustre.org:/cvsroot/cfs co lustre
$ cd lustre
$ ./lustrecvs b1_8

Problems

Not working as you expected? Do you think you should have CVS access, but don't? Send email to cvs-admin@cvs.lustre.org Ask Robert Read if email address is still valid - for all three?.

Accessing the Lustre External CVS repository

This page contains instructions for obtaining Lustre source code from the external CVS repository. This read-only repository is synchronized with the CFS internal CVS every three hours.

Legal Notice

All software obtained from this CVS repository is considered pre-release proprietary software, and is therefore confidential information. You may not redistribute any software obtained from this CVS repository, and must destroy all copies upon request.

Unless otherwise authorized, you have a limited license to read, modify, compile, and use in a non-production test environment.

If you do not agree with these restrictions, do not use the CVS repository; please email us to have your account disabled.

Usage

1. Check out the top-level lustre directory

$ cvs -d {username}@cvs.clusterfs.com:/cvsroot/lustre-external co lustre
Where {username} is your Bugzilla account id.
When prompted for a password, enter your Bugzilla password.

2. Get the desired CVS tag

Download the Lustre source tree from the desired CVS tag using the lustrecvs script
$ cd /your/cvs/checkout/lustre
$ ./lustrecvs <tag or branch>
Where <tag or branch> is a valid Lustre branch or tag name (e.g. b1_4, HEAD)

NOTE: To update the tree or to change branches, do NOT use "cvs update". Rather, run the "lustrecvs <tag>" command again.