This is an automated email from the ASF dual-hosted git repository.

yhu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/beam.git


The following commit(s) were added to refs/heads/master by this push:
     new c9291981f76 Added GitHub Workflow Replacement for Jenkins 
job_PreCommit_CommunityMetrics (#27466)
c9291981f76 is described below

commit c9291981f76e1d3014a6e1e1779d2bb4eed3ba1a
Author: Aleksandr Dudko <116064902+aleksandr-du...@users.noreply.github.com>
AuthorDate: Tue Jul 18 21:39:55 2023 +0400

    Added GitHub Workflow Replacement for Jenkins 
job_PreCommit_CommunityMetrics (#27466)
---
 .../workflows/beam_PreCommit_CommunityMetrics.yml  | 92 ++++++++++++++++++++++
 .test-infra/metrics/build.gradle                   |  2 +-
 2 files changed, 93 insertions(+), 1 deletion(-)

diff --git a/.github/workflows/beam_PreCommit_CommunityMetrics.yml 
b/.github/workflows/beam_PreCommit_CommunityMetrics.yml
new file mode 100644
index 00000000000..31d145a0916
--- /dev/null
+++ b/.github/workflows/beam_PreCommit_CommunityMetrics.yml
@@ -0,0 +1,92 @@
+#    Licensed to the Apache Software Foundation (ASF) under one
+#    or more contributor license agreements.  See the NOTICE file
+#    distributed with this work for additional information
+#    regarding copyright ownership.  The ASF licenses this file
+#    to you 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.
+
+name: PreCommit Community Metrics
+
+on:
+  push:
+    tags: ['v*']
+    branches: ['master', 'release-*']
+    paths: ['.test-infra/metrics/**', 
'.github/workflows/beam_PreCommit_CommunityMetrics.yml']
+  pull_request_target:
+    branches: ['master', 'release-*']
+    paths: ['.test-infra/metrics/**']
+  issue_comment:
+    types: [created]
+  schedule:
+    - cron: '* */6 * * *'
+
+#Setting explicit permissions for the action to avoid the default permissions 
which are `write-all` in case of pull_request_target event
+permissions:
+  actions: write
+  pull-requests: read
+  checks: read
+  contents: read
+  deployments: read
+  id-token: none
+  issues: read
+  discussions: read
+  packages: read
+  pages: read
+  repository-projects: read
+  security-events: read
+  statuses: read
+
+jobs:
+  beam_PreCommit_CommunityMetrics:
+    name: beam_PreCommit_CommunityMetrics
+    runs-on: [self-hosted, ubuntu-20.04, main]
+    if: |
+      github.event_name == 'push' ||
+      github.event_name == 'pull_request_target' ||
+      github.event_name == 'schedule' ||
+      github.event.comment.body == 'Run CommunityMetrics PreCommit'
+    steps:
+      - uses: actions/checkout@v3
+      - name: Install Java
+        uses: actions/setup-java@v3.8.0
+        with:
+          distribution: 'zulu'
+          java-version: '8'
+      - name: Setup Gradle
+        uses: gradle/gradle-build-action@v2
+        with:
+          cache-read-only: false
+      - name: Rerun on comment
+        if: github.event.comment.body == 'Run CommunityMetrics PreCommit'
+        uses: ./.github/actions/rerun-job-action
+        with:
+          pull_request_url: ${{ github.event.issue.pull_request.url }}
+          github_repository: ${{ github.repository }}
+          github_token: ${{ secrets.GITHUB_TOKEN }}
+          github_job: ${{ github.job }}
+          github_current_run_id: ${{ github.run_id }}
+      - name: Set up Docker Buildx
+        uses: docker/setup-buildx-action@v2
+      - name: Remove default github maven configuration
+        run: rm ~/.m2/settings.xml
+      - name: Install docker compose
+        run: |
+         sudo curl -L 
https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname
 -s)-$(uname -m) -o /usr/local/bin/docker-compose
+         sudo chmod +x /usr/local/bin/docker-compose
+      - name: Authenticate on GCP
+        uses: google-github-actions/setup-gcloud@v0
+        with:
+          service_account_email: ${{ secrets.GCP_SA_EMAIL }}
+          service_account_key: ${{ secrets.GCP_SA_KEY }}
+          project_id: ${{ secrets.GCP_PROJECT_ID }}
+      - name: Install gcloud Kubectl
+        run: gcloud components install kubectl
+      - name: run Community Metrics PreCommit script
+        run: ./gradlew :communityMetricsPreCommit 
-PKUBE_CONFIG_PATH='$HOME/.kube/config'
\ No newline at end of file
diff --git a/.test-infra/metrics/build.gradle b/.test-infra/metrics/build.gradle
index 679ecd35735..ad7dbdb5fd9 100644
--- a/.test-infra/metrics/build.gradle
+++ b/.test-infra/metrics/build.gradle
@@ -27,7 +27,7 @@ ext {
   cluster = 'metrics'
   zone='us-central1-a'
   projectName='apache-beam-testing'
-  kubeConfigPath='/home/jenkins/.kube/config'
+  kubeConfigPath = project.properties['KUBE_CONFIG_PATH'] ?: 
'/home/jenkins/.kube/config'
 }
 
 applyGroovyNature()

Reply via email to