Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move build summary extraction logic out #487

Merged
merged 37 commits into from
Jul 19, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
08b580a
Remove the data processing logic
sorin-florea Aug 21, 2023
9afb897
Remove support for offline mode
jthurne May 2, 2024
90a7203
Revert "Remove support for offline mode"
jthurne May 8, 2024
8721a55
TEMP: Update repo and version used to fetch build-scan-summary
jthurne May 3, 2024
2971323
Move library scripts to lib/scripts in distributable
jthurne May 9, 2024
b620f38
Move build-scan-summary jar to lib/develocity in distributables
jthurne May 9, 2024
0ac12da
Add the build-scan-summary jar to the repository
jthurne May 9, 2024
ee1166b
Align internal env var name with the build-scan-summary jar filename
jthurne May 9, 2024
9fadce5
Eliminate read-only variable errors
jthurne May 9, 2024
fc159ea
Move BUILD_SCAN_SUMMARY_JAR to init.sh
jthurne May 10, 2024
11d2c87
Split out the third-party dependencies of build-scan-summary into a s…
jthurne May 16, 2024
55f93cc
Download build scan summary dependencies
sorin-florea May 17, 2024
a7b8f95
Remove includes
sorin-florea May 17, 2024
bde3027
Fix from statements
sorin-florea May 17, 2024
c1e00c3
Implement feedback
sorin-florea May 22, 2024
1d2e19d
Merge pull request #617 from gradle/sorin/download-dependencies
sorin-florea May 22, 2024
cba9b66
Update license
sorin-florea May 23, 2024
45fe330
Update license
sorin-florea May 23, 2024
f883c7c
Update build.gradle.kts
sorin-florea May 23, 2024
12df243
Remove support for offline mode
jthurne May 2, 2024
8c538ad
Update build scan summary jar
sorin-florea May 29, 2024
044b94f
Remove fat jar containing third-party depednencies
jthurne May 29, 2024
13f7f2d
Add NOTICE file
jthurne May 30, 2024
8d02809
Add some text requested by Legal
jthurne May 30, 2024
d8ea550
Update license and notice files per suggestions from legal
jthurne Jun 12, 2024
68dcf40
Fix typo in NOTICE
jthurne Jun 12, 2024
9690cfe
Merge remote-tracking branch 'origin/main' into sorin/consolidation
jthurne Jun 12, 2024
95b35fc
Move the Develocity Maven extension to lib/develocity
jthurne Jun 13, 2024
5bb54c1
Move common-custom-user-data-maven-extension to lib/third-party
jthurne Jun 13, 2024
0540156
Add the Gradle Common Custom User Data Maven Extension to the NOTICE …
jthurne Jun 13, 2024
418f05a
Fix typo
jthurne Jun 13, 2024
b51d887
Add support for the renamed Develocity Maven Extension (#624)
jthurne Jun 14, 2024
ee3f228
Merge remote-tracking branch 'origin/main' into sorin/consolidation
jthurne Jun 14, 2024
85ab32c
Switch to using Sync instead of Copy when assembling the scripts
jthurne Jul 17, 2024
76f701f
Switch to pulling the build-scan-summary jar from a remote maven repo
jthurne Jul 19, 2024
d0d0b38
Merge remote-tracking branch 'origin/main' into sorin/consolidation
jthurne Jul 19, 2024
8443143
Add Build Scan Summary to the NOTICE file and add a top-level LICENSE…
jthurne Jul 19, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 0 additions & 16 deletions Gradle.md
Original file line number Diff line number Diff line change
Expand Up @@ -159,22 +159,6 @@ Develocity server at develocity.example.io.
./02-validate-local-build-caching-same-location.sh -i -e -s https://develocity.example.io
```

## Running the experiments without publishing Build Scan data

The scripts that run all builds locally can be configured to not publish any Build Scan data and instead extract the required data
right during the build to surface the state of work avoidance by passing the `-x` or `--disable-build-scan-publishing` command
line argument.

The use of this option requires at least Java 17 to analyze the build data. The JVM version to analyze the build data is
[configurable](#specifying-the-jvm-used-to-analyze-the-build-data). You can still run the builds of the experiments with a JVM
version lower than Java 17.

The use of this configuration option also requires a license file from Gradle Inc. to be present in the root directory of the scripts.

```bash
./02-validate-local-build-caching-same-location.sh -i -x
```

## Specifying the JVM used to analyze the build data

The scripts use a Java-based utility to fetch and analyze the captured build data.
Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -198,4 +198,4 @@
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
limitations under the License.
16 changes: 0 additions & 16 deletions Maven.md
Original file line number Diff line number Diff line change
Expand Up @@ -157,22 +157,6 @@ Develocity server at develocity.example.io.
./01-validate-local-build-caching-same-location.sh -i -e -s https://develocity.example.io
```

## Running the experiments without publishing Build Scan data

The scripts that run all builds locally can be configured to not publish any Build Scan data and instead extract the required data
right during the build to surface the state of work avoidance by passing the `-x` or `--disable-build-scan-publishing` command
line argument.

The use of this option requires at least Java 17 to analyze the build data. The JVM version to analyze the build data is
[configurable](#specifying-the-jvm-used-to-analyze-the-build-data). You can still run the builds of the experiments with a JVM
version lower than Java 17.

The use of this configuration option also requires a license file from Gradle Inc. to be present in the root directory of the scripts.

```bash
./01-validate-local-build-caching-same-location.sh -i -x
```

## Specifying the JVM used to analyze the build data

The scripts use a Java-based utility to fetch and analyze the captured build data.
Expand Down
230 changes: 230 additions & 0 deletions NOTICE
Original file line number Diff line number Diff line change
@@ -0,0 +1,230 @@
The following copyright statements and licenses apply to various third party open
source software packages (or portions thereof) that are distributed with
this content in the folder titled "lib/third-party".

TABLE OF CONTENTS
=================

The following is a listing of the open source components detailed in this
document. This list is provided for your convenience; please read further if
you wish to review the copyright notice(s) and the full text of the license
associated with each component.


**SECTION 1: Apache License, V2.0**
* Google Guava
* `com.google.guava:guava`
* Google Gson
* `com.google.code.gson:gson`
* Gradle Develocity Plugin/Extension Adapters
* `com.gradle:develocity-maven-extension-adapters`
* Gradle Common Custom User Data Maven Extension
* `com.gradle:common-custom-user-data-maven-extension`
* Gson on Fire
* `io.gsonfire:gson-fire`
* Picocli
* `info.picocli:picocli`
* Square OkHttp
* `com.squareup.okhttp3:okhttp`
* `com.squareup.okhttp3:logging-interceptor`
* `com.squareup.okhttp3:okhttp-tls`
* Swagger Core - Annotations
* `io.swagger:swagger-annotations`

**SECTION 2: Common Development and Distribution License (CDDL) v1.0 and GNU General Public License (GPL) v2 with Classpath Exception**
* JAX-RS
* `javax.ws.rs:javax.ws.rs-api`
* `javax.ws.rs:jsr311-api`
* Javax Annotations
* `javax.annotation:javax.annotation-api`

**SECTION 3: New BSD License**
* Findbugs JSR 305
* `com.google.code.findbugs:jsr305`

**SECTION 4: Gradle License**
* Build Scan Summary
* `com.gradle:build-scan-summary`

SECTION 1: Apache License, V2.0
================================

Google Guava
------------
Copyright 2024 Google, Inc.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Google Gson
------------
Copyright 2024 Google, Inc.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Gradle Develocity Plugin/Extension Adapters
-------------------------------------------
Copyright 2024 Gradle, Inc.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Gradle Common Custom User Data Maven Extension
----------------------------------------------
Copyright 2024 Gradle, Inc.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Gson on Fire
-------------
Copyright 2015 Julio Viera

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Picocli
-------
Copyright 2023 Remko Popma

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License

Square OkHttp
-------------
Copyright 2019 Square, Inc.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Swagger Core - Annotations
---------------------------
Copyright 2023 SmartBear Software

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

SECTION 2: Common Development and Distribution License (CDDL) v1.0 and
GNU General Public License (GPL) v2 with Classpath Exception
====================================================================================================================================

JAX-RS
------
Copyright 2009 Oracle, Inc.

Licensed under the Common Development and Distribution License (CDDL) v1.0 and GNU General Public License (GPL) v2 with Classpath Exception
See https://javaee.github.io/jsr311/LICENSE

Javax Annotation
----------------
Copyright 2007 Oracle, Inc.

Licensed under the Common Development and Distribution License (CDDL) v1.0 and GNU General Public License (GPL) v2 with Classpath Exception
See https://github.com/javaee/javax.annotation/blob/master/LICENSE

SECTION 3: New BSD License
=======================================================

Findbugs JSR 305
----------------
Copyright 2005 the University of Maryland

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the
following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following
disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following
disclaimer in the documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

SECTION 4: Gradle License
=======================================================

Build Scan Summary
------------------
Copyright 2024 Gradle, Inc.

Subject to and licensed pursuant to the Gradle, Inc. Terms of Use, available at https://gradle.com/legal/terms-of-use/ (the "Gradle License").
You may not use this library except in compliance with the Gradle License.
Loading