Releasing¶
Publishing to Crates.io¶
Instructions for uploading to the crate repository at crates.io are at doc.crates.io/crates-io.html. First login to the site using:
cargo login <token>
Tokens can be found from crates.io/me. To make a release, first clean and build the package:
git stash
cargo clean
cargo package
Examine the built package under target/package/cargo-sphinx-<version>
.
And when happy to publish:
cargo publish
And check out the new update at crates.io/crates/cargo-sphinx.
Publishing the Documentation¶
Project documentation is published to woofwoofinc.github.io/cargo-sphinx using GitHub Pages.
Build and publish the documentation as described in Documentation. The
GitHub configuration for this project is to serve documentation from the
gh-pages
branch.
cargo sphinx --push
Publishing from the container fails for missing GitHub credentials. In this case
it is possible to run the publication command in the container interactively and
complete it on the host machine. Compile and generate the Git repository to push
in docs/_build/html
by running the following in the container.
cargo sphinx --push
Then on the host, change to docs/_build/html
which is now a new Git
repository with the documentation HTML committed on master. Push this to origin
by specifying the remote.
cd docs/_build/html
git push -f git@github.com:woofwoofinc/cargo-sphinx.git master:gh-pages