-
Notifications
You must be signed in to change notification settings - Fork 108
158 lines (124 loc) · 3.53 KB
/
foundry.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
name: "Foundry"
on: "push"
env:
# Setting an environment variable with the value of a configuration variable
$build_artifact: foundry_artifact
jobs:
build:
name: Build contracts and cache output
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install node deps and founry
uses: ./.github/actions/setup_deps
- name: Build contracts
run: |
npx turbo run build:contracts
- name: Archive built artifacts
uses: actions/upload-artifact@v3
with:
name: $build_artifact
path: |
**/*/cache
**/*/out
retention-days: 1
contract_size_check:
needs: build
strategy:
fail-fast: true
name: Check contract sizes
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install node deps and founry
uses: ./.github/actions/setup_deps
- name: Download foundry artifacts
uses: actions/download-artifact@v3
with:
name: $build_artifact
- name: Check contract sizes
run: |
npx turbo run build:sizes
test:
needs: build
strategy:
fail-fast: true
name: Tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install node deps and founry
uses: ./.github/actions/setup_deps
- name: Download foundry artifacts
uses: actions/download-artifact@v3
with:
name: $build_artifact
- name: Run tests
run: |
npx turbo run test
test_fork:
needs: build
strategy:
fail-fast: true
name: Fork tests
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install node deps and founry
uses: ./.github/actions/setup_deps
- name: Download foundry artifacts
uses: actions/download-artifact@v3
with:
name: $build_artifact
- name: Run fork tests
run: |
npx turbo run test:fork
env:
FORK_TEST_CHAINS: mainnet,goerli,optimism,optimism_goerli,zora,zora_goerli,base_goerli,base
ALCHEMY_KEY: ${{ secrets.ALCHEMY_KEY }}
storage_layout:
needs: build
strategy:
fail-fast: true
name: Inpect storage layout
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install node deps and founry
uses: ./.github/actions/setup_deps
- name: Download foundry artifacts
uses: actions/download-artifact@v3
with:
name: $build_artifact
- name: "Inspect Storage Layout"
continue-on-error: false
run: npx turbo run storage-inspect:check
build_js:
needs: build
strategy:
fail-fast: true
name: Build js package
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install node deps and founry
uses: ./.github/actions/setup_deps
- name: Download foundry artifacts
uses: actions/download-artifact@v3
with:
name: $build_artifact
- name: Build js package
run: |
npx turbo run prepack
coverage-1155:
uses: ./.github/workflows/coverage.yml
name: "Test coverage - 1155"
with:
package: "1155-contracts"
files_to_ignore: '"*DeploymentConfig*" "*Redeem*" "*deployment*" "*packages*"'
coverage-protocol-rewards:
uses: ./.github/workflows/coverage.yml
name: "Test coverage - protocol rewards"
with:
package: "protocol-rewards"
files_to_ignore: '"*lib*"'