-
Notifications
You must be signed in to change notification settings - Fork 14
Running your own client
The client requires the requests
and DaemonLite
python modules to run. Install them via pip
or
whatever installation method you prefer.
There are two main pieces of information you need to run your own client.
- Server URL: For example https://www.moosebuild.org
- Build key: This is generated for you when you first sign in to Civet and will be displayed on the "recipes" page. This should not be shared.
The basic client is client/client.py
. It is intended to run via command line or cron. All
parameters are put on the command line. You will also need to set and export the BUILD_ROOT
environment variable to where you want all testing done.
Other useful environment variables include:
-
MOOSE_JOBS
: Will causemake
andrun_tests
to use-j $MOOSE_JOBS
-
MAKE_JOBS
: Will causemake
to use-j $MAKE_JOBS
. OverridesMOOSE_JOBS
-
MAX_MAKE_LOAD
: Will causemake
to use-j $MAKE_JOBS -l $MAX_MAKE_LOAD
-
TEST_JOBS
: Will causerun_tests
to use-j $TEST_JOBS
. OverridesMOOSE_JOBS
-
MAX_TEST_LOAD
: Will causerun_tests
to use-j $TEST_JOBS -l $MAX_TEST_LOAD
An example command line might be (executed in the client
directory):
./client.py --url https://www.moosebuild.org --build-key <Your assigned key> --configs linux-gnu --name <username>_client --insecure
The INL client is in client/inl_client.py
and is what is used internally at INL. It runs as a daemon and has the ability
to load different modules based on the build config. It can also poll more than one Civet
server. At the top of client/inl_client.py
is where you configure the servers ( and the associated build keys ) as well
as what modules are loaded on a particular build config.
BUILD_ROOT
and MOOSE_JOBS
environment variables are set automatically but you can still export
MAKE_JOBS
, MAX_MAKE_LOAD
, TEST_JOBS
, and MAX_TEST_LOAD
.
To start the client, an example command might be:
./inl_client.py --num-jobs 12 --client 0 --daemon start
To quit the client, an example command might be:
./inl_client.py --num-jobs 12 --client 0 --daemon stop