Skip to content

Commit bbda7a8

Browse files
authored
add ci to upload libs (#60)
1 parent f8d0ea4 commit bbda7a8

File tree

2 files changed

+163
-19
lines changed

2 files changed

+163
-19
lines changed

.github/workflows/default_test.yml

Lines changed: 0 additions & 19 deletions
This file was deleted.

.github/workflows/workflow.yml

Lines changed: 163 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,163 @@
1+
name: WeDPR-Lab-Core GitHub Actions
2+
3+
on:
4+
push:
5+
paths-ignore:
6+
- "docs/**"
7+
- "Changelog.md"
8+
- "README.md"
9+
pull_request:
10+
paths-ignore:
11+
- "docs/**"
12+
- "Changelog.md"
13+
- "README.md"
14+
release:
15+
types: [published, created, edited]
16+
env:
17+
CCACHE_DIR: ${{ github.workspace }}/ccache
18+
19+
jobs:
20+
build_with_macos:
21+
name: build_with_macos
22+
runs-on: ${{ matrix.os }}
23+
strategy:
24+
matrix:
25+
os: [macos-latest]
26+
steps:
27+
- uses: actions/checkout@v2
28+
with:
29+
fetch-depth: 5
30+
- name: Nightly default
31+
run: rustup default nightly
32+
- name: install macOS dependencies
33+
if: runner.os == 'macOS'
34+
run: brew install ccache
35+
- name: build
36+
run: cargo build --all --all-targets --verbose --release
37+
- name: run test and bench
38+
run: cargo test && cargo bench
39+
- uses: actions/upload-artifact@v2
40+
with:
41+
name: libffi_java_acv.dylib.tar.gz
42+
path: target/release/libffi_java_acv.dylib
43+
- uses: actions/upload-artifact@v2
44+
with:
45+
name: libffi_java_vcl.dylib.tar.gz
46+
path: target/release/libffi_java_vcl.dylib
47+
- uses: actions/upload-artifact@v2
48+
with:
49+
name: libffi_java_scd.dylib.tar.gz
50+
path: target/release/libffi_java_scd.dylib
51+
- uses: actions/upload-artifact@v2
52+
with:
53+
name: libffi_java_ktb.dylib.tar.gz
54+
path: target/release/libffi_java_ktb.dylib
55+
- uses: actions/upload-artifact@v2
56+
with:
57+
name: libffi_c_scd.dylib.tar.gz
58+
path: target/release/libffi_c_scd.dylib
59+
- uses: actions/upload-artifact@v2
60+
with:
61+
name: libffi_c_vcl.dylib.tar.gz
62+
path: target/release/libffi_c_vcl.dylib
63+
- uses: actions/upload-artifact@v2
64+
with:
65+
name: libffi_c_hdk.dylib.tar.gz
66+
path: target/release/libffi_c_hdk.dylib
67+
68+
build_with_centos:
69+
name: build_with_centos
70+
runs-on: ubuntu-latest
71+
container:
72+
image: docker.io/centos:7
73+
steps:
74+
- uses: actions/checkout@v2
75+
with:
76+
fetch-depth: 5
77+
- name: install rust language
78+
uses: actions-rs/toolchain@v1
79+
with:
80+
toolchain: nightly-2021-06-17
81+
override: true
82+
- name: install CentOS dependencies
83+
run: |
84+
yum install -y epel-release centos-release-scl
85+
yum install -y openssl openssl-devel git make gcc gcc-c++ glibc-static glibc-devel cmake3 ccache devtoolset-7 libzstd-devel zlib-devel flex bison python-devel python3-devel && source /opt/rh/devtoolset-7/enable
86+
- name: configure and compile
87+
run: |
88+
cargo build --all --all-targets --verbose --release
89+
cargo test
90+
cargo bench
91+
- uses: actions/upload-artifact@v2
92+
with:
93+
name: libffi_java_acv.so.tar.gz
94+
path: target/release/libffi_java_acv.so
95+
- uses: actions/upload-artifact@v2
96+
with:
97+
name: libffi_java_vcl.so.tar.gz
98+
path: target/release/libffi_java_vcl.so
99+
- uses: actions/upload-artifact@v2
100+
with:
101+
name: libffi_java_scd.so.tar.gz
102+
path: target/release/libffi_java_scd.so
103+
- uses: actions/upload-artifact@v2
104+
with:
105+
name: libffi_java_ktb.so.tar.gz
106+
path: target/release/libffi_java_ktb.so
107+
- uses: actions/upload-artifact@v2
108+
with:
109+
name: libffi_c_scd.so.tar.gz
110+
path: target/release/libffi_c_scd.so
111+
- uses: actions/upload-artifact@v2
112+
with:
113+
name: libffi_c_vcl.so.tar.gz
114+
path: target/release/libffi_c_vcl.so
115+
- uses: actions/upload-artifact@v2
116+
with:
117+
name: libffi_c_hdk.so.tar.gz
118+
path: target/release/libffi_c_hdk.so
119+
build_with_windows:
120+
name: build_with_windows
121+
runs-on: ${{ matrix.os }}
122+
strategy:
123+
matrix:
124+
os: [windows-2019]
125+
steps:
126+
- uses: actions/checkout@v2
127+
with:
128+
fetch-depth: 5
129+
- run: echo "VCPKG_ROOT=$env:VCPKG_INSTALLATION_ROOT" | Out-File -FilePath $env:GITHUB_ENV -Append
130+
- run: vcpkg install openssl:x64-windows-static-md
131+
- name: build and test
132+
run: |
133+
cargo build --all --all-targets --verbose --release
134+
cargo test
135+
cargo bench
136+
- uses: actions/upload-artifact@v2
137+
with:
138+
name: ffi_java_acv.dll.zip
139+
path: D:\a\WeDPR-Lab-Core\WeDPR-Lab-Core\target\release\ffi_java_acv.dll
140+
- uses: actions/upload-artifact@v2
141+
with:
142+
name: ffi_java_vcl.dll.zip
143+
path: D:\a\WeDPR-Lab-Core\WeDPR-Lab-Core\target\release\ffi_java_vcl.dll
144+
- uses: actions/upload-artifact@v2
145+
with:
146+
name: ffi_java_scd.dll.zip
147+
path: D:\a\WeDPR-Lab-Core\WeDPR-Lab-Core\target\release\ffi_java_scd.dll
148+
- uses: actions/upload-artifact@v2
149+
with:
150+
name: ffi_java_ktb.dll.zip
151+
path: D:\a\WeDPR-Lab-Core\WeDPR-Lab-Core\target\release\ffi_java_ktb.dll
152+
- uses: actions/upload-artifact@v2
153+
with:
154+
name: ffi_c_scd.dll.zip
155+
path: D:\a\WeDPR-Lab-Core\WeDPR-Lab-Core\target\release\ffi_c_scd.dll
156+
- uses: actions/upload-artifact@v2
157+
with:
158+
name: ffi_c_vcl.dll.zip
159+
path: D:\a\WeDPR-Lab-Core\WeDPR-Lab-Core\target\release\ffi_c_vcl.dll
160+
- uses: actions/upload-artifact@v2
161+
with:
162+
name: ffi_c_hdk.dll.zip
163+
path: D:\a\WeDPR-Lab-Core\WeDPR-Lab-Core\target\release\ffi_c_hdk.dll

0 commit comments

Comments
 (0)