1.5 KiB
Contribution Guidelines
Before publishing a PR, please test builds locally.
On each PR that contains changes relevant to Docker builds, images are being built and tested in our CI (GitHub Actions).
🌲 Please be considerate when pushing commits and opening PR for multiple branches, as the process of building images uses energy and contributes to global warming.
Lint
We use pre-commit framework to lint the codebase before committing.
First, you need to install pre-commit with pip:
pip install pre-commit
Also you can use brew if you're on Mac:
brew install pre-commit
To setup pre-commit hook, run:
pre-commit install
To run all the files in repository, run:
pre-commit run --all-files
Build
We use Docker Buildx Bake. To build the images, run command below:
FRAPPE_VERSION=... ERPNEXT_VERSION=... docker buildx bake <targets>
Available targets can be found in docker-bake.hcl.
Test
We use pytest for our integration tests.
Install Python test requirements:
python3 -m venv venv
source venv/bin/activate
pip install -r requirements-test.txt
Run pytest:
pytest
Documentation
Place relevant markdown files in the docs directory and index them in README.md located at the root of repo.
Frappe and ERPNext updates
Each Frappe/ERPNext release triggers new stable images builds as well as bump to helm chart.