From 26d865f7fcf2370aa90885cb6ee4a673efe1a99d Mon Sep 17 00:00:00 2001 From: Mahdi Robatipoor Date: Thu, 25 Jan 2024 12:40:02 +0330 Subject: [PATCH] refactor github actions --- .github/workflows/build-checker.yml | 4 ++-- .github/workflows/code-formater.yml | 2 +- .github/workflows/code-linter.yml | 2 +- .github/workflows/image-builder.yml | 2 +- .github/workflows/security-checker.yml | 2 +- .github/workflows/spell-checker.yml | 2 +- .github/workflows/test-coverage.yml | 6 +++--- .github/workflows/test.yml | 4 ++-- Dockerfile | 9 +++++++++ src/util/claim.rs | 3 +-- 10 files changed, 22 insertions(+), 14 deletions(-) diff --git a/.github/workflows/build-checker.yml b/.github/workflows/build-checker.yml index 14e2a0d..ecc1ff4 100644 --- a/.github/workflows/build-checker.yml +++ b/.github/workflows/build-checker.yml @@ -13,7 +13,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Install stable toolchain uses: actions-rs/toolchain@v1 @@ -24,7 +24,7 @@ jobs: - name: Cache dependencies id: cache-dependencies - uses: actions/cache@v3 + uses: actions/cache@v4 with: path: | ~/.cargo/bin/ diff --git a/.github/workflows/code-formater.yml b/.github/workflows/code-formater.yml index 9f79026..5f3ec74 100644 --- a/.github/workflows/code-formater.yml +++ b/.github/workflows/code-formater.yml @@ -12,7 +12,7 @@ jobs: name: cargo fmt runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - uses: actions-rs/toolchain@v1 with: toolchain: stable diff --git a/.github/workflows/code-linter.yml b/.github/workflows/code-linter.yml index f13c543..ae9de44 100644 --- a/.github/workflows/code-linter.yml +++ b/.github/workflows/code-linter.yml @@ -12,7 +12,7 @@ jobs: name: cargo clippy runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - uses: actions-rs/toolchain@v1 with: toolchain: nightly diff --git a/.github/workflows/image-builder.yml b/.github/workflows/image-builder.yml index f4dbf45..688dcb8 100644 --- a/.github/workflows/image-builder.yml +++ b/.github/workflows/image-builder.yml @@ -14,7 +14,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Set up QEMU uses: docker/setup-qemu-action@v2 diff --git a/.github/workflows/security-checker.yml b/.github/workflows/security-checker.yml index 39afc08..c096dc9 100644 --- a/.github/workflows/security-checker.yml +++ b/.github/workflows/security-checker.yml @@ -8,7 +8,7 @@ jobs: security_audit: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - uses: actions-rs/audit-check@v1 with: token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/spell-checker.yml b/.github/workflows/spell-checker.yml index 0722a2d..533e59a 100644 --- a/.github/workflows/spell-checker.yml +++ b/.github/workflows/spell-checker.yml @@ -11,7 +11,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout Actions Repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Check spelling uses: crate-ci/typos@master diff --git a/.github/workflows/test-coverage.yml b/.github/workflows/test-coverage.yml index 5b9ee99..88204bc 100644 --- a/.github/workflows/test-coverage.yml +++ b/.github/workflows/test-coverage.yml @@ -37,7 +37,7 @@ jobs: APP_PROFILE: test steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Install nightly toolchain uses: actions-rs/toolchain@v1 @@ -46,7 +46,7 @@ jobs: override: true - name: Cache tarpaulin - uses: actions/cache@v3 + uses: actions/cache@v4 id: cache-tarpaulin with: path: | @@ -71,7 +71,7 @@ jobs: ./scripts/init_mockserver.sh - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Generate code coverage run: | diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 38d224c..9cd70ac 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -40,11 +40,11 @@ jobs: APP_PROFILE: test steps: - name: Checkout repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Cache dependencies id: cache-dependencies - uses: actions/cache@v3 + uses: actions/cache@v4 with: path: | ~/.cargo/bin/ diff --git a/Dockerfile b/Dockerfile index 5322d66..b28c771 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,18 +1,24 @@ # build stage FROM rust:latest as builder + WORKDIR /workspace + RUN apt-get update && apt-get install lld clang -y + COPY . . + RUN cargo build --release # deploy stage FROM debian:bullseye-slim RUN apt-get update && apt-get install -y --no-install-recommends openssl ca-certificates && apt-get clean + # create workspace directory WORKDIR /workspace COPY static static + COPY settings settings # copy binary and configuration files @@ -20,7 +26,10 @@ COPY --from=builder /workspace/target/release/app . # expose port EXPOSE 8080 + ENV APP_PROFILE prod + ENV RUST_LOG info + # run the binary ENTRYPOINT ["./app"] diff --git a/src/util/claim.rs b/src/util/claim.rs index 0eda7fe..38d1c87 100644 --- a/src/util/claim.rs +++ b/src/util/claim.rs @@ -5,7 +5,6 @@ use axum_extra::{ TypedHeader, }; -use async_trait::async_trait; use axum::extract::FromRequestParts; use axum::http::request::Parts; use axum::RequestPartsExt; @@ -64,7 +63,7 @@ impl UserClaims { } } -#[async_trait] +#[async_trait::async_trait] impl FromRequestParts for UserClaims { type Rejection = AppError;