Handle backticks in try job patterns
This commit is contained in:
parent
06d86cd60c
commit
dfef1a7b5a
2 changed files with 25 additions and 13 deletions
|
@ -46,13 +46,20 @@ impl GitHubContext {
|
|||
}
|
||||
}
|
||||
|
||||
/// Tries to parse patterns of CI jobs that should be executed in the form of
|
||||
/// Tries to parse patterns of CI jobs that should be executed
|
||||
/// from the commit message of the passed GitHub context
|
||||
///
|
||||
/// They can be specified in the form of
|
||||
/// try-job: <job-pattern>
|
||||
/// from the commit message of the passed GitHub context.
|
||||
/// or
|
||||
/// try-job: `<job-pattern>`
|
||||
/// (to avoid GitHub rendering the glob patterns as Markdown)
|
||||
fn get_try_job_patterns(&self) -> Vec<String> {
|
||||
if let Some(ref msg) = self.commit_message {
|
||||
msg.lines()
|
||||
.filter_map(|line| line.trim().strip_prefix("try-job: "))
|
||||
// Strip backticks if present
|
||||
.map(|l| l.trim_matches('`'))
|
||||
.map(|l| l.trim().to_string())
|
||||
.collect()
|
||||
} else {
|
||||
|
|
|
@ -133,29 +133,34 @@ There are several use-cases for try builds:
|
|||
Again, a working compiler build is needed for this, which can be produced by
|
||||
the [dist-x86_64-linux] CI job.
|
||||
- Run a specific CI job (e.g. Windows tests) on a PR, to quickly test if it
|
||||
passes the test suite executed by that job. You can select which CI jobs will
|
||||
be executed in the try build by adding lines containing `try-job:
|
||||
<job patter>` to the PR description. All such specified jobs will be executed
|
||||
in the try build once the `@bors try` command is used on the PR. If no try
|
||||
jobs are specified in this way, the jobs defined in the `try` section of
|
||||
[`jobs.yml`] will be executed by default. Each pattern can either be an exact
|
||||
name of a job or a glob pattern that matches multiple jobs, for example
|
||||
`*msvc*` or `*-alt`. You can start at most 20 jobs in a single try build.
|
||||
passes the test suite executed by that job.
|
||||
|
||||
You can select which CI jobs will
|
||||
be executed in the try build by adding lines containing `try-job:
|
||||
<job pattern>` to the PR description. All such specified jobs will be executed
|
||||
in the try build once the `@bors try` command is used on the PR. If no try
|
||||
jobs are specified in this way, the jobs defined in the `try` section of
|
||||
[`jobs.yml`] will be executed by default.
|
||||
|
||||
Each pattern can either be an exact name of a job or a glob pattern that matches multiple jobs,
|
||||
for example `*msvc*` or `*-alt`. You can start at most 20 jobs in a single try build. When using
|
||||
glob patterns, you might want to wrap them in backticks (`` ` ``) to avoid GitHub rendering
|
||||
the pattern as Markdown.
|
||||
|
||||
> **Using `try-job` PR description directives**
|
||||
>
|
||||
> 1. Identify which set of try-jobs you would like to exercise. You can
|
||||
> find the name of the CI jobs in [`jobs.yml`].
|
||||
>
|
||||
> 2. Amend PR description to include (usually at the end of the PR description)
|
||||
> e.g.
|
||||
> 2. Amend PR description to include a set of patterns (usually at the end
|
||||
> of the PR description), for example:
|
||||
>
|
||||
> ```text
|
||||
> This PR fixes #123456.
|
||||
>
|
||||
> try-job: x86_64-msvc
|
||||
> try-job: test-various
|
||||
> try-job: *-alt
|
||||
> try-job: `*-alt`
|
||||
> ```
|
||||
>
|
||||
> Each `try-job` pattern must be on its own line.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue