You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@samza.apache.org by "clayburn (via GitHub)" <gi...@apache.org> on 2023/05/09 13:51:41 UTC

[GitHub] [samza] clayburn opened a new pull request, #1665: Capture build scans on ge.apache.org to benefit from deep build insights

clayburn opened a new pull request, #1665:
URL: https://github.com/apache/samza/pull/1665

   This PR publishes a build scan for every CI build on Jenkins and GitHub Actions and for every local build from an authenticated Apache committer. The build will not fail if publishing fails.
   
   The build scans of the Apache Samza project are published to the Gradle Enterprise instance at [ge.apache.org](https://ge.apache.org/), hosted by the Apache Software Foundation and run in partnership between the ASF and Gradle. This Gradle Enterprise instance has all features and extensions enabled and is freely available for use by the Apache Samza project and all other Apache projects.
   
   This pull request enhances the functionality of publishing build scans to the publicly available [scans.gradle.com](https://scans.gradle.com/) by instead publishing build scans to [ge.apache.org](https://ge.apache.org/). On this Gradle Enterprise instance, Apache Samza will have access not only to all of the published build scans but other aggregate data features such as:
   
   - Dashboards to view all historical build scans, along with performance trends over time
   - Build failure analytics for enhanced investigation and diagnosis of build failures
   - Test failure analytics to better understand trends and causes around slow, failing, and flaky tests
   
   If interested in exploring a fully populated Gradle Enterprise instance, please explore the builds already connected to [ge.apache.org](https://ge.apache.org/), the [Spring project’s instance](https://ge.spring.io/scans?search.relativeStartTime=P28D&search.timeZoneId=Europe/Zurich), or any number of other [OSS projects](https://gradle.com/enterprise-customers/oss-projects/) for which we sponsor instances of Gradle Enterprise.
   
   Please let me know if there are any questions about the value of Gradle Enterprise or the changes in this pull request and I’d be happy to address them.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@samza.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [samza] mynameborat commented on a diff in pull request #1665: Capture build scans on ge.apache.org to benefit from deep build insights

Posted by "mynameborat (via GitHub)" <gi...@apache.org>.
mynameborat commented on code in PR #1665:
URL: https://github.com/apache/samza/pull/1665#discussion_r1188792021


##########
settings.gradle:
##########
@@ -16,6 +16,39 @@
  * specific language governing permissions and limitations
  * under the License.
  */
+plugins {
+  id 'com.gradle.enterprise' version '3.13.1'
+  id 'com.gradle.common-custom-user-data-gradle-plugin' version '1.10'
+}
+
+def isGithubActions = System.getenv('GITHUB_ACTIONS') != null
+def isJenkins = System.getenv('JENKINS_URL') != null
+def isCI = isGithubActions || isJenkins
+
+gradleEnterprise {
+  server = "https://ge.apache.org"
+  buildScan {
+    capture { taskInputFiles = true }
+    uploadInBackground = !isCI
+    publishAlways()
+    publishIfAuthenticated()
+    obfuscation {
+      // This obfuscates the IP addresses of the build machine in the build scan.
+      // Alternatively, the build scan will provide the hostname for troubleshooting host-specific issues.
+      ipAddresses { addresses -> addresses.collect { address -> "0.0.0.0"} }

Review Comment:
   Do we only have the build machine address as part of the scans or are there more? If so, this seems to obfuscate all of those addresses? Will that have any impact on navigating build scans?



##########
settings.gradle:
##########
@@ -16,6 +16,39 @@
  * specific language governing permissions and limitations
  * under the License.
  */
+plugins {
+  id 'com.gradle.enterprise' version '3.13.1'
+  id 'com.gradle.common-custom-user-data-gradle-plugin' version '1.10'
+}
+
+def isGithubActions = System.getenv('GITHUB_ACTIONS') != null
+def isJenkins = System.getenv('JENKINS_URL') != null
+def isCI = isGithubActions || isJenkins
+
+gradleEnterprise {
+  server = "https://ge.apache.org"
+  buildScan {
+    capture { taskInputFiles = true }
+    uploadInBackground = !isCI
+    publishAlways()
+    publishIfAuthenticated()
+    obfuscation {
+      // This obfuscates the IP addresses of the build machine in the build scan.
+      // Alternatively, the build scan will provide the hostname for troubleshooting host-specific issues.
+      ipAddresses { addresses -> addresses.collect { address -> "0.0.0.0"} }
+    }
+  }
+}
+
+buildCache {
+  local {
+    enabled = !isCI

Review Comment:
   why set this to false in case of CI? How does this impact build scans?



##########
settings.gradle:
##########
@@ -16,6 +16,39 @@
  * specific language governing permissions and limitations
  * under the License.
  */
+plugins {
+  id 'com.gradle.enterprise' version '3.13.1'
+  id 'com.gradle.common-custom-user-data-gradle-plugin' version '1.10'
+}
+
+def isGithubActions = System.getenv('GITHUB_ACTIONS') != null
+def isJenkins = System.getenv('JENKINS_URL') != null
+def isCI = isGithubActions || isJenkins
+
+gradleEnterprise {
+  server = "https://ge.apache.org"
+  buildScan {
+    capture { taskInputFiles = true }
+    uploadInBackground = !isCI
+    publishAlways()
+    publishIfAuthenticated()
+    obfuscation {
+      // This obfuscates the IP addresses of the build machine in the build scan.
+      // Alternatively, the build scan will provide the hostname for troubleshooting host-specific issues.
+      ipAddresses { addresses -> addresses.collect { address -> "0.0.0.0"} }
+    }
+  }
+}
+
+buildCache {
+  local {
+    enabled = !isCI
+  }
+
+  remote(gradleEnterprise.buildCache) {
+    enabled = false
+  }

Review Comment:
   Wouldn't this help with improving e2e latency of CI flows? If not, when is it beneficial to enable this?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@samza.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [samza] mynameborat commented on a diff in pull request #1665: Capture build scans on ge.apache.org to benefit from deep build insights

Posted by "mynameborat (via GitHub)" <gi...@apache.org>.
mynameborat commented on code in PR #1665:
URL: https://github.com/apache/samza/pull/1665#discussion_r1188924206


##########
settings.gradle:
##########
@@ -16,6 +16,39 @@
  * specific language governing permissions and limitations
  * under the License.
  */
+plugins {
+  id 'com.gradle.enterprise' version '3.13.1'
+  id 'com.gradle.common-custom-user-data-gradle-plugin' version '1.10'
+}
+
+def isGithubActions = System.getenv('GITHUB_ACTIONS') != null
+def isJenkins = System.getenv('JENKINS_URL') != null
+def isCI = isGithubActions || isJenkins
+
+gradleEnterprise {
+  server = "https://ge.apache.org"
+  buildScan {
+    capture { taskInputFiles = true }
+    uploadInBackground = !isCI
+    publishAlways()
+    publishIfAuthenticated()
+    obfuscation {
+      // This obfuscates the IP addresses of the build machine in the build scan.
+      // Alternatively, the build scan will provide the hostname for troubleshooting host-specific issues.
+      ipAddresses { addresses -> addresses.collect { address -> "0.0.0.0"} }
+    }
+  }
+}
+
+buildCache {
+  local {
+    enabled = !isCI
+  }
+
+  remote(gradleEnterprise.buildCache) {
+    enabled = false
+  }

Review Comment:
   Sounds good!



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@samza.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [samza] mynameborat merged pull request #1665: Capture build scans on ge.apache.org to benefit from deep build insights

Posted by "mynameborat (via GitHub)" <gi...@apache.org>.
mynameborat merged PR #1665:
URL: https://github.com/apache/samza/pull/1665


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@samza.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [samza] clayburn commented on a diff in pull request #1665: Capture build scans on ge.apache.org to benefit from deep build insights

Posted by "clayburn (via GitHub)" <gi...@apache.org>.
clayburn commented on code in PR #1665:
URL: https://github.com/apache/samza/pull/1665#discussion_r1188807291


##########
settings.gradle:
##########
@@ -16,6 +16,39 @@
  * specific language governing permissions and limitations
  * under the License.
  */
+plugins {
+  id 'com.gradle.enterprise' version '3.13.1'
+  id 'com.gradle.common-custom-user-data-gradle-plugin' version '1.10'
+}
+
+def isGithubActions = System.getenv('GITHUB_ACTIONS') != null
+def isJenkins = System.getenv('JENKINS_URL') != null
+def isCI = isGithubActions || isJenkins
+
+gradleEnterprise {
+  server = "https://ge.apache.org"
+  buildScan {
+    capture { taskInputFiles = true }
+    uploadInBackground = !isCI
+    publishAlways()
+    publishIfAuthenticated()
+    obfuscation {
+      // This obfuscates the IP addresses of the build machine in the build scan.
+      // Alternatively, the build scan will provide the hostname for troubleshooting host-specific issues.
+      ipAddresses { addresses -> addresses.collect { address -> "0.0.0.0"} }
+    }
+  }
+}
+
+buildCache {
+  local {
+    enabled = !isCI
+  }
+
+  remote(gradleEnterprise.buildCache) {
+    enabled = false
+  }

Review Comment:
   This would help build performance, but there is work to do on the Gradle Enterprise instance before offering caching to ASF projects. It is on our roadmap to offer in the future, and we'll offer PRs when it is ready.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@samza.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [samza] clayburn commented on a diff in pull request #1665: Capture build scans on ge.apache.org to benefit from deep build insights

Posted by "clayburn (via GitHub)" <gi...@apache.org>.
clayburn commented on code in PR #1665:
URL: https://github.com/apache/samza/pull/1665#discussion_r1188805853


##########
settings.gradle:
##########
@@ -16,6 +16,39 @@
  * specific language governing permissions and limitations
  * under the License.
  */
+plugins {
+  id 'com.gradle.enterprise' version '3.13.1'
+  id 'com.gradle.common-custom-user-data-gradle-plugin' version '1.10'
+}
+
+def isGithubActions = System.getenv('GITHUB_ACTIONS') != null
+def isJenkins = System.getenv('JENKINS_URL') != null
+def isCI = isGithubActions || isJenkins
+
+gradleEnterprise {
+  server = "https://ge.apache.org"
+  buildScan {
+    capture { taskInputFiles = true }
+    uploadInBackground = !isCI
+    publishAlways()
+    publishIfAuthenticated()
+    obfuscation {
+      // This obfuscates the IP addresses of the build machine in the build scan.
+      // Alternatively, the build scan will provide the hostname for troubleshooting host-specific issues.
+      ipAddresses { addresses -> addresses.collect { address -> "0.0.0.0"} }

Review Comment:
   You can see here for an example of what all information is captured about infrastructure (as well as the build in general): https://ge.apache.org/s/ghik7lnrxcjkg#infrastructure
   
   The impact here is that it will zero out the ip address, but will otherwise not affect the scan.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@samza.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


[GitHub] [samza] clayburn commented on a diff in pull request #1665: Capture build scans on ge.apache.org to benefit from deep build insights

Posted by "clayburn (via GitHub)" <gi...@apache.org>.
clayburn commented on code in PR #1665:
URL: https://github.com/apache/samza/pull/1665#discussion_r1188808311


##########
settings.gradle:
##########
@@ -16,6 +16,39 @@
  * specific language governing permissions and limitations
  * under the License.
  */
+plugins {
+  id 'com.gradle.enterprise' version '3.13.1'
+  id 'com.gradle.common-custom-user-data-gradle-plugin' version '1.10'
+}
+
+def isGithubActions = System.getenv('GITHUB_ACTIONS') != null
+def isJenkins = System.getenv('JENKINS_URL') != null
+def isCI = isGithubActions || isJenkins
+
+gradleEnterprise {
+  server = "https://ge.apache.org"
+  buildScan {
+    capture { taskInputFiles = true }
+    uploadInBackground = !isCI
+    publishAlways()
+    publishIfAuthenticated()
+    obfuscation {
+      // This obfuscates the IP addresses of the build machine in the build scan.
+      // Alternatively, the build scan will provide the hostname for troubleshooting host-specific issues.
+      ipAddresses { addresses -> addresses.collect { address -> "0.0.0.0"} }
+    }
+  }
+}
+
+buildCache {
+  local {
+    enabled = !isCI

Review Comment:
   Similar to the remote caching answer. This will not affect the scan itself. You will see the cache disabled in the build scan.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@samza.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org