Add messages for config changes (#3803)
* Automatically label Wasmtime `Config` object changes * Add the "Label Messager" github action This allows us to have custom messages left in comments on issues and pull requests when they get labeled with a specific label. * Add a message for `wasmtime:config`-labeled pull requests * CI: Consolidate issue/PR triage workflows
This commit is contained in:
3
.github/label-messager.json
vendored
Normal file
3
.github/label-messager.json
vendored
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"wasmtime:config": ".github/label-messager/wasmtime-config.md"
|
||||||
|
}
|
||||||
51
.github/label-messager/wasmtime-config.md
vendored
Normal file
51
.github/label-messager/wasmtime-config.md
vendored
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
It looks like you are changing Wasmtime's configuration options. Make sure to
|
||||||
|
complete this check list:
|
||||||
|
|
||||||
|
* [ ] If you added a new `Config` method, you wrote extensive documentation for
|
||||||
|
it.
|
||||||
|
|
||||||
|
<details>
|
||||||
|
|
||||||
|
Our documentation should be of the following form:
|
||||||
|
|
||||||
|
```text
|
||||||
|
Short, simple summary sentence.
|
||||||
|
|
||||||
|
More details. These details can be multiple paragraphs. There should be
|
||||||
|
information about not just the method, but its parameters and results as
|
||||||
|
well.
|
||||||
|
|
||||||
|
Is this method fallible? If so, when can it return an error?
|
||||||
|
|
||||||
|
Can this method panic? If so, when does it panic?
|
||||||
|
|
||||||
|
# Example
|
||||||
|
|
||||||
|
Optional example here.
|
||||||
|
```
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
* [ ] If you added a new `Config` method, or modified an existing one, you
|
||||||
|
ensured that this configuration is exercised by the fuzz targets.
|
||||||
|
|
||||||
|
<details>
|
||||||
|
|
||||||
|
For example, if you expose a new strategy for allocating the next instance
|
||||||
|
slot inside the pooling allocator, you should ensure that at least one of our
|
||||||
|
fuzz targets exercises that new strategy.
|
||||||
|
|
||||||
|
Often, all that is required of you is to ensure that there is a knob for this
|
||||||
|
configuration option in [`wasmtime_fuzzing::Config`][fuzzing-config] (or one
|
||||||
|
of its nested `struct`s).
|
||||||
|
|
||||||
|
Rarely, this may require authoring a new fuzz target to specifically test this
|
||||||
|
configuration. See [our docs on fuzzing][fuzzing-docs] for more details.
|
||||||
|
|
||||||
|
</details>
|
||||||
|
|
||||||
|
* [ ] If you are enabling a configuration option by default, make sure that it
|
||||||
|
has been fuzzed for at least two weeks before turning it on by default.
|
||||||
|
|
||||||
|
[fuzzing-config]: https://github.com/bytecodealliance/wasmtime/blob/ca0e8d0a1d8cefc0496dba2f77a670571d8fdcab/crates/fuzzing/src/generators.rs#L182-L194
|
||||||
|
[fuzzing-docs]: https://docs.wasmtime.dev/contributing-fuzzing.html
|
||||||
4
.github/labeler.yml
vendored
4
.github/labeler.yml
vendored
@@ -66,6 +66,10 @@
|
|||||||
"wasmtime:c-api":
|
"wasmtime:c-api":
|
||||||
- "crates/c-api/**"
|
- "crates/c-api/**"
|
||||||
|
|
||||||
|
"wasmtime:config":
|
||||||
|
- "crates/wasmtime/src/config.rs"
|
||||||
|
- "crates/wasmtime/src/config/**"
|
||||||
|
|
||||||
"wasmtime:docs":
|
"wasmtime:docs":
|
||||||
- "*.md"
|
- "*.md"
|
||||||
- "docs/**"
|
- "docs/**"
|
||||||
|
|||||||
13
.github/workflows/labeler.yml
vendored
13
.github/workflows/labeler.yml
vendored
@@ -1,13 +0,0 @@
|
|||||||
name: "Pull Request Labeler"
|
|
||||||
on:
|
|
||||||
schedule:
|
|
||||||
# Run every 5 minutes.
|
|
||||||
- cron: '*/5 * * * *'
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
triage:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: bytecodealliance/labeler@schedule-fork
|
|
||||||
with:
|
|
||||||
repo-token: "${{ secrets.GITHUB_TOKEN }}"
|
|
||||||
17
.github/workflows/subscribe-to-label.yml
vendored
17
.github/workflows/subscribe-to-label.yml
vendored
@@ -1,17 +0,0 @@
|
|||||||
name: "Subscribe to Label"
|
|
||||||
on:
|
|
||||||
issues:
|
|
||||||
types: ["labeled"]
|
|
||||||
schedule:
|
|
||||||
# Run pull request triage every 5 minutes. Ideally, this would be on
|
|
||||||
# "labeled" types of pull request events, but that doesn't work if the pull
|
|
||||||
# request is from another fork. For example, see
|
|
||||||
# https://github.com/actions/labeler/issues/12
|
|
||||||
- cron: '*/5 * * * *'
|
|
||||||
jobs:
|
|
||||||
triage:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- uses: bytecodealliance/subscribe-to-label-action@v1
|
|
||||||
with:
|
|
||||||
repo-token: "${{ secrets.GITHUB_TOKEN }}"
|
|
||||||
34
.github/workflows/triage.yml
vendored
Normal file
34
.github/workflows/triage.yml
vendored
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
name: "Issue / PR Triage"
|
||||||
|
|
||||||
|
on:
|
||||||
|
issues:
|
||||||
|
types: ["labeled"]
|
||||||
|
schedule:
|
||||||
|
# Run pull request triage every 5 minutes. Ideally, this would be on
|
||||||
|
# "labeled" types of pull request events, but that doesn't work if the pull
|
||||||
|
# request is from another fork. For example, see
|
||||||
|
# https://github.com/actions/labeler/issues/12
|
||||||
|
- cron: '*/5 * * * *'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
triage:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
|
||||||
|
# Automatically label PRs that touch certain directories with certain
|
||||||
|
# labels.
|
||||||
|
- uses: bytecodealliance/labeler@schedule-fork
|
||||||
|
with:
|
||||||
|
repo-token: "${{ secrets.GITHUB_TOKEN }}"
|
||||||
|
if: ${{ github.event_name == "schedule" }}
|
||||||
|
|
||||||
|
# @-mention people who are subscribed to a label when an issue/PR is given
|
||||||
|
# that label.
|
||||||
|
- uses: bytecodealliance/subscribe-to-label-action@v1
|
||||||
|
with:
|
||||||
|
repo-token: "${{ secrets.GITHUB_TOKEN }}"
|
||||||
|
|
||||||
|
# Leave pre-determined comments on issues/PRs that are given a certain label.
|
||||||
|
- uses: bytecodealliance/label-messager-action@v1
|
||||||
|
with:
|
||||||
|
repo-token: "${{ secrets.GITHUB_TOKEN }}"
|
||||||
Reference in New Issue
Block a user