-
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/next
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 -q <PANDA_QUEUE>
where PANDA_QUEUE
correspond to the ATLAS PandaQueue as defined in AGIS. This will launch the default generic
workflow.
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
Before making a pull request, make sure that you are synced to the latest version.
- git clone https://github.com/USERNAME/pilot2.git
- cd pilot2
- git checkout next
- git remote -v
- git remote add upstream https://github.com/PanDAWMS/pilot2.git
- git fetch upstream
- git merge upstream/next