mirror of
https://github.com/chatmail/core.git
synced 2026-09-22 13:01:21 +03:00
Add the script from https://github.com/chatmail/core/pull/8345/changes#r3696015000 with a few small tweaks TODO: Add to readme
55 lines
2.0 KiB
Markdown
55 lines
2.0 KiB
Markdown
# Continuous Integration Scripts for Delta Chat
|
|
|
|
Continuous Integration, run through [GitHub
|
|
Actions](https://docs.github.com/actions)
|
|
and an own build machine.
|
|
|
|
## Description of scripts
|
|
|
|
- `clippy.sh` runs `cargo clippy` for all Rust code in the project.
|
|
|
|
- `deny.sh` runs `cargo deny` for all Rust code in the project.
|
|
|
|
- `codespell.sh` spellchecks the source code using `codespell` tool.
|
|
|
|
- `../.github/workflows` contains jobs run by GitHub Actions.
|
|
|
|
- `run-python-test.sh` runs CFFI Python tests.
|
|
|
|
- `run-rpc-test.sh` runs JSON-RPC Python tests.
|
|
|
|
- `make-python-testenv.sh` creates a local python test development environment with CFFI bindings.
|
|
Reusing the same environment is faster than running `run-python-test.sh` which always
|
|
recreates environment from scratch and runs additional lints.
|
|
|
|
- `make-rpc-testenv.sh` creates a local python development environment with JSON-RPC bindings,
|
|
i.e. `deltachat-rpc-client` and `deltachat-rpc-server`.
|
|
|
|
- `remote_tests_python.sh` rsyncs to a build machine and runs
|
|
JSON-RPC Python tests remotely on the build machine.
|
|
|
|
- `remote_tests_rust.sh` rsyncs to the build machine and runs
|
|
Rust tests remotely on the build machine.
|
|
|
|
- `run-doxygen.sh` generates C-docs which are then uploaded to https://c.delta.chat/
|
|
|
|
- `run_all.sh` builds Python wheels
|
|
|
|
- `android-rpc-server.sh` compiles binaries of `deltachat-rpc-server` using Android NDK.
|
|
|
|
- `future-sizes.sh` prints the sizes of the largest Futures.
|
|
This can be helpful because Async Rust can lead to huge futures,
|
|
increasing RAM usage and compilation times.
|
|
|
|
## Triggering runs on the build machine locally (fast!)
|
|
|
|
There is experimental support for triggering a remote Python or Rust test run
|
|
from your local checkout/branch. You will need to be authorized to login to
|
|
the build machine (ask your friendly sysadmin on #deltachat Libera Chat) to type:
|
|
|
|
scripts/manual_remote_tests.sh rust
|
|
scripts/manual_remote_tests.sh python
|
|
|
|
This will **rsync** your current checkout to the remote build machine
|
|
(no need to commit before) and then run either rust or python tests.
|