Skip to content

chore(deps): bump serde from 1.0.214 to 1.0.215 #132

chore(deps): bump serde from 1.0.214 to 1.0.215

chore(deps): bump serde from 1.0.214 to 1.0.215 #132

Workflow file for this run

name: Rust CI
on:
pull_request:
types: [closed]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
check_changes:
runs-on: ubuntu-latest
# exec only when PR is merged
if: github.event.pull_request.merged == true
outputs:
rust_changed: ${{ steps.check_rust_changes.outputs.rust_changed }}
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Check for Rust file changes
id: check_rust_changes
run: |
git diff --name-only ${{ github.event.pull_request.base.sha }} ${{ github.event.pull_request.head.sha }} > changes.txt
if grep -qE '\.rs$|Cargo\.toml' changes.txt; then
echo "rust_changed=true" >> $GITHUB_OUTPUT
else
echo "rust_changed=false" >> $GITHUB_OUTPUT
fi
rust_ci:
needs: check_changes
if: needs.check_changes.outputs.rust_changed == 'true'
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
strategy:
matrix:
target: [x86_64-unknown-linux-gnu, x86_64-unknown-linux-musl]
steps:
- uses: actions/checkout@v4
- name: Set up Rust
uses: actions-rs/toolchain@v1
with:
toolchain: 1.82.0
profile: minimal
override: true
target: ${{ matrix.target }}
- name: Install cross
run: cargo install cross
- name: Build with cross
run: cross build --target ${{ matrix.target }} --release
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Log in to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push Docker image
uses: docker/build-push-action@v5
with:
context: .
push: true
tags: ghcr.io/${{ github.repository }}:latest-${{ matrix.target }}
file: docker/${{ matrix.target }}/Dockerfile
no_changes:
needs: check_changes
if: needs.check_changes.outputs.rust_changed == 'false'
runs-on: ubuntu-latest
steps:
- name: No Rust changes
run: echo "No changes to Rust files or Cargo.toml, skipping CI."