-
Notifications
You must be signed in to change notification settings - Fork 25
130 lines (108 loc) · 3.12 KB
/
basic.yaml
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
# Based on https://github.com/actions-rs/example/blob/master/.github/workflows/quickstart.yml
on:
pull_request:
push:
branches:
- main
- releases/**
name: Basic
jobs:
test:
name: Test Suite
runs-on: blacksmith-32vcpu-ubuntu-2204
steps:
- uses: actions/checkout@v4
- name: Install stable toolchain
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: 1.73.0
override: true
- name: Install protoc
uses: arduino/setup-protoc@v2
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
- name: Cache build artifacts
uses: useblacksmith/rust-cache@v3
with:
shared-key: "cache"
- name: Run tests
uses: actions-rs/cargo@v1
with:
command: test
args: --locked
env:
RUSTFLAGS: --cfg tracing_unstable
RUST_BACKTRACE: 1
cosmwasm-compilation:
name: Cosmwasm Compilation
runs-on: blacksmith-32vcpu-ubuntu-2204
steps:
- uses: actions/checkout@v4
- name: Install stable toolchain
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: 1.73.0
target: wasm32-unknown-unknown
override: true
- name: Cache build artifacts
uses: useblacksmith/rust-cache@v3
with:
shared-key: "cache"
- name: Build wasm release
run: |
for C in ./contracts/*/
do
echo "Compiling `basename $C`..."
(cd $C && cargo build --release --lib --target wasm32-unknown-unknown --locked)
done
- name: Install cosmwasm-check
uses: actions-rs/cargo@v1
with:
command: install
args: --debug --version 1.3.3 --locked cosmwasm-check
- name: Check wasm contracts
run: cosmwasm-check ./target/wasm32-unknown-unknown/release/*.wasm
lints:
name: Lints
runs-on: blacksmith-16vcpu-ubuntu-2204
steps:
- uses: actions/checkout@v4
- name: Install stable toolchain
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: 1.73.0
override: true
components: rustfmt, clippy
- name: Install protoc
uses: arduino/setup-protoc@v2
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
- name: Cache build artifacts
uses: useblacksmith/rust-cache@v3
with:
shared-key: "cache"
- name: Install cargo-sort
uses: baptiste0928/cargo-install@v2
with:
crate: cargo-sort
- name: Run cargo fmt
uses: actions-rs/cargo@v1
with:
command: fmt
args: --all -- --check
- name: Run cargo sort
uses: actions-rs/cargo@v1
with:
command: sort
args: --workspace --check --check-format
- name: Run cargo clippy
uses: actions-rs/cargo@v1
with:
command: clippy
args: -- -D warnings -A deprecated
- name: Check Diff
# fails if any changes not committed
run: git diff --exit-code