Back to home page

EIC code displayed by LXR

 
 

    


Warning, /pilot2/README.md is written in an unsupported language. File is not indexed.

0001 # PanDA Pilot 2
0002 
0003 ## Contributions
0004 
0005 1. Check the ``TODO.md`` and ``STYLEGUIDE.md`` files.
0006 
0007 2. Fork the ``PanDAWMS/pilot2`` repository into your private account as ``origin``. Clone it and set the ``PanDAWMS/pilot2`` repository as ``upstream``.
0008 
0009 3. Make new code contributions only to a new branch in your repository, push to ``origin`` and make a pull request into ``upstream``. Depending on the type of contribution this should go yo either ``upstream/next`` or ``upstream/hotfix``. 
0010    Any pull requests directly to the master branch will be rejected since that would trigger the automatic pilot tarball creation.
0011 ## Verifying code correctness
0012 
0013 Do not submit code that does not conform to the project standards. We use PEP8 and Flake verification, with everything
0014 enabled at a maximum line length of 160 characters and McCabe complexity 12, as well Pylint:
0015 
0016     flake8 pilot.py pilot/
0017     pylint <path to pilot module>
0018 
0019 ## Running the pilot
0020 
0021 The pilot is a dependency-less Python application and relies on ``/usr/bin/env python``. The minimum pilot can be called like:
0022 
0023     ./pilot.py -q <PANDA_QUEUE>
0024 
0025 where ``PANDA_QUEUE`` correspond to the ATLAS PandaQueue as defined in AGIS. This will launch the default ``generic`` workflow.
0026 
0027 ## Running the testcases
0028 
0029 The test cases are implemented as standard Python unittests under directory ``pilot/test/``. They can be discovered and executed automatically:
0030 
0031     unit2 -v
0032 
0033 ## Building and viewing docs
0034 
0035 1. Install ``sphinx`` into your environment by ``pip`` or other means with all the necessary requirements.
0036 
0037 2. Navigate into ``./doc`` in your fork and run ``make html``.
0038 
0039 3. Open ``_build/html/index.html`` with your browser.
0040 
0041 ### Automate documentation to your module
0042 
0043 For automatic code documentation of any new pilot module, add the following lines to the corresponding rst file in the doc area:
0044 
0045     .. automodule:: your.module
0046         :members:
0047 
0048 See existing rst files. For more info, visit http://sphinx-doc.org
0049 
0050 ### Syncing your GitHub repository
0051 
0052 Before making a pull request, make sure that you are synced to the latest version.
0053 
0054 1. git clone https://github.com/USERNAME/pilot2.git
0055 2. cd pilot2
0056 3. git checkout next
0057 4. git remote -v
0058 5. git remote add upstream https://github.com/PanDAWMS/pilot2.git
0059 6. git fetch upstream
0060 7. git merge upstream/next