Write your Dangerfiles in Python.
Running danger-python requires:
- Python 3.7 (tested under Python 3.7.5)
- danger-js 9.2 (tested under danger-js 9.2.10)
- Poetry 1.0.2
In order to test the script please run the following commands:
# install danger
npm install -g danger
# install poetry
pip install poetry
# install project dependencies
poetry install --no-dev
# activate virtual environment
poetry shell
# run danger-python
danger-python pr https://github.com/microsoft/TypeScript/pull/34806You can choose between shorter untyped version of dangerfile.py:
title = danger.github.pr.title
markdown(title)Or more verbose typed version:
from danger_python import Danger, markdown
danger = Danger()
title = danger.github.pr.title
markdown(title)To develop the code, clone the repository and run the following commands:
# install danger
npm install -g danger
# install poetry
pip install poetry
# install project dependencies
poetry install
# activate virtual environment
poetry shell
# run tests
pytestTo regenerate the input JSONSchema, put the latest version in scripts/input_schema.json and run the following commands:
cd scripts
python generate_scheme.pyThis should update the danger_python/models.py file.
- Parse complete Danger DSL
- Plugin infrastructure
- Release the initial version of the package