-
Notifications
You must be signed in to change notification settings - Fork 27
133 lines (130 loc) · 4.71 KB
/
install-and-integration-tests.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
name: pop install & integration-tests
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
defaults:
run:
shell: bash
jobs:
# arch:
# runs-on: ubuntu-latest
# container: archlinux:latest
# steps:
# - uses: actions/checkout@v4
# - name: Install prerequisites
# run: pacman -Syu --needed --noconfirm cmake curl git base-devel
# - name: Install Rust
# run: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
# - name: Install Pop
# run: |
# . "$HOME/.cargo/env"
# cargo install --locked --no-default-features --features contract,parachain --path ./crates/pop-cli
# - name: Run Pop install
# run: |
# . "$HOME/.cargo/env"
# pop install -y
# - name: Run integration tests
# run: |
# . "$HOME/.cargo/env"
# cargo test --no-default-features --features contract --test contract
debian:
runs-on: ubuntu-latest
container: debian
steps:
- uses: actions/checkout@v4
- name: Install prerequisites
run: apt-get update && apt-get -y install build-essential cmake curl git
- name: Install Rust
run: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
- name: Install Pop
run: |
. "$HOME/.cargo/env"
cargo install --locked --no-default-features --features contract,parachain --path ./crates/pop-cli
- name: Run Pop Install
run: |
. "$HOME/.cargo/env"
pop install -y
- name: Run parachain integration tests
run: |
. "$HOME/.cargo/env"
cargo test --no-default-features --features parachain --test parachain
- name: Run contracts integration tests
run: |
. "$HOME/.cargo/env"
cargo test --no-default-features --features contract --test contract
macos:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- name: Install prerequisites
run: brew update && brew install cmake openssl protobuf
- name: Install Rust
run: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
- name: Install Pop
run: |
. "$HOME/.cargo/env"
cargo install --locked --no-default-features --features contract,parachain --path ./crates/pop-cli
- name: Run Pop Install
run: |
. "$HOME/.cargo/env"
pop install -y
- name: Run parachain integration tests
run: |
. "$HOME/.cargo/env"
cargo test --no-default-features --features parachain --test parachain
- name: Run contracts integration tests
run: |
. "$HOME/.cargo/env"
cargo test --no-default-features --features contract --test contract
redhat:
runs-on: ubuntu-latest
container: redhat/ubi8
steps:
- uses: actions/checkout@v4
- name: Install prerequisites
run: yum update -y && yum install -y perl-IPC-Cmd clang curl git make cmake protobuf-compiler gcc pkg-config openssl-devel
- name: Install Rust
run: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
- name: Install Pop
run: |
. "$HOME/.cargo/env"
cargo install --locked --no-default-features --features contract,parachain --path ./crates/pop-cli
- name: Run Pop install
run: |
. "$HOME/.cargo/env"
pop install -y
- name: Run parachain integration tests
run: |
. "$HOME/.cargo/env"
cargo test --no-default-features --features parachain --test parachain
- name: Run contracts integration tests
run: |
. "$HOME/.cargo/env"
cargo test --no-default-features --features contract --test contract
ubuntu:
runs-on: ubuntu-latest
container: ubuntu
steps:
- uses: actions/checkout@v4
- name: Install prerequisites
run: apt-get update && apt-get -y install build-essential cmake curl git
- name: Install Rust
run: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
- name: Install Pop
run: |
. "$HOME/.cargo/env"
cargo install --locked --no-default-features --features contract,parachain --path ./crates/pop-cli
- name: Run Pop install
run: |
. "$HOME/.cargo/env"
pop install -y
- name: Run parachain integration tests
run: |
. "$HOME/.cargo/env"
cargo test --no-default-features --features parachain --test parachain
- name: Run contracts integration tests
run: |
. "$HOME/.cargo/env"
cargo test --no-default-features --features contract --test contract