Skip to content

CHANGELOG.md: Add entry for PR #26 #98

CHANGELOG.md: Add entry for PR #26

CHANGELOG.md: Add entry for PR #26 #98

Workflow file for this run

---
on:
push:
branches:
- master
pull_request:
jobs:
build-app:
name: Build app
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@v3
with:
submodules: true
- name: Validate gradle wrapper checksum
uses: gradle/wrapper-validation-action@v1
- name: Set up JDK 20
uses: actions/setup-java@v3
with:
distribution: temurin
java-version: 20
cache: gradle
- name: Build and test
# Debug build only since release builds require a signing key
run: ./gradlew --no-daemon build zipDebug -x assembleRelease
build-tool:
name: Build custota-tool
runs-on: ${{ matrix.os }}
env:
CARGO_TERM_COLOR: always
RUSTFLAGS: -C strip=symbols
strategy:
fail-fast: false
matrix:
os: [windows-latest, ubuntu-latest, macos-latest]
steps:
- name: Check out repository
uses: actions/checkout@v3
with:
# For git describe
fetch-depth: 0
- name: Get version
id: get_version
shell: bash
run: |
echo -n 'version=' >> "${GITHUB_OUTPUT}"
git describe --always \
| sed -E "s/^v//g;s/([^-]*-g)/r\1/;s/-/./g" \
>> "${GITHUB_OUTPUT}"
- name: Get Rust LLVM target triple
id: get_target
shell: bash
env:
RUSTC_BOOTSTRAP: '1'
run: |
echo -n 'name=' >> "${GITHUB_OUTPUT}"
rustc -Z unstable-options --print target-spec-json \
| jq -r '."llvm-target"' \
>> "${GITHUB_OUTPUT}"
- name: Cache Rust dependencies
uses: Swatinem/rust-cache@v2
with:
workspaces: custota-tool
- name: Clippy
working-directory: custota-tool
run: cargo clippy --release
- name: Formatting
working-directory: custota-tool
run: cargo fmt -- --check
- name: Build
working-directory: custota-tool
run: cargo build --release
- name: Archive artifacts
uses: actions/upload-artifact@v3
with:
name: custota-tool-${{ steps.get_version.outputs.version }}-${{ steps.get_target.outputs.name }}
path: |
custota-tool/target/release/custota-tool
custota-tool/target/release/custota-tool.exe