Skip to content

Running your own client

brianmoose edited this page Dec 2, 2016 · 7 revisions

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.

  1. Server URL: For example https://www.moosebuild.org
  2. 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.

Basic client

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 cause make and run_tests to use -j $MOOSE_JOBS
  • MAKE_JOBS : Will cause make to use -j $MAKE_JOBS. Overrides MOOSE_JOBS
  • MAX_MAKE_LOAD : Will cause make to use -j $MAKE_JOBS -l $MAX_MAKE_LOAD
  • TEST_JOBS : Will cause run_tests to use -j $TEST_JOBS. Overrides MOOSE_JOBS
  • MAX_TEST_LOAD : Will cause run_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

INL client

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

Clone this wiki locally