-
Notifications
You must be signed in to change notification settings - Fork 110
176 lines (154 loc) · 6.35 KB
/
ci-tests.patch.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
# Workflow patches for skipping CI tests when Rust code or dependencies
# aren't modified in a PR.
name: Run tests
# Run on PRs with unmodified code and dependency files.
on:
pull_request:
paths-ignore:
# code and tests
- "**/*.rs"
# hard-coded checkpoints and proptest regressions
- "**/*.txt"
# test data snapshots
- "**/*.snap"
# dependencies
- "**/Cargo.toml"
- "**/Cargo.lock"
# configuration files
- ".cargo/config.toml"
- "**/clippy.toml"
# workflow definitions
- "docker/**"
- ".dockerignore"
- ".github/workflows/ci-tests.yml"
- ".github/workflows/sub-ci-unit-tests-docker.yml"
- ".github/workflows/sub-ci-integration-tests-gcp.yml"
- ".github/workflows/sub-deploy-integration-tests-gcp.yml"
- ".github/workflows/sub-find-cached-disks.yml"
- ".github/workflows/sub-build-docker-image.yml"
#! IMPORTANT
#!
#! The job names in `sub-ci-unit-tests-docker.yml`, `sub-ci-integration-tests-gcp.yml`,
#! `ci-tests.patch.yml` and `ci-tests.patch-external.yml` must be kept in sync.
jobs:
build:
name: Build CI Docker / Build images
runs-on: ubuntu-latest
steps:
- run: 'echo "No build required"'
####
## The following jobs are related to sub-ci-unit-tests-docker.yml
###
test-all:
name: Unit tests / Test all
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' && !github.event.pull_request.head.repo.fork }}
steps:
- run: 'echo "No build required"'
test-fake-activation-heights:
name: Unit tests / Test with fake activation heights
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' && !github.event.pull_request.head.repo.fork }}
steps:
- run: 'echo "No build required"'
test-empty-sync:
name: Unit tests / Test checkpoint sync from empty state
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' && !github.event.pull_request.head.repo.fork }}
steps:
- run: 'echo "No build required"'
test-lightwalletd-integration:
name: Unit tests / Test integration with lightwalletd
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' && !github.event.pull_request.head.repo.fork }}
steps:
- run: 'echo "No build required"'
test-configuration-file:
name: Unit tests / Test CI default Docker config file / Test default-conf in Docker
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' && !github.event.pull_request.head.repo.fork }}
steps:
- run: 'echo "No build required"'
test-configuration-file-testnet:
name: Unit tests / Test CI testnet Docker config file / Test testnet-conf in Docker
needs: build
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' && !github.event.pull_request.head.repo.fork }}
steps:
- run: 'echo "No build required"'
test-zebra-conf-path:
name: Unit tests / Test CI custom Docker config file / Test custom-conf in Docker
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' && !github.event.pull_request.head.repo.fork }}
steps:
- run: 'echo "No build required"'
####
## The following jobs are related to sub-ci-integration-tests-gcp.yml
###
# We don't patch the testnet job, because testnet isn't required to merge (it's too unstable)
get-available-disks:
name: Integration tests / Check if cached state disks exist for Mainnet / Get Mainnet cached disk
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' && !github.event.pull_request.head.repo.fork }}
steps:
- run: 'echo "No build required"'
test-stateful-sync:
name: Integration tests / Zebra checkpoint update / Run sync-past-checkpoint test
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' && !github.event.pull_request.head.repo.fork }}
steps:
- run: 'echo "No build required"'
test-update-sync:
name: Integration tests / Zebra tip update / Run update-to-tip test
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' && !github.event.pull_request.head.repo.fork }}
steps:
- run: 'echo "No build required"'
checkpoints-mainnet:
name: Integration tests / Generate checkpoints mainnet / Run checkpoints-mainnet test
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' && !github.event.pull_request.head.repo.fork }}
steps:
- run: 'echo "No build required"'
lightwalletd-rpc-test:
name: Integration tests / Zebra tip JSON-RPC / Run fully-synced-rpc test
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' && !github.event.pull_request.head.repo.fork }}
steps:
- run: 'echo "No build required"'
lightwalletd-transactions-test:
name: Integration tests / lightwalletd tip send / Run lwd-send-transactions test
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' && !github.event.pull_request.head.repo.fork }}
steps:
- run: 'echo "No build required"'
get-block-template-test:
name: Integration tests / get block template / Run get-block-template test
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' && !github.event.pull_request.head.repo.fork }}
steps:
- run: 'echo "No build required"'
submit-block-test:
name: Integration tests / submit block / Run submit-block test
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' && !github.event.pull_request.head.repo.fork }}
steps:
- run: 'echo "No build required"'
lightwalletd-full-sync:
name: Integration tests / lightwalletd tip / Run lwd-full-sync test
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' && !github.event.pull_request.head.repo.fork }}
steps:
- run: 'echo "No build required"'
lightwalletd-update-sync:
name: Integration tests / lightwalletd tip update / Run lwd-update-sync test
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' && !github.event.pull_request.head.repo.fork }}
steps:
- run: 'echo "No build required"'
lightwalletd-grpc-test:
name: Integration tests / lightwalletd GRPC tests / Run lwd-grpc-wallet test
runs-on: ubuntu-latest
if: ${{ github.event_name == 'pull_request' && !github.event.pull_request.head.repo.fork }}
steps:
- run: 'echo "No build required"'