The following notes describe the porting of suites for use with the Cylc 7 environment on ARE VDI as described by Cylc 7 setup for ARE without MOSRS.
In the usual case, rather than creating a suite or source code from scratch, you will be porting it from (e.g.) the ACCESS project. These suites, source codes and their test suites might be configured to run in their original environments but might not run correctly from ARE VDI until you make changes to both the suites and their environments. This page lists of some of the changes you may need to make.
Reviewing filesystem visibility from ARE
ARE VDI has the same home directory as Gadi login, but can only see the /scratch
and /g/data
directories that you declared on the ARE VDI Desktop request form.
Updating the PBS storage directives
PBS jobs expect the declaration of directories in the '-l storage'
directive to the enable the access to those directories. The minimum directive required for use with Cylc 7 is gdata/hr22+scratch/$PROJECT
. Here $PROJECT
is your NCI project code set in $HOME/.config/gadi-login.conf
or $HOME/.rashrc
or both.
- You must include
gdata/hr22
because therose,
cylc
andfcm
executables used by thecylc7/default
module are located under/g/data/hr22
. - You must include
scratch/$PROJECT
because theroot-dir
forrose suite-run
that is configured by thecylc7/default
module is/scratch/$PROJECT/$USER
. - Your suite may already use modules or data from the
access
,hh5
or other projects, and includegdata/access
,gdata/hh5
or other file systems within the'-l storage'
directive. Just keep these.
For example, if PROJECT=dx2
:
#PBS -l storage=scratch/dx2+gdata/access+gdata/hr22
If you are migrating your source code or suite from elsewhere, e.g. accessdev
, you may need to copy some files to /g/data
. You may also need to obtain files via Subversion or possibly via Git.
Setting up FCM keywords
The hr22
FCM environment includes a default FCM keyword.cfg
file that contains
include = $FCM_CONF/mosrs/keyword.cfg include = $FCM_CONF/nemo/keyword.cfg include = $FCM_CONF/access/keyword.cfg
The environment variable FCM_CONF
is defined by the cylc7/default
module. The FCM keyword file $FCM_CONF/mosrs/keyword.cfg
uses the ki32
MOSRS mirrors. The FCM keyword file $FCM_CONF/nemo/keyword.cfg
uses the ki32
NEMO mirror. The FCM keyword file $FCM_CONF/access/keyword.cfg
uses the access-svn
mirror file:///g/data/access/access-svn/
.
If you want to use different FCM keywords, you need to define them in $HOME
/.metomi/fcm/keyword.cfg
You can copy or link these from existing places, but may need to add to or alter some of the keywords.
Using Python environments
Suite tasks that use Python environments enabled by access
or hh5
modules should continue to work when run from ARE VDI, as long as your storage
directives contain gdata/access
or gdata/hh5
respectively.
Please contact NCI if your suite encounters any difficulties in using Python environments.