From 05aabc64bb62785546ce68084ef2ca06641df2b4 Mon Sep 17 00:00:00 2001 From: Tomas Susanka Date: Sun, 3 May 2020 21:45:34 +0200 Subject: [PATCH] docs: document CI jobs --- ci/README.md | 1 + ci/build.yml | 2 +- docs/SUMMARY.md | 3 +- docs/{tests/ci.md => ci/index.md} | 4 +- docs/ci/jobs.md | 99 +++++++++++++++++++++++++++++++ 5 files changed, 106 insertions(+), 3 deletions(-) create mode 120000 ci/README.md rename docs/{tests/ci.md => ci/index.md} (80%) create mode 100644 docs/ci/jobs.md diff --git a/ci/README.md b/ci/README.md new file mode 120000 index 000000000..205e635a2 --- /dev/null +++ b/ci/README.md @@ -0,0 +1 @@ +../docs/ci/index.md \ No newline at end of file diff --git a/ci/build.yml b/ci/build.yml index 40600bf66..686d762a9 100644 --- a/ci/build.yml +++ b/ci/build.yml @@ -107,7 +107,7 @@ core unix frozen debug build: untracked: true expire_in: 1 week -build core unix frozen regular darwin: +core unix frozen regular darwin: stage: build tags: - darwin diff --git a/docs/SUMMARY.md b/docs/SUMMARY.md index c9bbeec16..a267771bb 100644 --- a/docs/SUMMARY.md +++ b/docs/SUMMARY.md @@ -27,10 +27,11 @@ - [Sessions](common/communication/sessions.md) - [Storage](storage/index.md) - [Tests](tests/index.md) - - [CI](tests/ci.md) - [Device Tests](tests/device-tests.md) - [Upgrade Tests](tests/upgrade-tests.md) - [UI Tests](tests/ui-tests.md) +- [CI](ci/index.md) + - [GitLab CI Jobs](ci/jobs.md) - [Miscellaneous](misc/index.md) - [Affected third-parties](misc/third-parties.md) - [Coins' BIP-44 Paths](misc/coins-bip44-paths.md) diff --git a/docs/tests/ci.md b/docs/ci/index.md similarity index 80% rename from docs/tests/ci.md rename to docs/ci/index.md index cd1f3bb38..281396dca 100644 --- a/docs/tests/ci.md +++ b/docs/ci/index.md @@ -2,4 +2,6 @@ The complete test suite is running on a public [GitLab CI](https://gitlab.com/satoshilabs/trezor/trezor-firmware). If you are an external contributor, we also have a [Travis instance](https://travis-ci.org/trezor/trezor-firmware) where a small subset of tests is running as well - mostly style and easy fast checks, which are quite common to fail for new contributors. -The CI folder contains all the .yml GitLab files that are included in the main `.gitlab.yml` to provide some basic structure. All GitLab CI Jobs run inside a docker image, which is built using the present `Dockerfile`. This image is stored in the GitLab registry. On any changes to the `Dockerfile` the CI Job "environment" must be **manually** triggered to build and upload the new version of the image. +See this [list](jobs.md) of CI jobs descriptions for more info. + +The CI folder contains all the .yml GitLab files that are included in the main `.gitlab.yml` to provide some basic structure. All GitLab CI Jobs run inside a docker image, which is built using the present `Dockerfile`. This image is stored in the GitLab registry. diff --git a/docs/ci/jobs.md b/docs/ci/jobs.md new file mode 100644 index 000000000..4607a2204 --- /dev/null +++ b/docs/ci/jobs.md @@ -0,0 +1,99 @@ +# List of GitLab CI Jobs + +## Environment + +### Environment + +Environment job builds the `ci/Dockerfile` and pushes the built docker image +into our GitLab registry. Since modifications of this Dockerfile are very rare +this si a _manual_ job which needs to be triggered on GitLab. + +Almost all CI jobs run inside this docker image. + +## Build + +All builds are published as artifacts so you can download and use them. + +### core fw btconly build + +Build of Core into firmware. Bitcoin-only version. + +### core fw regular build + +Build of Core into firmware. Regular version. **Are you looking for Trezor T firmware +build? This is most likely it.** + +### core fw regular debug build + +Build of Core into firmware with enabled _debug_ mode. In debug mode you can +upload mnemonic seed, use debug link etc. which enables device tests. Storage +on the device gets wiped on every start in this firmware. + +### core unix frozen btconly debug build + +Build of Core into UNIX emulator. Something you can run on your laptop. + +Frozen version. That means you do not need any other files to run it, it is just +a single binary file. Run it using `micropython -m main`. + +See [Emulator](../core/emulator/index.md) for more info. + +Debug mode enabled, Bitcoin-only version. + +### core unix frozen debug build + +Same as above but regular version (not only Bitcoin). **Are you looking for a Trezor T +emulator? This is most likely it.** + +### core unix frozen regular build + +Same as above but regular version (not only Bitcoin) without debug mode enabled. + +### core unix frozen regular darwin + +Same as above for MacOS. + +### core unix regular build + +Non-frozen emulator build. This means you still need Python files present which get +interpreted. + +### crypto build + +Build of our cryptographic library, which is then incorporated into the other builds. + +### legacy emu btconly build + +Build of Legacy into UNIX emulator. Use keyboard arrows to emulate button presses. + +Bitcoin-only version. + +### legacy emu regular build + +Regular version (not only Bitcoin) of above. **Are you looking for a Trezor One +emulator? This is most likely it.** + +### legacy fw btconly build + +Build of Legacy into firmware. Bitcoin only. + +### legacy fw debug build + +Build of Legacy into firmware. Debug mode on. Storage on the device gets wiped on every +start in this firmware. + +### legacy fw regular build + +Build of Legacy into firmware. Regular version. **Are you looking for Trezor One firmware +build? This is most likely it.** + +## Test + +### core device ui test + +UI tests for Core. See artifacts for a comprehensive report of UI. See [tests/ui-tests](../tests/ui-tests.html#reports) +for more info. + +--- + +TODO: document others if needed