Skip to content

Commit 90b40b2

Browse files
authored
Merge pull request #150 from OneLiteFeatherNET/feat/adjustments
Feat/adjustments
2 parents 0a8592f + 25a2838 commit 90b40b2

File tree

15 files changed

+372
-241
lines changed

15 files changed

+372
-241
lines changed

.github/workflows/charts.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,5 +30,6 @@ jobs:
3030
uses: helm/[email protected]
3131
with:
3232
charts_dir: charts
33+
mark_as_latest: false
3334
env:
3435
CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}"

.github/workflows/ci.yml

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ jobs:
1515
steps:
1616
- name: Checkout sources
1717
uses: actions/checkout@v4
18+
19+
- uses: extractions/setup-just@v2
1820

1921
- name: Setup Node
2022
uses: actions/setup-node@v4
@@ -27,14 +29,16 @@ jobs:
2729
version: 9
2830

2931
- name: Dashboard build
30-
run: make dashboard_build
32+
run: just dashboard
3133

3234
lib_build:
3335
name: lib-build
3436
runs-on: ubuntu-latest
3537
steps:
3638
- name: Checkout sources
3739
uses: actions/checkout@v4
40+
41+
- uses: extractions/setup-just@v2
3842

3943
- name: Setup Node
4044
uses: actions/setup-node@v4
@@ -47,7 +51,7 @@ jobs:
4751
version: 9
4852

4953
- name: Lib build
50-
run: make lib_build
54+
run: just lib
5155

5256
check:
5357
name: check
@@ -59,6 +63,8 @@ jobs:
5963
- name: Checkout Sources
6064
uses: actions/checkout@v4
6165

66+
- uses: extractions/setup-just@v2
67+
6268
- name: Install Protoc
6369
uses: arduino/setup-protoc@v3
6470
with:
@@ -68,7 +74,7 @@ jobs:
6874
uses: Swatinem/rust-cache@v2
6975

7076
- name: Run check
71-
run: make check
77+
run: just check
7278

7379
clippy:
7480
name: clippy
@@ -83,6 +89,8 @@ jobs:
8389
- name: Checkout Sources
8490
uses: actions/checkout@v4
8591

92+
- uses: extractions/setup-just@v2
93+
8694
- name: Install Protoc
8795
uses: arduino/setup-protoc@v3
8896
with:
@@ -92,7 +100,7 @@ jobs:
92100
uses: Swatinem/rust-cache@v2
93101

94102
- name: Run clippy
95-
run: make clippy
103+
run: just clippy
96104

97105
test:
98106
needs: [clippy, check]
@@ -101,7 +109,7 @@ jobs:
101109
strategy:
102110
fail-fast: false
103111
matrix:
104-
test: [postgres, mysql, mariadb, mssql, unittest, distributed_caching]
112+
test: [test-all, unittest]
105113
steps:
106114
- name: Install toolchain
107115
uses: actions-rust-lang/setup-rust-toolchain@v1
@@ -111,6 +119,8 @@ jobs:
111119
- name: Checkout Sources
112120
uses: actions/checkout@v4
113121

122+
- uses: extractions/setup-just@v2
123+
114124
- name: Install Protoc
115125
uses: arduino/setup-protoc@v3
116126
with:
@@ -120,4 +130,4 @@ jobs:
120130
uses: Swatinem/rust-cache@v2
121131

122132
- name: Tests
123-
run: make ${{ matrix.test }}
133+
run: just ${{ matrix.test }}

.github/workflows/lib.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@ jobs:
1111
steps:
1212
- name: Checkout sources
1313
uses: actions/checkout@v4
14+
15+
- uses: extractions/setup-just@v2
1416

1517
- name: Setup Node
1618
uses: actions/setup-node@v4
@@ -23,7 +25,7 @@ jobs:
2325
version: 9
2426

2527
- name: Build
26-
run: make lib_build
28+
run: just lib
2729

2830
- name: Publish
2931
uses: JS-DevTools/npm-publish@v3

.github/workflows/nightly.yml

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ jobs:
1616
- name: Checkout Sources
1717
uses: actions/checkout@v4
1818

19+
- uses: extractions/setup-just@v2
20+
1921
- name: Install Protoc
2022
uses: arduino/setup-protoc@v3
2123
with:
@@ -25,7 +27,7 @@ jobs:
2527
uses: Swatinem/rust-cache@v2
2628

2729
- name: Run check
28-
run: make check
30+
run: just check
2931

3032
clippy:
3133
name: clippy
@@ -40,6 +42,8 @@ jobs:
4042
- name: Checkout Sources
4143
uses: actions/checkout@v4
4244

45+
- uses: extractions/setup-just@v2
46+
4347
- name: Install Protoc
4448
uses: arduino/setup-protoc@v3
4549
with:
@@ -49,7 +53,7 @@ jobs:
4953
uses: Swatinem/rust-cache@v2
5054

5155
- name: Run clippy
52-
run: make clippy
56+
run: just clippy
5357

5458
tests:
5559
needs: [clippy, check]
@@ -58,7 +62,7 @@ jobs:
5862
strategy:
5963
fail-fast: false
6064
matrix:
61-
test: [postgres, mysql, mariadb, mssql, unittest, distributed_caching]
65+
test: [test-all, unittest]
6266
steps:
6367
- name: Install toolchain
6468
uses: actions-rust-lang/setup-rust-toolchain@v1
@@ -68,6 +72,8 @@ jobs:
6872
- name: Checkout Sources
6973
uses: actions/checkout@v4
7074

75+
- uses: extractions/setup-just@v2
76+
7177
- name: Install Protoc
7278
uses: arduino/setup-protoc@v3
7379
with:
@@ -77,7 +83,7 @@ jobs:
7783
uses: Swatinem/rust-cache@v2
7884

7985
- name: Tests
80-
run: make ${{ matrix.test }}
86+
run: just ${{ matrix.test }}
8187

8288
docker:
8389
needs: [tests]
@@ -145,6 +151,8 @@ jobs:
145151
steps:
146152
- name: Checkout sources
147153
uses: actions/checkout@v4
154+
155+
- uses: extractions/setup-just@v2
148156

149157
- name: Setup Node
150158
uses: actions/setup-node@v4
@@ -163,7 +171,7 @@ jobs:
163171
sed -i "s|/feedback-fusion/|/feedback-fusion/nightly/|g" theme/index.ts
164172
165173
- name: Build
166-
run: make docs_build
174+
run: just docs
167175

168176
- name: Deploy
169177
uses: peaceiris/actions-gh-pages@v4

.github/workflows/release.yml

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ jobs:
1616
- name: Checkout Sources
1717
uses: actions/checkout@v4
1818

19+
- uses: extractions/setup-just@v2
20+
1921
- name: Install Protoc
2022
uses: arduino/setup-protoc@v3
2123
with:
@@ -25,7 +27,7 @@ jobs:
2527
uses: Swatinem/rust-cache@v2
2628

2729
- name: Run check
28-
run: make check
30+
run: just check
2931

3032
clippy:
3133
name: clippy
@@ -40,6 +42,8 @@ jobs:
4042
- name: Checkout Sources
4143
uses: actions/checkout@v4
4244

45+
- uses: extractions/setup-just@v2
46+
4347
- name: Install Protoc
4448
uses: arduino/setup-protoc@v3
4549
with:
@@ -49,7 +53,7 @@ jobs:
4953
uses: Swatinem/rust-cache@v2
5054

5155
- name: Run clippy
52-
run: make clippy
56+
run: just clippy
5357

5458
tests:
5559
needs: [clippy, check]
@@ -58,7 +62,7 @@ jobs:
5862
strategy:
5963
fail-fast: false
6064
matrix:
61-
test: [postgres, mysql, mariadb, mssql, unittest, distributed_caching]
65+
test: [test-all, unittest]
6266
steps:
6367
- name: Install toolchain
6468
uses: actions-rust-lang/setup-rust-toolchain@v1
@@ -68,6 +72,8 @@ jobs:
6872
- name: Checkout Sources
6973
uses: actions/checkout@v4
7074

75+
- uses: extractions/setup-just@v2
76+
7177
- name: Install Protoc
7278
uses: arduino/setup-protoc@v3
7379
with:
@@ -77,7 +83,7 @@ jobs:
7783
uses: Swatinem/rust-cache@v2
7884

7985
- name: Tests
80-
run: make ${{ matrix.test }}
86+
run: just ${{ matrix.test }}
8187

8288
docker:
8389
needs: [tests]
@@ -156,6 +162,8 @@ jobs:
156162
- name: Checkout sources
157163
uses: actions/checkout@v4
158164

165+
- uses: extractions/setup-just@v2
166+
159167
- name: Extract version
160168
run: |
161169
VERSION=$(grep '^version = ' Cargo.toml | sed -E 's/version = "(.*)"/\1/')
@@ -178,7 +186,7 @@ jobs:
178186
sed -i "s|/feedback-fusion/|/feedback-fusion/${{ env.VERSION }}/|g" theme/index.ts
179187
180188
- name: Build
181-
run: make docs_build
189+
run: just docs
182190

183191
- name: Deploy
184192
uses: peaceiris/actions-gh-pages@v4

.pre-commit-config.yaml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
repos:
2+
- repo: local
3+
hooks:
4+
- id: clippy
5+
name: Clippy
6+
entry: just clippy
7+
language: system
8+
pass_filenames: false
9+
types: [rust]
10+
- id: helm
11+
name: Helm docs
12+
entry: sh -c "just helm && git add charts docs"
13+
language: system
14+
pass_filenames: false
15+
always_run: true

Dockerfile

Lines changed: 24 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,22 +5,40 @@ COPY ./rust-toolchain.toml ./rust-toolchain.toml
55
RUN apt-get update \
66
&& apt-get install build-essential libssl-dev pkg-config libprotobuf-dev protobuf-compiler gcc-aarch64-linux-gnu libc6-dev-arm64-cross -y \
77
&& rustup update \
8-
&& rustup target add aarch64-unknown-linux-gnu
8+
&& rustup target add aarch64-unknown-linux-gnu \
9+
&& mkdir build
910

10-
ARG features=all-databases,otlp
11+
WORKDIR build
12+
13+
ARG features=all-databases,otlp,caching-skytable
14+
15+
RUN USER=root cargo init --bin --name feedback-fusion
16+
RUN USER=root cargo init --lib --name feedback_fusion_common common
17+
RUN USER=root cargo init --lib --name feedback_fusion_codegen codegen
1118

1219
COPY ./.cargo ./.cargo
1320
COPY ./Cargo.toml .
14-
COPY ./Cargo.lock .
21+
COPY ./Cargo.lock .
1522
COPY ./proto ./proto
1623
COPY ./common ./common
1724
COPY ./codegen ./codegen
18-
COPY ./src ./src
19-
COPY ./benches ./benches
2025
COPY ./fuzz ./fuzz
26+
COPY ./benches ./benches
2127

2228
ARG TARGETARCH
2329

30+
RUN if [ "$TARGETARCH" = "arm64" ]; then \
31+
cargo build --release --target aarch64-unknown-linux-gnu --features $features; \
32+
else \
33+
cargo build --release --features $features; \
34+
fi
35+
36+
RUN rm -Rf ./src
37+
COPY ./src ./src
38+
39+
# for some reason cargo does not detect the file change
40+
RUN touch src/main.rs
41+
2442
RUN if [ "$TARGETARCH" = "arm64" ]; then \
2543
cargo build --release --target aarch64-unknown-linux-gnu --features $features; \
2644
mv target/aarch64-unknown-linux-gnu/release/feedback-fusion target/release/feedback-fusion; \
@@ -30,6 +48,6 @@ RUN if [ "$TARGETARCH" = "arm64" ]; then \
3048

3149
FROM gcr.io/distroless/cc-debian12
3250

33-
COPY --from=build ./target/release/feedback-fusion .
51+
COPY --from=build ./build/target/release/feedback-fusion .
3452

3553
ENTRYPOINT ["./feedback-fusion"]

0 commit comments

Comments
 (0)