-
Check the
TODO.md
andSTYLEGUIDE.md
files. -
Fork the
PanDAWMS/pilot2
repository into your private account asorigin
. Clone it and set thePanDAWMS/pilot2
repository asupstream
. -
Make new code contributions only to a new branch in your repository, push to
origin
and make a pull request intoupstream
. Depending on the type of contribution this should go against eitherupstream/master
,upstream/main-dev
orupstream/hotfix
.
Do not submit code that does not conform to the project standards. We use PEP8 and Flake verification, with everything enabled at a maximum line length of 160 characters and McCabe complexity 12:
flake8 pilot.py pilot/
For Python 2.6 you need to install flake8<3.0.0
, which can miss a few things. Check the output of TravisCI to verify if you have to use this old version.
The pilot is a dependency-less Python application and relies on /usr/bin/env python
. The minimum pilot can be called like:
./pilot.py -d -q <QUEUE_NAME>
where QUEUE_NAME
correspond to the ATLAS PandaQueue as defined in AGIS. This will launch the default generic
workflow with lifetime default lifetime of 10 seconds (i.e., too short to do anything).
The -d
argument changes the logger to produce debug output.
The test cases are implemented as standard Python unittests under directory pilot/test/
. They can be discovered and executed automatically:
unit2 -v
-
Install
sphinx
into your environment bypip
or other means with all the necessary requirements. -
Navigate into
./doc
in your fork and runmake html
. -
Open
_build/html/index.html
with your browser.
Add the following lines somewhere in the documentation:
.. automodule:: your.module
:members:
For more info, visit http://sphinx-doc.org