Difference between revisions of "A quick guide to CVMFS"

From GridPP Wiki
Jump to: navigation, search
(Added the uploader page graphic.)
(Added the file upload info.)
Line 97: Line 97:
  
 
(Note: this is from the CERN@school VO, which has already had software uploaded. Your page should be blank...)
 
(Note: this is from the CERN@school VO, which has already had software uploaded. Your page should be blank...)
 +
 +
To upload the <code>hello-world_001-00-00</code> tarball, click on the blue "Upload" button. This will take you to the "Upload new package" screen:
 +
 +
[[File:Cvmfs-repo-upload_upload.PNG|thumb|512px|left|The RAL CVMFS Stratum-0 Uploader page - "Upload new package".]]
 +
 +
<div style="clear:both;"></div>
 +
 +
Click on the "Select file" button, select your <code>hello-world_001-00-00.tar</code> tarball and then press the blue "Upload" button. The tarball should now be uploaded to your VO's repository.
  
 
==Useful links==
 
==Useful links==
  
 
* [http://cernvm.cern.ch/portal/ The CERN CVMFS page].
 
* [http://cernvm.cern.ch/portal/ The CERN CVMFS page].

Revision as of 11:28, 1 May 2014

Deploying software with CVMFS

For more information about CVMFS at RAL, click here.

Overview of the process

  1. Prepare your working area
  2. Prepare your software
  3. Upload your software to the RAL CVMFS repository and deploy it
  4. Wait a bit...
  5. Run your CVMFS-powered jobs

A trivial example

Log in to your machine of choice and create a new working area.

$ ssh -Y whyntie@heppc402
whyntie@heppc402's password: # enter your password here

$ mkdir cvmfstests
$ cd cvmfstests
$ mkdir helloworld
$ cd helloworld
$ pwd
/users/whyntie/cvmfstests/helloworld

Create a new directory that will form the basis of your CVMFS tarball.

$ mkdir hello-world_001-00-00
$ cd hello-world_001-00-00
$ pwd
/users/whyntie/cvmfstests/helloworld/hello-world_001-00-00

Create three files in this directory:

  • hello-world.sh - the "software";
  • run.sh - the script that runs the software;
  • README.md - for your notes, ideally in the MarkDown format.
$ cat hello-world.sh 
#!/bin/bash
#
#=============================================================================
#                     The GridPP CVMFS Hello World! Script
#=============================================================================
#
# Usage: . hello-world.sh [whoever you want to greet]
#
echo 'Hello' $1'!'
$
$
$ cat run.sh 
#!/bin/bash
#
#=============================================================================
#                    The GridPP CVMFS Hello World! run script
#=============================================================================
#
# Usage: . run.sh [full path of the hello-world.sh script]
#
# Note that for grid jobs (or clusters with CVMFS enabled) this will be
# the CVMFS directory.
#
$1/hello-world.sh World
$
$
$ cat README.md
My CVMFS Test Notes
===================
You're keeping detailed notes, right? Good good.

Now compress these files into a tarball.

$ cd ../
$ tar -cvf hello-world_001-00-00.tar hello-world_001-00-00
$ ls
hello-world_001-00-00 hello-world_001-00-00.tar

Now upload the tarball to the RAL CVMFS repository. You will need your grid certificate installed in your browser in order to access (and be identified).

$ firefox https://cvmfs-upload01.gridpp.rl.ac.uk &

After confirming certificate and security settings, you should be presented with a page like this (click to enlarge):

The RAL CVMFS Stratum-0 Uploader page - home.

(Note: this is from the CERN@school VO, which has already had software uploaded. Your page should be blank...)

To upload the hello-world_001-00-00 tarball, click on the blue "Upload" button. This will take you to the "Upload new package" screen:

The RAL CVMFS Stratum-0 Uploader page - "Upload new package".

Click on the "Select file" button, select your hello-world_001-00-00.tar tarball and then press the blue "Upload" button. The tarball should now be uploaded to your VO's repository.

Useful links