mirror of
https://github.com/timvisee/ffsend.git
synced 2025-10-03 09:39:15 +02:00
Start implementing GitLab CI
This commit is contained in:
parent
d443e17f6e
commit
8e93b9ebb4
3 changed files with 63 additions and 3 deletions
60
.gitlab-ci.yml
Normal file
60
.gitlab-ci.yml
Normal file
|
@ -0,0 +1,60 @@
|
||||||
|
image: "rust:slim"
|
||||||
|
|
||||||
|
stages:
|
||||||
|
- check
|
||||||
|
- test
|
||||||
|
- integration
|
||||||
|
- release
|
||||||
|
|
||||||
|
variables:
|
||||||
|
RUST_VERSION: stable
|
||||||
|
|
||||||
|
# Cargo artifacts caching per Rust version
|
||||||
|
cache:
|
||||||
|
key: "$RUST_VERSION"
|
||||||
|
paths:
|
||||||
|
- /usr/local/rustup/
|
||||||
|
- /usr/local/cargo/
|
||||||
|
- target/
|
||||||
|
|
||||||
|
# Install compiler and OpenSSL dependencies
|
||||||
|
before_script:
|
||||||
|
- apt-get update -y
|
||||||
|
- apt-get install -y --no-install-recommends build-essential pkg-config libssl-dev
|
||||||
|
- rustup install $RUST_VERSION && rustup default $RUST_VERSION
|
||||||
|
- rustc --version && cargo --version
|
||||||
|
|
||||||
|
# Check on stable, beta and nightly
|
||||||
|
.check-base: &check-base
|
||||||
|
stage: check
|
||||||
|
script:
|
||||||
|
- cargo check --all --verbose
|
||||||
|
- cargo check --no-default-features --all --verbose
|
||||||
|
- cargo check --features no-color --all --verbose
|
||||||
|
check-stable:
|
||||||
|
<<: *check-base
|
||||||
|
variables:
|
||||||
|
RUST_VERSION: stable
|
||||||
|
check-beta:
|
||||||
|
<<: *check-base
|
||||||
|
variables:
|
||||||
|
RUST_VERSION: beta
|
||||||
|
check-nightly:
|
||||||
|
<<: *check-base
|
||||||
|
variables:
|
||||||
|
RUST_VERSION: nightly
|
||||||
|
|
||||||
|
# Run unit tests
|
||||||
|
test-unit:
|
||||||
|
stage: test
|
||||||
|
script:
|
||||||
|
- cargo test --all --verbose
|
||||||
|
|
||||||
|
# Run integration test with the public Send service
|
||||||
|
integration-send:
|
||||||
|
stage: integration
|
||||||
|
script:
|
||||||
|
- cargo build
|
||||||
|
- head -c 1M </dev/urandom >testfile
|
||||||
|
- cargo run -- upload testfile -n testfile.bin -a -d 10 -p secret -I
|
||||||
|
# TODO: download this file, compare checksums
|
|
@ -4,8 +4,8 @@ version = "0.0.7"
|
||||||
authors = ["Tim Visee <timvisee@gmail.com>"]
|
authors = ["Tim Visee <timvisee@gmail.com>"]
|
||||||
license = "GPL-3.0"
|
license = "GPL-3.0"
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
homepage = "https://github.com/timvisee/ffsend"
|
homepage = "https://gitlab.com/timvisee/ffsend"
|
||||||
repository = "https://github.com/timvisee/ffsend"
|
repository = "https://gitlab.com/timvisee/ffsend"
|
||||||
description = """\
|
description = """\
|
||||||
Easily and securely share files from the command line.\n\
|
Easily and securely share files from the command line.\n\
|
||||||
A fully featured Firefox Send client.\
|
A fully featured Firefox Send client.\
|
||||||
|
|
|
@ -20,7 +20,7 @@ Files are shared using the [Send][send] service and may be up
|
||||||
to 2GB. Others are able to download these files with this tool, or through
|
to 2GB. Others are able to download these files with this tool, or through
|
||||||
their webbrowser.
|
their webbrowser.
|
||||||
|
|
||||||
[![ffsend usage demo][usage-demo-svg]][usage-demo-asciinema]
|
[![ffsend usage demo][usage-demo-svg]][usage-demo-asciinema]
|
||||||
_No demo visible here? View it on [asciinema][usage-demo-asciinema]._
|
_No demo visible here? View it on [asciinema][usage-demo-asciinema]._
|
||||||
|
|
||||||
All files are always encrypted on the client, and secrets are never shared with
|
All files are always encrypted on the client, and secrets are never shared with
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue