Skip to content

Commit 05aabc6

Browse files
committed
docs: document CI jobs
1 parent 25cc836 commit 05aabc6

File tree

5 files changed

+106
-3
lines changed

5 files changed

+106
-3
lines changed

ci/README.md

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
../docs/ci/index.md

ci/build.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ core unix frozen debug build:
107107
untracked: true
108108
expire_in: 1 week
109109

110-
build core unix frozen regular darwin:
110+
core unix frozen regular darwin:
111111
stage: build
112112
tags:
113113
- darwin

docs/SUMMARY.md

+2-1
Original file line numberDiff line numberDiff line change
@@ -27,10 +27,11 @@
2727
- [Sessions](common/communication/sessions.md)
2828
- [Storage](storage/index.md)
2929
- [Tests](tests/index.md)
30-
- [CI](tests/ci.md)
3130
- [Device Tests](tests/device-tests.md)
3231
- [Upgrade Tests](tests/upgrade-tests.md)
3332
- [UI Tests](tests/ui-tests.md)
33+
- [CI](ci/index.md)
34+
- [GitLab CI Jobs](ci/jobs.md)
3435
- [Miscellaneous](misc/index.md)
3536
- [Affected third-parties](misc/third-parties.md)
3637
- [Coins' BIP-44 Paths](misc/coins-bip44-paths.md)

docs/tests/ci.md docs/ci/index.md

+3-1
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,6 @@
22

33
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.
44

5-
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.
5+
See this [list](jobs.md) of CI jobs descriptions for more info.
6+
7+
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.

docs/ci/jobs.md

+99
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
# List of GitLab CI Jobs
2+
3+
## Environment
4+
5+
### Environment
6+
7+
Environment job builds the `ci/Dockerfile` and pushes the built docker image
8+
into our GitLab registry. Since modifications of this Dockerfile are very rare
9+
this si a _manual_ job which needs to be triggered on GitLab.
10+
11+
Almost all CI jobs run inside this docker image.
12+
13+
## Build
14+
15+
All builds are published as artifacts so you can download and use them.
16+
17+
### core fw btconly build
18+
19+
Build of Core into firmware. Bitcoin-only version.
20+
21+
### core fw regular build
22+
23+
Build of Core into firmware. Regular version. **Are you looking for Trezor T firmware
24+
build? This is most likely it.**
25+
26+
### core fw regular debug build
27+
28+
Build of Core into firmware with enabled _debug_ mode. In debug mode you can
29+
upload mnemonic seed, use debug link etc. which enables device tests. Storage
30+
on the device gets wiped on every start in this firmware.
31+
32+
### core unix frozen btconly debug build
33+
34+
Build of Core into UNIX emulator. Something you can run on your laptop.
35+
36+
Frozen version. That means you do not need any other files to run it, it is just
37+
a single binary file. Run it using `micropython -m main`.
38+
39+
See [Emulator](../core/emulator/index.md) for more info.
40+
41+
Debug mode enabled, Bitcoin-only version.
42+
43+
### core unix frozen debug build
44+
45+
Same as above but regular version (not only Bitcoin). **Are you looking for a Trezor T
46+
emulator? This is most likely it.**
47+
48+
### core unix frozen regular build
49+
50+
Same as above but regular version (not only Bitcoin) without debug mode enabled.
51+
52+
### core unix frozen regular darwin
53+
54+
Same as above for MacOS.
55+
56+
### core unix regular build
57+
58+
Non-frozen emulator build. This means you still need Python files present which get
59+
interpreted.
60+
61+
### crypto build
62+
63+
Build of our cryptographic library, which is then incorporated into the other builds.
64+
65+
### legacy emu btconly build
66+
67+
Build of Legacy into UNIX emulator. Use keyboard arrows to emulate button presses.
68+
69+
Bitcoin-only version.
70+
71+
### legacy emu regular build
72+
73+
Regular version (not only Bitcoin) of above. **Are you looking for a Trezor One
74+
emulator? This is most likely it.**
75+
76+
### legacy fw btconly build
77+
78+
Build of Legacy into firmware. Bitcoin only.
79+
80+
### legacy fw debug build
81+
82+
Build of Legacy into firmware. Debug mode on. Storage on the device gets wiped on every
83+
start in this firmware.
84+
85+
### legacy fw regular build
86+
87+
Build of Legacy into firmware. Regular version. **Are you looking for Trezor One firmware
88+
build? This is most likely it.**
89+
90+
## Test
91+
92+
### core device ui test
93+
94+
UI tests for Core. See artifacts for a comprehensive report of UI. See [tests/ui-tests](../tests/ui-tests.html#reports)
95+
for more info.
96+
97+
---
98+
99+
TODO: document others if needed

0 commit comments

Comments
 (0)