Skip to content

Commit 58c066f

Browse files
committed
update main
1 parent dada654 commit 58c066f

File tree

1 file changed

+92
-20
lines changed

1 file changed

+92
-20
lines changed

.github/workflows/release.yaml

Lines changed: 92 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -5,19 +5,15 @@ on:
55
tags:
66
- "*"
77
jobs:
8-
build:
8+
build_x86:
99
permissions:
1010
contents: write
1111
continue-on-error: false
1212
runs-on: ubuntu-latest
1313
steps:
1414
- name: Checkout
1515
uses: actions/checkout@v4
16-
17-
- uses: taiki-e/install-action@just
18-
1916
- uses: cargo-bins/cargo-binstall@main
20-
2117
- uses: dtolnay/rust-toolchain@stable
2218
with:
2319
toolchain: nightly
@@ -26,36 +22,112 @@ jobs:
2622
- name: Install the dependencies
2723
run: |
2824
sudo apt update
29-
sudo apt install -y podman binutils-aarch64-linux-gnu musl-tools
30-
cargo binstall -y cross
25+
sudo apt install -y musl-tools protobuf-compiler
3126
cargo binstall -y bpf-linker
3227
28+
3329
- name: Build tamanoir-ebpf
34-
run: just build-ebpf
30+
run: cd tamanoir-ebpf && cargo build --release
3531

36-
- name: Build tamanoir-proxy for arm64 musl
32+
- name: Build tamanoir for x86_64 musl
3733
run: |
38-
CROSS_CONTAINER_ENGINE=podman cross build -p tamanoir-proxy --target aarch64-unknown-linux-musl --release
39-
cp target/aarch64-unknown-linux-musl/release/tamanoir tamanoir-aarch64-unknown-linux-musl
34+
cargo build -p tamanoir --target x86_64-unknown-linux-musl --release
35+
cp target/x86_64-unknown-linux-musl/release/tamanoir tamanoir-x86_64-unknown-linux-musl
4036
41-
- name: Build tamanoir-proxy for x86_64 musl
37+
- name: Build tamanoir-c2 for x86_64 musl
4238
run: |
43-
CROSS_CONTAINER_ENGINE=podman cross build -p tamanoir-proxy --target x86_64-unknown-linux-musl --release
44-
cp target/x86_64-unknown-linux-musl/release/tamanoir tamanoir-x86_64-unknown-linux-musl
39+
cargo build -p tamanoir-c2 --target x86_64-unknown-linux-musl --release
40+
cp target/x86_64-unknown-linux-musl/release/tamanoir-c2 tamanoir-c2-x86_64-unknown-linux-musl
41+
42+
- name: Build tamanoir-tui for x86_64 musl
43+
run: |
44+
cargo build -p tamanoir-tui --target x86_64-unknown-linux-musl --release
45+
cp target/x86_64-unknown-linux-musl/release/tamanoir-tui tamanoir-tui-x86_64-unknown-linux-musl
46+
47+
- name: Build hello-world shellcodes for x86_64 musl
48+
./tamanoir-c2-x86_64-unknown-linux-musl rce build -c ./assets/payloads/hello -t x86_64
49+
./tamanoir-c2-x86_64-unknown-linux-musl rce build -c ./assets/payloads/xeyes -t x86_64
50+
cp $HOME/.tamanoir/bins/tamanoir-rce-hello_x86_64.bin tamanoir-rce-hello_x86_64.bin
51+
cp $HOME/.tamanoir/bins/tamanoir-rce-xeyes_x86_64.bin tamanoir-rce-xeyes_x86_64.bin
52+
53+
- name: Persist artifacts
54+
uses: actions/upload-artifact@v4
55+
with:
56+
name: arch-artifacts
57+
path: |
58+
tamanoir-x86_64-unknown-linux-musl
59+
tamanoir-c2-x86_64-unknown-linux-musl
60+
tamanoir-tui-x86_64-unknown-linux-musl
61+
tamanoir-rce-hello_x86_64.bin
62+
tamanoir-rce-xeyes_x86_64.bin
63+
64+
build_arm:
65+
permissions:
66+
contents: write
67+
continue-on-error: false
68+
runs-on: ubuntu-24.04-arm
69+
steps:
70+
- name: Checkout
71+
uses: actions/checkout@v4
72+
- uses: cargo-bins/cargo-binstall@main
73+
- uses: dtolnay/rust-toolchain@stable
74+
with:
75+
toolchain: nightly
76+
components: clippy rustfmt
77+
78+
- name: Install the dependencies
79+
run: |
80+
sudo apt update
81+
sudo apt install -y musl-tools protobuf-compiler
82+
cargo binstall -y cargo
83+
cargo binstall -y bpf-linker
84+
85+
- name: Build tamanoir-ebpf
86+
run: cd tamanoir-ebpf && cargo build --release
4587

4688
- name: Build tamanoir for arm64 musl
4789
run: |
48-
CROSS_CONTAINER_ENGINE=podman cross build --target aarch64-unknown-linux-musl --release
90+
cargo build -p tamanoir --target aarch64-unknown-linux-musl --release
4991
cp target/aarch64-unknown-linux-musl/release/tamanoir tamanoir-aarch64-unknown-linux-musl
5092
51-
- name: Build tamanoir for x86_64 musl
93+
- name: Build tamanoir-C2 for arm64 musl
5294
run: |
53-
CROSS_CONTAINER_ENGINE=podman cross build --target x86_64-unknown-linux-musl --release
54-
cp target/x86_64-unknown-linux-musl/release/tamanoir tamanoir-x86_64-unknown-linux-musl
95+
cargo build -p tamanoir-c2 --target aarch64-unknown-linux-musl --release
96+
cp target/aarch64-unknown-linux-musl/release/tamanoir-c2 tamanoir-c2-aarch64-unknown-linux-musl
5597
56-
- name: Upload Binary
98+
- name: Build tamanoir-tui for arm64 musl
99+
run: |
100+
cargo build -p tamanoir-tui --target aarch64-unknown-linux-musl --release
101+
cp target/x86_64-unknown-linux-musl/release/tamanoir-tui tamanoir-tui-aarch64-unknown-linux-musl
102+
103+
- name: Build hello-world shellcodes for arm64 musl
104+
./tamanoir-c2-aarch64-unknown-linux-musl rce build -c ./assets/payloads/hello -t aarch64
105+
./tamanoir-c2-aarch64-unknown-linux-musl rce build -c ./assets/payloads/xeyes -t aarch64
106+
cp $HOME/.tamanoir/bins/tamanoir-rce-hello_aarch64.bin tamanoir-rce-hello_aarch64.bin
107+
cp $HOME/.tamanoir/bins/tamanoir-rce-xeyes_aarch64.bin tamanoir-rce-xeyes_aarch64.bin
108+
109+
- name: Persist artifacts
110+
uses: actions/upload-artifact@v4
111+
with:
112+
name: arch-artifacts
113+
path: |
114+
tamanoir-aarch64-unknown-linux-musl
115+
tamanoir-c2-aarch64-unknown-linux-musl
116+
tamanoir-tui-aarch64-unknown-linux-musl
117+
tamanoir-rce-hello_aarch64.bin
118+
tamanoir-rce-xeyes_aarch64.bin
119+
120+
121+
jobs:
122+
release:
123+
needs: [build_x86,build_arm]
124+
runs-on: ubuntu-latest
125+
steps:
126+
- name: Upload Binaries
57127
uses: softprops/action-gh-release@v2
58128
with:
59-
files: "tamanoir*"
129+
files: "tamanoir-*"
60130
body: |
61131
[Release.md](${{ github.server_url }}/${{ github.repository }}/blob/main/Release.md)
132+
133+

0 commit comments

Comments
 (0)