Skip to content

Commit c9dd987

Browse files
build config view (#2794)
* new file for build config view added * status details added Co-authored-by: Michał Rybiński <[email protected]>
1 parent 97f2b19 commit c9dd987

File tree

1 file changed

+95
-0
lines changed

1 file changed

+95
-0
lines changed

user/build-config-view.md

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
---
2+
title: The Build Config View
3+
4+
layout: en
5+
---
6+
7+
The Build Config view gives you the possibility to
8+
9+
* Trigger a build (make sure to configure them properly - see Note at the bottom)
10+
* Customize your build
11+
* Preview your build
12+
* Cancel your build
13+
14+
## Build Config Validation turned off
15+
16+
You cannot access the Build Config Validation feature with the setting [x] Build Config Validation turned off.
17+
18+
This is because the feature needs to go through Yml's API, while Trigger Build goes through just Gatekeeper,
19+
and skips .yml for processing the build config. So the build preview and actual build triggered might yield inconsistent results.
20+
21+
> Everything else from here on in this document assumes that the setting [x] Build Config Validation is turned on.
22+
23+
24+
## Build Config Validation Indicator and Messages
25+
26+
For both a build with multiple jobs, and a build with an individual job, on the build view and the job view:
27+
28+
* Green - If a build config has info level validation messages then a green dot indicates the validity on the View Config tab,
29+
and validation messages are listed only on the build and job's config view, not on the main build matrix or job log views.
30+
* Yellow or red - If a build config has warning, error, or alert level validation messages then a yellow or red dot indicates this on the
31+
View Config tab, and validation messages are listed on both the build/job's config view, as well as the main build matrix
32+
and job log views.
33+
34+
## Build Config Preview and Trigger Build Views
35+
36+
The config tab has the following states:
37+
38+
* Closed - Viewing the config of the current build
39+
* Open - Triggering a new build with the same config
40+
* Customize - Customizing the build config
41+
* Preview - Previewing a build as it would be created by submitting the config as a new build
42+
43+
All but the closed view also have two sub-states:
44+
45+
* Before triggering a new build
46+
* After triggering a new build
47+
48+
> New builds resulting from submitting build configs via "Trigger Build" have to be configured properly, using the correct branch,
49+
commit, message, and config(s).
50+
Especially the merging of submitted build configs (e.g. merging the custom config into an existing .travis.yml, but also merging
51+
multiple configs submitted, and merging config imports into either submitted configs, or the .travis.yml) has to happen using the
52+
given merge mode(s) and result in the correct build config result.
53+
54+
### Status details
55+
56+
#### Closed - Viewing the Config of the Current Build
57+
58+
The **Closed** status displays the raw config sources that have been used to configure the build (usually just .travis.yml, for builds triggered via API the build request's config, if any, and all config imports, if any)
59+
the processed (validated and merged), resulting build config that has been used to create the build
60+
61+
It also lists build config validation messages, if any, or simply the message valid if no validation messages have been produced (can be provoked by providing valid values on language, os, and dist).
62+
63+
#### Open - Triggering a New Build with the Same Config
64+
65+
The **Open** status displays the same content as the Closed view, but allows to trigger a new build with the same config as the current one.
66+
67+
When the **Trigger build** button has been clicked it's state changes into a yellow button with a loading indicator, and the message changes to Submitting the build request. Once the build request has been processed, the message changes to Success. You have triggered build #[build-number] ..., and the button changes to green with the caption Go there.
68+
69+
#### Customizing - Changing the Config Previewed/Submitted
70+
71+
The **Customizing** status displays a form that allows changing the build's config sources. It can be used to e.g. try out and preview build configs for submitting build requests via API or including/merging them via config imports.
72+
73+
The default form has the fields:
74+
75+
* Branch, prefilled with the current build's branch.
76+
* Commit, prefilled with the current build's commit sha (truncated to 7 characters).
77+
* Message, prefilled with (to be decided)
78+
* Config, prefilled with the current build request's API config, if any
79+
* Merge mode, pre-selected to the current build request's API merge mode, if any, or deep merge & append by default
80+
81+
> If the current build has been created by submitting multiple configs/merge modes via API (e.g. using this very feature) then all of them are displayed and prefilled on the form as well.
82+
83+
> Changing the selected branch will change the commit prefilled, even if it has been changed manually to some other than the original value.
84+
85+
Entering the Commit input field (focus) will display a small notice that reminds the user to enter a commit that belongs to the branch selected.
86+
87+
If the last config's merge mode is set to Replace then other config sources listed further down (e.g. .travis.yml) are hidden.
88+
89+
#### Preview - Previewing the Build Config and Jobs
90+
91+
The **Preview** status shows the build config and jobs that would result from submitting the current build config sources (customized or not) as a new build, with the build config on the left side, and the build's job on the right side. If multiple jobs would be produced then those are listed on the right side underneath each other.
92+
93+
94+
95+

0 commit comments

Comments
 (0)