Automate more of Wasmtime's release process (#3422)
* Automate more of Wasmtime's release process This change revamps the release process for Wasmtime and intends to make it nearly 100% automated for major release and hopefully still pretty simple for patch releases. New workflows are introduced as part of this commit: * Once a month a PR is created with major version bumps * Specifically hinted commit messages to the `main` branch will get tagged and pushed to the main repository. * On tags we'll now not only build releases after running CI but additionally crates will be published to crates.io. In conjunction with other changes this means that the release process for a new major version of Wasmtime is simply merging a PR. Patch releases will involve running some steps locally but most of the nitty-gritty should be simply merging the PR that's generated. * Use an anchor in a regex
This commit is contained in:
24
.github/workflows/publish-to-cratesio.yml
vendored
Normal file
24
.github/workflows/publish-to-cratesio.yml
vendored
Normal file
@@ -0,0 +1,24 @@
|
||||
# The purpose of this workflow is to publish the wasmtime workspace of crates
|
||||
# whenever a wasmtime tag is created. This baiscally boils down to running
|
||||
# `scripts/publish.rs` at the right time.
|
||||
|
||||
name: "Publish to crates.io"
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- 'v*'
|
||||
|
||||
jobs:
|
||||
publish:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
submodules: true
|
||||
- run: rustup update stable && rustup default stable
|
||||
- run: |
|
||||
rustc scripts/publish.rs
|
||||
./publish publish
|
||||
env:
|
||||
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
|
||||
Reference in New Issue
Block a user