stratis-storage / ci

To manage CI for various project repos.
0 stars 6 forks source link

We should have a pre-release check script #456

Open mulkieran opened 11 months ago

mulkieran commented 11 months ago

Makefile targets it should run:

It should also run cargo-package to verify packagability. It's possible that we should remove the cargo-package check from the release script, so long as we know it was run before the release. Is it practical to run a packaging test in CI? It seems like we do not run cargo-package anywhere in our GitHub Actions.

We should run both the Makefile targets in the package directory, if possible. As it stands, though, verify-dependency-bounds relies on having a second Makefile in the same directory, so that won't quite work.

mulkieran commented 10 months ago

In libcryptsetup-rs:

> cargo package
> cd target/package/libcryptsetup-rs-<version>
> make -f ../../../Makefile audit  // success
> SET_LOWER_BOUNDS=../../../../ci/dependency_management/set_lower_bounds make -f ../../../Makefile verify-dependency-bound
> cargo update --package=getrandom  --precise=0.2.0
> cargo update --package=is-terminal --precise=0.4.0
> SET_LOWER_BOUNDS=../../../../ci/dependency_management/set_lower_bounds make -f ../../../Makefile verify-dependency-bound // success
> make -f ../../../Makefile audit // success
mulkieran commented 10 months ago

Note that cargo-package willl always fail if a path dependency has a version that is not yet released.