ostree/rust-bindings/rust/.gitlab-ci.yml

75 lines
1.5 KiB
YAML

image: rust:latest
before_script:
- echo deb http://ftp.debian.org/debian stretch-backports main > /etc/apt/sources.list.d/backports.list
- apt-get update
- apt-get install -y -t stretch-backports libostree-dev
stages:
- build
- docs
- publish
libostree-sys:
stage: build
script:
- cargo build --verbose --package libostree-sys
- cargo test --verbose --package libostree-sys
libostree:
stage: build
script:
- cargo build --verbose --package libostree
- cargo test --verbose --package libostree
libostree-sys_nightly:
stage: build
image: rustlang/rust:nightly
script:
- cargo build --verbose --package libostree-sys
- cargo test --verbose --package libostree-sys
allow_failure: true
libostree_nightly:
stage: build
image: rustlang/rust:nightly
script:
- cargo build --verbose --package libostree
- cargo test --verbose --package libostree
allow_failure: true
# docs
docs:
stage: docs
script:
- cd libostree
- cargo doc --verbose --features "dox lgpl-docs"
artifacts:
paths:
- target/doc
# publish
pages:
stage: publish
script:
- cp -r target/doc public
artifacts:
paths:
- public
only:
- master
publish_libostree-sys:
stage: publish
script:
- make pre-package
- cargo publish --verbose --manifest-path libostree-sys/Cargo.toml --allow-dirty --token $CRATES_IO_TOKEN
when: manual
publish_libostree:
stage: publish
script:
- make pre-package
- cargo publish --verbose --manifest-path libostree/Cargo.toml --allow-dirty --token $CRATES_IO_TOKEN
when: manual