ci: use github actions
This commit is contained in:
parent
78e4465d79
commit
e2ffc4f183
4 changed files with 91 additions and 78 deletions
45
.github/workflows/ci.yml
vendored
Normal file
45
.github/workflows/ci.yml
vendored
Normal file
|
|
@ -0,0 +1,45 @@
|
||||||
|
name: CI
|
||||||
|
|
||||||
|
on:
|
||||||
|
pull_request:
|
||||||
|
push:
|
||||||
|
branches: [main]
|
||||||
|
|
||||||
|
env:
|
||||||
|
RUST_BACKTRACE: 1
|
||||||
|
CARGO_INCREMENTAL: 0
|
||||||
|
RUSTFLAGS: "-Cdebuginfo=0 --deny=warnings"
|
||||||
|
RUSTDOCFLAGS: "--deny=warnings"
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
fmt:
|
||||||
|
name: Check Formatting
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
- uses: hecrj/setup-rust-action@v1
|
||||||
|
with:
|
||||||
|
rust-version: nightly
|
||||||
|
components: rustfmt
|
||||||
|
- name: Check Formatting
|
||||||
|
run: cargo +nightly fmt --all -- --check
|
||||||
|
|
||||||
|
tests:
|
||||||
|
name: Tests
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
rust_version: ["1.65", stable, nightly]
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- uses: hecrj/setup-rust-action@v1
|
||||||
|
with:
|
||||||
|
rust-version: ${{ matrix.rust_version }}
|
||||||
|
|
||||||
|
- name: Check documentation
|
||||||
|
run: cargo doc --no-deps --document-private-items
|
||||||
|
|
||||||
|
- name: Run tests
|
||||||
|
run: cargo test --verbose
|
||||||
45
.github/workflows/docs.yml
vendored
Normal file
45
.github/workflows/docs.yml
vendored
Normal file
|
|
@ -0,0 +1,45 @@
|
||||||
|
name: Deploy Docs to GitHub Pages
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- master
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
doc:
|
||||||
|
name: Documentation on Github Pages
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout sources
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- name: Cargo cache
|
||||||
|
uses: actions/cache@v1
|
||||||
|
with:
|
||||||
|
path: ~/.cargo
|
||||||
|
key: cargo-stable
|
||||||
|
|
||||||
|
- name: Rust toolchain
|
||||||
|
uses: actions-rs/toolchain@v1
|
||||||
|
with:
|
||||||
|
toolchain: stable
|
||||||
|
override: true
|
||||||
|
|
||||||
|
- name: Install system dependencies
|
||||||
|
run: sudo apt-get install libxkbcommon-dev libwayland-dev
|
||||||
|
|
||||||
|
- name: Build Documentation
|
||||||
|
uses: actions-rs/cargo@v1
|
||||||
|
with:
|
||||||
|
command: doc
|
||||||
|
args: --no-deps
|
||||||
|
|
||||||
|
- name: Setup index
|
||||||
|
run: cp ./doc_index.html ./target/doc/index.html
|
||||||
|
|
||||||
|
- name: Deploy
|
||||||
|
uses: peaceiris/actions-gh-pages@v3
|
||||||
|
with:
|
||||||
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
publish_dir: ./target/doc
|
||||||
78
.travis.yml
78
.travis.yml
|
|
@ -1,78 +0,0 @@
|
||||||
language: rust
|
|
||||||
|
|
||||||
# only cache cargo subcommand binaries and wayland libs .so
|
|
||||||
# the build artifacts take a lot of space and are slower to
|
|
||||||
# cache than to actually rebuild anyway...
|
|
||||||
# We need to cache the whole .cargo directory to keep the
|
|
||||||
# .crates.toml file.
|
|
||||||
cache:
|
|
||||||
directories:
|
|
||||||
- /home/travis/.cargo
|
|
||||||
# But don't cache the cargo registry
|
|
||||||
before_cache:
|
|
||||||
- rm -rf /home/travis/.cargo/registry
|
|
||||||
|
|
||||||
dist: trusty
|
|
||||||
|
|
||||||
sudo: required
|
|
||||||
|
|
||||||
rust:
|
|
||||||
- stable
|
|
||||||
- beta
|
|
||||||
- nightly
|
|
||||||
|
|
||||||
matrix:
|
|
||||||
allow_failures:
|
|
||||||
- rust: nightly
|
|
||||||
include:
|
|
||||||
- rust: stable
|
|
||||||
env: BUILD_FMT=1
|
|
||||||
- rust: stable
|
|
||||||
env: BUILD_DOC=1
|
|
||||||
|
|
||||||
branches:
|
|
||||||
only:
|
|
||||||
- master
|
|
||||||
|
|
||||||
before_script:
|
|
||||||
- cargo fetch
|
|
||||||
- |
|
|
||||||
if [ -n "$BUILD_FMT" ]; then
|
|
||||||
rustup component add rustfmt-preview
|
|
||||||
elif [ -n "$BUILD_DOC" ]; then
|
|
||||||
echo "Building doc, nothing to install..."
|
|
||||||
fi
|
|
||||||
os:
|
|
||||||
- linux
|
|
||||||
|
|
||||||
script:
|
|
||||||
- |
|
|
||||||
if [ -n "$BUILD_FMT" ]; then
|
|
||||||
cargo fmt -- --check
|
|
||||||
elif [ -n "$BUILD_DOC" ]; then
|
|
||||||
cargo doc --no-deps --all-features
|
|
||||||
else
|
|
||||||
cargo check
|
|
||||||
fi
|
|
||||||
after_success:
|
|
||||||
- |
|
|
||||||
if [ -n "$BUILD_DOC" ]; then
|
|
||||||
cp ./doc_index.html ./target/doc/index.html
|
|
||||||
fi
|
|
||||||
deploy:
|
|
||||||
provider: pages
|
|
||||||
skip_cleanup: true
|
|
||||||
github_token: $GITHUB_TOKEN
|
|
||||||
local_dir: "target/doc"
|
|
||||||
on:
|
|
||||||
branch: master
|
|
||||||
rust: stable
|
|
||||||
condition: $BUILD_DOC = 1
|
|
||||||
|
|
||||||
notifications:
|
|
||||||
webhooks:
|
|
||||||
urls:
|
|
||||||
- "https://scalar.vector.im/api/neb/services/hooks/dHJhdmlzLWNpLyU0MGxldmFucyUzQXNhZmFyYWRlZy5uZXQvJTIxRkt4aGprSUNwakJWelZlQ2RGJTNBc2FmYXJhZGVnLm5ldA"
|
|
||||||
on_success: change
|
|
||||||
on_failure: always
|
|
||||||
on_start: never
|
|
||||||
|
|
@ -8,6 +8,7 @@ repository = "https://github.com/smithay/smithay-clipboard"
|
||||||
documentation = "https://smithay.github.io/smithay-clipboard"
|
documentation = "https://smithay.github.io/smithay-clipboard"
|
||||||
license = "MIT"
|
license = "MIT"
|
||||||
keywords = ["clipboard", "wayland"]
|
keywords = ["clipboard", "wayland"]
|
||||||
|
rust-version = "1.65.0"
|
||||||
|
|
||||||
[dependencies]
|
[dependencies]
|
||||||
sctk = { package = "smithay-client-toolkit", version = "0.16", default-features = false }
|
sctk = { package = "smithay-client-toolkit", version = "0.16", default-features = false }
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue