ci: update readme (and pipeline)

This commit is contained in:
Felix Krull 2020-07-24 14:23:24 +02:00 committed by Colin Walters
parent 28c8a3e77a
commit 409527e232
4 changed files with 12 additions and 16 deletions

View File

@ -9,9 +9,8 @@
paths: paths:
- cargo/ - cargo/
- sccache/ - sccache/
before_script:
- curl -L "${SCCACHE_URL}" | tar -C /usr/bin/ -xz --wildcards --strip-components=1 '*/sccache'
# config with sccache based on Fedora Rawhide, i.e. very recent libostree
.fedora-ostree-devel: .fedora-ostree-devel:
image: fedora:rawhide image: fedora:rawhide
extends: .sccache extends: .sccache
@ -19,6 +18,7 @@
- dnf install -y cargo rust ostree-devel - dnf install -y cargo rust ostree-devel
- curl -L "${SCCACHE_URL}" | tar -C /usr/bin/ -xz --wildcards --strip-components=1 '*/sccache' - curl -L "${SCCACHE_URL}" | tar -C /usr/bin/ -xz --wildcards --strip-components=1 '*/sccache'
# config with sccache based on Rust image, i.e. older libostree but shorter setup and rustup access
.rust-ostree-devel: .rust-ostree-devel:
image: rust image: rust
extends: .sccache extends: .sccache

View File

@ -55,7 +55,7 @@ build_aarch64:
# docs # docs
pages: pages:
stage: publish stage: publish
extends: .sccache extends: .rust-ostree-devel
image: rustlang/rust:nightly image: rustlang/rust:nightly
variables: variables:
RUSTDOCFLAGS: >- RUSTDOCFLAGS: >-

View File

@ -48,12 +48,3 @@ gir-files:
gir-files/OSTree-1.0.gir: gir-files/OSTree-1.0.gir:
echo Best to build libostree with all features and use that echo Best to build libostree with all features and use that
exit 1 exit 1
# CI config generation
ci-build-stages:
@for tgt in `cargo read-manifest | jq -jr '.features | keys | map(select(. != "dox")) | map(. + " ") | .[]'`; do \
echo "build_$$tgt:"; \
echo " stage: build"; \
echo " script: cargo test --verbose --workspace --features $$tgt"; \
done

View File

@ -20,12 +20,17 @@ bindings. These will most likely be added on an as-needed basis.
### Requirements ### Requirements
The `ostree` crate requires libostree and the libostree development headers. The `ostree` crate requires libostree and the libostree development headers.
On Debian/Ubuntu, they can be installed with:
On Debian and Ubuntu:
```ShellSession ```ShellSession
$ sudo apt-get install libostree-1 libostree-dev $ sudo apt-get install libostree-1 libostree-dev
``` ```
On Fedora and CentOS:
```ShellSession
$ sudo dnf install ostree-libs ostree-devel
```
### Installing ### Installing
To use the crate, add it to your `Cargo.toml`: To use the crate, add it to your `Cargo.toml`:
@ -63,7 +68,7 @@ $ make update-gir-files
``` ```
The `OSTree-1.0.gir` file needs to be updated manually, either from a recent The `OSTree-1.0.gir` file needs to be updated manually, either from a recent
Debian package (`libostree-dev`) or by building from source. distribution package or by building from source.
### Documentation ### Documentation
The libostree API documentation is not included in the code by default because The libostree API documentation is not included in the code by default because
@ -85,11 +90,11 @@ CI includes the LGPL docs in the documentation build.
### Updating ostree ### Updating ostree
* update the bundled `gir/OSTree-1.0.gir` file * update the bundled `gir/OSTree-1.0.gir` file
* `make gir` to regenerate the generated code * `make gir` to regenerate the generated code
* in `.gitlab-ci.yml`, update the "all feature levels" section with the output of `make ci-build-stages` * update the example feature level in `README.md` in case of a new feature level
### Releases ### Releases
Releases can be done using the publish_* jobs in the pipeline. There's no Releases can be done using the publish_* jobs in the pipeline. There's no
versioning helper yet so version bumps need to be done manually. versioning helper so version bumps need to be done manually.
The version needs to be changed in the following places (if applicable): The version needs to be changed in the following places (if applicable):
* in `sys/Cargo.toml` for the -sys crate version * in `sys/Cargo.toml` for the -sys crate version