You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
|`workflow`| Required | String | The ID or name of the workflow dispatch.|
370
-
|`owner`| Optional | String | By default, the value of `repo.owner` context variable. The account owner of the repository. Case insensitive. |
371
-
|`repo`| Optional | String | By default, the value of `repo.name` context variable. The name of the repository without the `.git` extension. Case insensitive. |
372
-
|`ref`| Optional | String | By default, the value of `branch.name` context variable. The account owner of the repository. Case insensitive.|
369
+
|`workflow`| Required | String | The ID or the path of the workflow dispatch. |
370
+
|`owner`| Optional | String | By default, the value of `repo.owner` context variable. The account owner of the repository. Case insensitive. |
371
+
|`repo`| Optional | String | By default, the value of `repo.name` context variable. The name of the repository without the `.git` extension. Case insensitive. |
372
+
|`ref`| Optional | String | By default, the value of `branch.name` context variable. The branch name. Case sensitive. |
373
373
|`inputs`| Optional | String | By default, an empty list. Key-Value list with the arguments to provide to the workflow |
374
374
|`check_name`| Optional | String | When added, after the workflow is complete, add the check name to the checks list on GitHub |
375
-
|`stop_ongoing_workflow`| Optional | Bool | By default, `false`. In case the workflow already runs on the branch, if`true`: cancel the ongoing workflow before running the newly dispatched workflow. If`false`: wait for the old workflow to finish before dispatching a new one |
375
+
|`stop_ongoing_workflow`| Optional | Bool | By default, `false`. If the workflow already runs on the branch, When`true`: cancel the ongoing workflow before running the newly dispatched workflow. When`false`: wait for the old workflow to finish before dispatching a new one |
376
376
377
377
</div>
378
378
@@ -398,8 +398,9 @@ has:
398
398
399
399
!!! attention
400
400
401
-
* This action will invoke the run of a workflow dispatch; thus, it might result in significant GitHub action minutes charge.
401
+
* This action will invoke the run of a workflow dispatch; thus, it might result in a significant GitHub action minutes charge.
402
402
* We encourage you to use this action with [custom triggers](./execution-model.md#explicit-triggers)
403
+
* To manually test the webhook dispatch, please [run the workflow](https://docs.github.com/en/actions/managing-workflow-runs-and-deployments/managing-workflow-runs/manually-running-a-workflow#running-a-workflow){:target="_blank"} before using it with gitStream.
Copy file name to clipboardExpand all lines: docs/execution-model.md
+5-7Lines changed: 5 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -26,11 +26,9 @@ Triggers can be defined globally at the file level or specifically for each auto
26
26
27
27
#### `triggers` section
28
28
29
-
Use explicit triggers to enhance the control and customization of automations in gitStream, when you need to define precisely when and how automations should be triggered based on various events and actions within pull requests.
29
+
The `triggers` section in gitStream gives you precise control over when automations execute. It allows you to define conditions based on pull request events using `include` and `exclude` lists to specify branch and repository patterns. These lists determine which branches or repositories trigger or bypass automation but do not affect the events initiating automations.
30
30
31
-
The `triggers` is section specifies when automations are executed, supporting `include` and `exclude` lists for branch and repository patterns at the file level.
32
-
33
-
The `on` keyword can also be used within individual automations to define specific events that trigger those automations. Add the `on` keyword under the `triggers` key in the file and/or to a specific automation to define explicit triggers.
31
+
Additionally, the `on` keyword defines specific events that trigger automations. It can be added at the file level (under the `triggers` section) or within individual automations for greater customization. Multiple triggers can be stacked, meaning gitStream will execute the automation for each matching triggering event, allowing flexibility in defining automation behavior
@@ -56,7 +54,7 @@ The table below lists supported explicit triggers, categorized into those enable
56
54
| :fontawesome-brands-github: Transition from draft to ready for review |`pr_ready_for_review`|`off`|
57
55
| :fontawesome-brands-github: transition from any state to closed |`pr_closed`|`off`|
58
56
| :fontawesome-brands-github: transition from closed to open |`pr_reopened`|`off`|
59
-
| :fontawesome-brands-github: Approving the PR |`pr_approved`|`off`|
57
+
| :fontawesome-brands-github: Transition from any state to approved|`pr_approved`|If there is an automation with one of the actions: `require-reviewers`, `set-required-approvals` or `merge`, or uses `pr.approvals` context variable|
60
58
61
59
Explicit triggers are set independently per each automation block and can be configured at the file level, specific to each automation separately or in combination. If triggers are listed at the file level **and** specific automation, the automation will be triggered according to both triggers.
62
60
If an automation block does not have explicit triggers configured, it will be triggered according to the default (implicit) triggers.
@@ -73,7 +71,7 @@ If an automation block does not have explicit triggers configured, it will be tr
73
71
74
72
**Exclude/Include prioritization**
75
73
76
-
- Exclude overrides the include option. Thus, a repo will be excluded when a it matches both the include and exclude lists.
74
+
- Exclude overrides the include option. Thus, a repo will be excluded when it matches the include and exclude lists.
77
75
78
76
In the following example, the automations in the file will be triggered for all repositories that contain the string `feature`, except for the repository `my_feature`
79
77
```yaml+jinja
@@ -90,7 +88,7 @@ If an automation block does not have explicit triggers configured, it will be tr
90
88
91
89
#### Dependabot and Renovate
92
90
93
-
For example, you can have your normal automations that help developers with their PRs and a separate automation that automates Dependabot or Renovate version bumps. Both automations serve distinctly different purposes: the first helps your developers streamline their PRs, while the other reduces developers' toil by auto-approving version bumps. You will not want to trigger gitStream for Dependabot or Renovate unnecessarily, so you can configure the triggers to exclude the branch where Dependabot or Renovate PRs are created.
91
+
For example, you can have your normal automations that help developers with their PRs and a separate automation that automates Dependabot or Renovate version bumps. Both automations serve distinctly different purposes: the first helps your developers streamline their PRs, while the other reduces developers' toil by auto-approving version bumps. You will not want to unnecessarily trigger gitStream for Dependabot or Renovate, so you can configure the triggers to exclude the branch where Dependabot or Renovate PRs are created.
94
92
95
93
!!! warning "Required gitStream Plugins"
96
94
This example requires you to install the [`extractDependabotVersionBump`](/filter-function-plugins/#extractdependabotversionbump) and [`compareSemver`](/filter-function-plugins/#comparesemver) plugins.
0 commit comments