ci: create gitlab ci
This commit is contained in:
parent
be45796893
commit
0ef008d5c5
|
@ -0,0 +1,46 @@
|
|||
stages:
|
||||
- format
|
||||
- build_and_test
|
||||
- quality
|
||||
|
||||
.env:
|
||||
image: axiomteam/gecko-ci:v0.0.5
|
||||
tags:
|
||||
- redshift
|
||||
before_script:
|
||||
- rustup show
|
||||
- rustc --version && cargo --version
|
||||
|
||||
format:
|
||||
extends: .env
|
||||
stage: format
|
||||
script:
|
||||
- cargo fmt -- --version
|
||||
- cargo fmt -- --check
|
||||
- flutter format --set-exit-if-changed lib packages/dubp_rs/lib/dubp.dart
|
||||
|
||||
build_and_test:
|
||||
extends: .env
|
||||
stage: build_and_test
|
||||
tags:
|
||||
- redshift
|
||||
script:
|
||||
- RUSTFLAGS="-D warnings" cargo make
|
||||
- cd packages/dubp_rs && flutter pub get && cd ../..
|
||||
- flutter analyze
|
||||
- cargo test
|
||||
# - flutter test
|
||||
|
||||
lint:
|
||||
extends: .env
|
||||
stage: quality
|
||||
script:
|
||||
- cargo clippy -- -V
|
||||
- cargo clippy --all --tests -- -D warnings --verbose
|
||||
|
||||
audit_dependencies:
|
||||
extends: .env
|
||||
stage: quality
|
||||
script:
|
||||
- cargo deny -V
|
||||
- cargo deny check
|
|
@ -0,0 +1,50 @@
|
|||
[bans]
|
||||
multiple-versions = "warn"
|
||||
deny = [
|
||||
# color-backtrace is nice but brings in too many dependencies and that are often outdated, so not worth it for us.
|
||||
{ name = "color-backtrace" },
|
||||
|
||||
# deprecated
|
||||
{ name = "quickersort" },
|
||||
|
||||
# term is not fully maintained, and termcolor is replacing it
|
||||
{ name = "term" },
|
||||
]
|
||||
skip-tree = [
|
||||
{ name = "winapi", version = "<= 0.3" },
|
||||
]
|
||||
|
||||
[licenses]
|
||||
unlicensed = "deny"
|
||||
# We want really high confidence when inferring licenses from text
|
||||
confidence-threshold = 0.92
|
||||
allow = [
|
||||
"AGPL-3.0",
|
||||
"Apache-2.0",
|
||||
"BSD-2-Clause",
|
||||
"BSD-3-Clause",
|
||||
"CC0-1.0",
|
||||
"ISC",
|
||||
"MIT",
|
||||
"MPL-2.0",
|
||||
"OpenSSL",
|
||||
"Zlib"
|
||||
]
|
||||
|
||||
[[licenses.clarify]]
|
||||
name = "ring"
|
||||
# SPDX considers OpenSSL to encompass both the OpenSSL and SSLeay licenses
|
||||
# https://spdx.org/licenses/OpenSSL.html
|
||||
# ISC - Both BoringSSL and ring use this for their new files
|
||||
# MIT - "Files in third_party/ have their own licenses, as described therein. The MIT
|
||||
# license, for third_party/fiat, which, unlike other third_party directories, is
|
||||
# compiled into non-test libraries, is included below."
|
||||
# OpenSSL - Obviously
|
||||
expression = "ISC AND MIT AND OpenSSL"
|
||||
license-files = [
|
||||
{ path = "LICENSE", hash = 0xbd0eed23 },
|
||||
]
|
||||
|
||||
[sources]
|
||||
unknown-registry = "deny"
|
||||
unknown-git = "deny"
|
|
@ -2,6 +2,7 @@
|
|||
name = "dubp_rs"
|
||||
version = "0.1.0"
|
||||
authors = ["Éloïs SANCHEZ <elois@duniter.org>"]
|
||||
license = "AGPL-3.0"
|
||||
edition = "2018"
|
||||
|
||||
[lib]
|
||||
|
|
Loading…
Reference in New Issue