Skip to content

api-server-rest basic build and unit tests #102

api-server-rest basic build and unit tests

api-server-rest basic build and unit tests #102

name: api-server-rest basic build and unit tests
on:
push:
branches:
- "main"
paths:
- 'api-server-rest/**'
- '.github/workflows/api-server-rest-basic.yml'
- 'Cargo.toml'
- 'Cargo.lock'
pull_request:
paths:
- 'api-server-rest/**'
- '.github/workflows/api-server-rest-basic.yml'
- 'Cargo.toml'
- 'Cargo.lock'
create:
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
basic_ci:
if: github.event_name != 'push'
name: Check
defaults:
run:
working-directory: ./api-server-rest
strategy:
fail-fast: false
matrix:
instance:
- ubuntu-24.04
- s390x
rust:
- stable
runs-on: ${{ matrix.instance }}
steps:
- name: Code checkout
uses: actions/checkout@v4
with:
fetch-depth: 1
- name: Install Rust toolchain (${{ matrix.rust }})
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: ${{ matrix.rust }}
override: true
components: rustfmt, clippy
- name: Install protoc
run: |
sudo apt-get update && sudo apt-get install -y protobuf-compiler
- name: Build and install with default features
run: |
mkdir -p ${HOME}/.local/bin
make && make install PREFIX=${HOME}/.local
- name: Musl build with default features
run: |
make LIBC=musl
if: matrix.instance == 'ubuntu-24.04'
- name: Run cargo test
uses: actions-rs/cargo@v1
with:
command: test
args: -p api-server-rest