Add build scripts

This patch adds three build scripts for the sr.ht CI:
- archlinux.yml is the main build script.  It builds the project using
  the latest stable release from rustup and executes the tests, clippy
  and rustfmt.  The build also runs the reuse tool to check compliance
  with the reuse specification and verifies that the last commit is
  signed by me.
- archlinux-msrv.yml builds and tests the project on the MSRV, currently
  Rust 1.40.0.
This commit is contained in:
Robin Krahl 2020-07-19 17:03:54 +02:00
parent c16d7f7d60
commit 5a6a8f43ce
2 changed files with 55 additions and 0 deletions

View File

@ -0,0 +1,19 @@
# Copyright (C) 2020 Robin Krahl <robin.krahl@ireas.org>
# SPDX-License-Identifier: CC0-1.0
image: archlinux
packages:
- rustup
sources:
- https://git.sr.ht/~ireas/rusty-man
tasks:
- setup: |
rustup set profile minimal
rustup default 1.40.0
- version: |
rustc -V
- build: |
cd rusty-man
cargo build --release
- test: |
cd rusty-man
cargo test

36
.builds/archlinux.yml Normal file
View File

@ -0,0 +1,36 @@
# Copyright (C) 2020 Robin Krahl <robin.krahl@ireas.org>
# SPDX-License-Identifier: CC0-1.0
image: archlinux
packages:
- gnupg
- reuse
- rustup
sources:
- https://git.sr.ht/~ireas/rusty-man
tasks:
- setup: |
rustup set profile minimal
rustup default stable
rustup component add rustfmt
rustup component add clippy
- version: |
rustc -V
- verify: |
cd rusty-man
curl -s "https://pgp.ireas.org/0x6D533958F070C57C.txt" | gpg --import
git verify-commit HEAD
- reuse: |
cd rusty-man
reuse lint
- build: |
cd rusty-man
cargo build --release
- test: |
cd rusty-man
cargo test
- clippy: |
cd rusty-man
cargo clippy -- -D warnings
- format: |
cd rusty-man
cargo fmt -- --check