diff --git a/.forgejo/workflows/build-base.yaml b/.forgejo/workflows/build-base.yaml index b43e9222..e4dcd9bd 100644 --- a/.forgejo/workflows/build-base.yaml +++ b/.forgejo/workflows/build-base.yaml @@ -26,7 +26,7 @@ jobs: steps: - name: Checkout code - uses: https://github.com/actions/checkout@v4 + uses: https://code.forgejo.org/actions/checkout@v4 - name: Generate image tag id: tag diff --git a/.forgejo/workflows/build-grid-rs.yaml b/.forgejo/workflows/build-grid-rs.yaml index 7f194888..157c66e3 100644 --- a/.forgejo/workflows/build-grid-rs.yaml +++ b/.forgejo/workflows/build-grid-rs.yaml @@ -23,7 +23,7 @@ jobs: steps: - name: Checkout code - uses: https://github.com/actions/checkout@v4 + uses: https://code.forgejo.org/actions/checkout@v4 - name: Generate image tag id: tag @@ -33,6 +33,17 @@ jobs: TAG="main-${TIMESTAMP}-${SHORT_SHA}" echo "tag=${TAG}" >> $GITHUB_OUTPUT + - name: Install Rust toolchain + run: | + curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain stable + echo "$HOME/.cargo/bin" >> $GITHUB_PATH + + - name: Run clippy and tests + working-directory: rust/prop_grid_rs + run: | + cargo clippy --all-targets -- -D warnings + cargo test --release + - name: Build and push via Kaniko uses: graham/infra/.forgejo/actions/kaniko-build@main with: diff --git a/.forgejo/workflows/build.yaml b/.forgejo/workflows/build.yaml index a213d5c8..65f60bf3 100644 --- a/.forgejo/workflows/build.yaml +++ b/.forgejo/workflows/build.yaml @@ -20,7 +20,7 @@ jobs: steps: - name: Checkout code - uses: https://github.com/actions/checkout@v4 + uses: https://code.forgejo.org/actions/checkout@v4 - name: Generate image tag id: tag @@ -30,6 +30,21 @@ jobs: TAG="main-${TIMESTAMP}-${SHORT_SHA}" echo "tag=${TAG}" >> $GITHUB_OUTPUT + - name: Verify compilation + run: | + docker run --rm \ + -v ${{ github.workspace }}:/app \ + -w /app \ + -e MIX_ENV=prod \ + docker.io/hexpm/elixir:1.20.1-erlang-29.0.2-debian-trixie-20260518-slim \ + sh -c '\ + mix local.hex --force && \ + mix local.rebar --force && \ + mix deps.get --only prod && \ + mix deps.compile && \ + mix assets.setup && \ + mix compile --warnings-as-errors' + - name: Build and Push via Kaniko uses: graham/infra/.forgejo/actions/kaniko-build@main with: