New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
install_dev_env.sh in utils/developer – NEMO

source: utils/developer/install_dev_env.sh @ 13815

Last change on this file since 13815 was 13815, checked in by nicolasmartin, 3 years ago

Update script to follow the new organisation of releases

  • Property svn:executable set to *
File size: 2.1 KB
Line 
1#!/bin/bash
2
3## Create minimal developement environment for NEMO
4###################################################
5
6## Optional arguments (developer ID, 'repo' to replicate the layout of the whole repository)
7
8dir='NEMO_dev'; repo='0'; root='/NEMO'
9rel='4.0'; ver='4.0.3'
10
11year=$( date +%Y )
12
13while (( $# )); do
14    [ "$1" == 'repo' ] && { dir='NEMO_repo' && repo='1' && root='/'; shift; }
15    id=$1
16    shift
17done
18
19[ -d $dir ] && { echo $dir 'already exists => QUIT'; exit 2; }
20
21## Copy of the repository with empty root directories
22echo 'Download a void working copy of' $root "from the repository ('svn co --depth empty ...')"
23svn co --depth empty http://forge.ipsl.jussieu.fr/nemo/svn/$root $dir
24echo
25
26## Switch to developer role if ID is provided
27if [[ -n "$id" && -f ~/.ssh/id_rsa.pub ]]; then
28    echo 'Switch to developer role by relocating the URL scheme from HTTP to SVN+SSH'
29    echo "('svn sw --relocate http://... svn+ssh://...')"
30    ssh-copy-id -i ~/.ssh/id_rsa.pub $id@forge.ipsl.jussieu.fr 2> /dev/null
31    svn sw --relocate    http://forge.ipsl.jussieu.fr                        \
32                      svn+ssh://$id@forge.ipsl.jussieu.fr/ipsl/forge/projets \
33        $dir
34    echo
35fi
36
37## If requested by 'repo',
38if [ "$repo" == '1' ]; then
39    echo "With 'repo' arg, create a lightweight copy of the repository"
40    echo 'for the developement of the sources defined as "externals"'
41
42    for item in utils/build/{arch,makenemo,mk} utils/tools \
43                vendors/{AGRIF/dev,FCM,IOIPSL}              ; do
44        echo '¤' $item
45        svn up -q --parents $dir/$item
46    done
47
48    dir+=/'NEMO'
49    echo
50fi
51
52## Get the 1st level tree under 'branches' and 'releases'
53echo "Get empty folders under /NEMO/branches ('svn up --depth empty ...'):"
54
55for item in branches releases; do
56    svn up -q --parents --depth immediates $dir/$item
57done
58
59echo
60
61## Download trunk and last release
62echo "Full download of 2 main branches ('svn up'): trunk and last stable"
63echo '¤ /NEMO/trunk'
64svn up -q           $dir/trunk
65
66echo "¤ /NEMO/releases/r$rel/r$ver"
67svn up -q --parents $dir/releases/r$rel/r$ver
68
69exit 0
Note: See TracBrowser for help on using the repository browser.