Skip to content

Commit de05cda

Browse files
authored
Develocity is added as an explicit requirement (#788)
* Elaborate on requirements in documentation * Remove mentions of optional user permissions * Rewrite some text * Fix capitalization of remote build cache
1 parent f0ef7b7 commit de05cda

File tree

2 files changed

+80
-16
lines changed

2 files changed

+80
-16
lines changed

Gradle.md

+40-8
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,47 @@ There are currently five experiments for Gradle. You could also perform these ex
88

99
## Requirements
1010

11-
You need to have [Bash](https://www.gnu.org/software/bash/) installed in order to run the build validation scripts.
11+
You must have the following tooling in order to use the Develocity Build Validation Scripts:
1212

13-
If you plan to use the build validation scripts on Windows, then you will need to [install Windows Subsystem for Linux (WSL)](https://docs.microsoft.com/en-us/windows/wsl/install). The build validation scripts work well on the WSL default distribution (Ubuntu). Note how to deal with the eventuality of facing filename too long errors [here](#dealing-with-filename-too-long-errors-on-windows).
13+
- [Develocity](https://gradle.com/develocity/)
14+
- [Bash](https://www.gnu.org/software/bash/)
15+
16+
For users running on Windows, you will need to [install Windows Subsystem for Linux (WSL)](https://docs.microsoft.com/en-us/windows/wsl/install).
17+
The scripts work well on the WSL default distribution (Ubuntu).
18+
Note how to deal with the eventuality of facing filename too long errors [here](#dealing-with-filename-too-long-errors-on-windows).
19+
20+
### User permissions
21+
22+
The Develocity Build Validation Scripts involve running builds on your local machine and in your CI environment.
23+
The builds run on your local machine require a different set of Develocity user permissions than those run in your CI environment.
24+
25+
#### Develocity user permissions required on local developer machines
26+
27+
| User permission | Reason |
28+
|---------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
29+
| Publish build scans | Analyzing the experiment results relies on build scans published to Develocity. |
30+
| Read build cache data | Reading from the remote build cache during the experiments that depend on the remote build cache. |
31+
| View build scans and build data | Performing a deeper analysis of the experiment results in Develocity. |
32+
| Access build data via the API | Retrieving the published build data from Develocity to summarize the experiment results. See [Authenticating with Develocity](#authenticating-with-develocity) for more details. |
33+
34+
> [!IMPORTANT]
35+
> Your Develocity user must be granted one of `View build scans and build data` or `Access build data via the API`.
36+
> If you have neither, you will have no way to view the experiment results.
37+
38+
#### Develocity user permissions required on CI
39+
40+
| User permission | Reason |
41+
|---------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
42+
| Publish build scans | Analyzing the experiment results relies on build scans published to Develocity. |
43+
| Read and write build cache data | Reading from and writing to the remote build cache. |
44+
| Access build data via the API | Retrieving the published build data from Develocity to summarize the experiment results. See [Authenticating with Develocity](#authenticating-with-develocity) for more details. |
45+
46+
### Common Custom User Data Gradle plugin
47+
48+
To get the most out of the experiments and also when building with Develocity during daily development, it is highly recommended that you apply the [Common Custom User Data Gradle plugin](https://github.com/gradle/common-custom-user-data-gradle-plugin) to your build.
49+
This free, open-source plugin enhances build scans with additional tags, links, and custom values that are considered during the experiments.
50+
51+
You can find a complete example of how to apply the Common Custom User Data Gradle plugin to your build [here](https://github.com/gradle/develocity-build-config-samples/tree/main/common-develocity-gradle-configuration-groovy/settings.gradle) for Groovy DSL and [here](https://github.com/gradle/develocity-build-config-samples/blob/main/common-develocity-gradle-configuration-kotlin/settings.gradle.kts) for Kotlin DSL.
1452

1553
## Compatibility
1654

@@ -104,12 +142,6 @@ the local builds to publish their build scans to a Develocity server reachable a
104142
./01-validate-incremental-building.sh -t assemble -r https://github.com/gradle/gradle-build-scan-quickstart -e -s https://develocity.example.io
105143
```
106144

107-
## Applying the Common Custom User Data Gradle plugin
108-
109-
To get the most out of the experiments and also when building with Develocity during daily development, it is highly recommended that you apply the [Common Custom User Data Gradle plugin](https://github.com/gradle/common-custom-user-data-gradle-plugin) to your build. This free, open-source plugin enhances build scans with additional tags, links, and custom values that are considered during the experiments.
110-
111-
You can find a complete example of how to apply the Common Custom User Data Gradle plugin to your build [here](https://github.com/gradle/develocity-build-config-samples/tree/main/common-develocity-gradle-configuration-groovy/settings.gradle) for Groovy DSL and [here](https://github.com/gradle/develocity-build-config-samples/blob/main/common-develocity-gradle-configuration-kotlin/settings.gradle.kts) for Kotlin DSL.
112-
113145
## Authenticating with Develocity
114146

115147
Some scripts fetch data from build scans that were published as part of running an experiment. The build scan data is fetched by leveraging the [Develocity API](https://docs.gradle.com/develocity/api-manual/). It is not strictly necessary that you have permission to call these APIs to execute a script successfully, but the summary provided once the script has finished running its experiment will be more comprehensive if the build scan data is accessible.

Maven.md

+40-8
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,47 @@ There are currently four experiments for Maven. You could also perform these exp
88

99
## Requirements
1010

11-
You need to have [Bash](https://www.gnu.org/software/bash/) installed in order to run the build validation scripts.
11+
You must have the following tooling in order to use the Develocity Build Validation Scripts:
1212

13-
If you plan to use the build validation scripts on Windows, then you will need to [install Windows Subsystem for Linux (WSL)](https://docs.microsoft.com/en-us/windows/wsl/install). The build validation scripts work well on the WSL default distribution (Ubuntu). Note how to deal with the eventuality of facing filename too long errors [here](#dealing-with-filename-too-long-errors-on-windows).
13+
- [Develocity](https://gradle.com/develocity/)
14+
- [Bash](https://www.gnu.org/software/bash/)
15+
16+
For users running on Windows, you will need to [install Windows Subsystem for Linux (WSL)](https://docs.microsoft.com/en-us/windows/wsl/install).
17+
The scripts work well on the WSL default distribution (Ubuntu).
18+
Note how to deal with the eventuality of facing filename too long errors [here](#dealing-with-filename-too-long-errors-on-windows).
19+
20+
### User permissions
21+
22+
The Develocity Build Validation Scripts involve running builds on your local machine and in your CI environment.
23+
The builds run on your local machine require a different set of Develocity user permissions than those run in your CI environment.
24+
25+
#### Develocity user permissions required on local developer machines
26+
27+
| User permission | Reason |
28+
|---------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
29+
| Publish build scans | Analyzing the experiment results relies on build scans published to Develocity. |
30+
| Read build cache data | Reading from the remote build cache during the experiments that depend on the remote build cache. |
31+
| View build scans and build data | Performing a deeper analysis of the experiment results in Develocity. |
32+
| Access build data via the API | Retrieving the published build data from Develocity to summarize the experiment results. See [Authenticating with Develocity](#authenticating-with-develocity) for more details. |
33+
34+
> [!IMPORTANT]
35+
> Your Develocity user must be granted one of `View build scans and build data` or `Access build data via the API`.
36+
> If you have neither, you will have no way to view the experiment results.
37+
38+
#### Develocity user permissions required on CI
39+
40+
| User permission | Reason |
41+
|---------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
42+
| Publish build scans | Analyzing the experiment results relies on build scans published to Develocity. |
43+
| Read and write build cache data | Reading from and writing to the remote build cache. |
44+
| Access build data via the API | Retrieving the published build data from Develocity to summarize the experiment results. See [Authenticating with Develocity](#authenticating-with-develocity) for more details. |
45+
46+
### Common Custom User Data Gradle plugin
47+
48+
To get the most out of the experiments and also when building with Develocity during daily development, it is highly recommended that you apply the [Common Custom User Data Maven extension](https://github.com/gradle/common-custom-user-data-maven-extension) to your build.
49+
This free, open-source plugin enhances build scans with additional tags, links, and custom values that are considered during the experiments.
50+
51+
You can find a complete example of how to apply the Common Custom User Data Maven extension to your build [here](https://github.com/gradle/develocity-build-config-samples/blob/main/common-develocity-maven-configuration/.mvn/extensions.xml).
1452

1553
## Compatibility
1654

@@ -102,12 +140,6 @@ the local builds to publish their build scans to a Develocity server reachable a
102140
./01-validate-local-build-caching-same-location.sh -g compile -r https://github.com/gradle/maven-build-scan-quickstart -e -s https://develocity.example.io
103141
```
104142

105-
## Applying the Common Custom User Data Maven extension
106-
107-
To get the most out of the experiments and also when building with Develocity during daily development, it is highly recommended that you apply the [Common Custom User Data Maven extension](https://github.com/gradle/common-custom-user-data-maven-extension) to your build. This free, open-source plugin enhances build scans with additional tags, links, and custom values that are considered during the experiments.
108-
109-
You can find a complete example of how to apply the Common Custom User Data Maven extension to your build [here](https://github.com/gradle/develocity-build-config-samples/blob/main/common-develocity-maven-configuration/.mvn/extensions.xml).
110-
111143
## Authenticating with Develocity
112144

113145
Some scripts fetch data from build scans that were published as part of running an experiment. The build scan data is fetched by leveraging the [Develocity API](https://docs.gradle.com/develocity/api-manual/). It is not strictly necessary that you have permission to call these APIs to execute a script successfully, but the summary provided once the script has finished running its experiment will be more comprehensive if the build scan data is accessible.

0 commit comments

Comments
 (0)