ci: update readme (and pipeline)
This commit is contained in:
parent
28c8a3e77a
commit
409527e232
|
|
@ -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
|
||||||
|
|
|
||||||
|
|
@ -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: >-
|
||||||
|
|
|
||||||
|
|
@ -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
|
|
||||||
|
|
|
||||||
|
|
@ -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
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue