Skip to content

Commit cb19392

Browse files
author
Sandeep Mishra
committed
reset
1 parent 5abd8f2 commit cb19392

File tree

4 files changed

+180
-230
lines changed

4 files changed

+180
-230
lines changed

.github/workflows/spanner-pr.yml

Lines changed: 161 additions & 171 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ name: Spanner PR
1919
on:
2020
pull_request:
2121
branches:
22-
- 'main'
22+
- 'main'
2323
paths:
2424
# Template wide common modules
2525
- 'pom.xml'
@@ -41,7 +41,7 @@ on:
4141
# Git action files
4242
- '.github/workflows/spanner-pr.yml'
4343
schedule:
44-
- cron: "3 */12 * * *"
44+
- cron: "3 */12 * * *"
4545
workflow_dispatch:
4646

4747
concurrency:
@@ -54,189 +54,179 @@ env:
5454
permissions: write-all
5555

5656
jobs:
57-
# Temporarily disabled for faster debugging
58-
# spotless_check:
59-
# name: Spotless
60-
# timeout-minutes: 10
61-
# runs-on: ubuntu-latest
62-
# steps:
63-
# - name: Checkout Code
64-
# uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
65-
# - name: Setup Environment
66-
# id: setup-env
67-
# uses: ./.github/actions/setup-env
68-
# - name: Run Spotless
69-
# run: |
70-
# ./cicd/run-spotless \
71-
# --modules-to-build="SPANNER"
72-
73-
# Temporarily disabled for faster debugging
74-
# checkstyle_check:
75-
# name: Checkstyle
76-
# timeout-minutes: 10
77-
# runs-on: ubuntu-latest
78-
# steps:
79-
# - name: Checkout Code
80-
# uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
81-
# - name: Setup Environment
82-
# id: setup-env
83-
# uses: ./.github/actions/setup-env
84-
# - name: Run Checkstyle
85-
# run: |
86-
# ./cicd/run-checkstyle \
87-
# --modules-to-build="SPANNER"
88-
57+
spotless_check:
58+
name: Spotless
59+
timeout-minutes: 10
60+
runs-on: ubuntu-latest
61+
steps:
62+
- name: Checkout Code
63+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
64+
- name: Setup Environment
65+
id: setup-env
66+
uses: ./.github/actions/setup-env
67+
- name: Run Spotless
68+
run: |
69+
./cicd/run-spotless \
70+
--modules-to-build="SPANNER"
71+
checkstyle_check:
72+
name: Checkstyle
73+
timeout-minutes: 10
74+
runs-on: ubuntu-latest
75+
steps:
76+
- name: Checkout Code
77+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
78+
- name: Setup Environment
79+
id: setup-env
80+
uses: ./.github/actions/setup-env
81+
- name: Run Checkstyle
82+
run: |
83+
./cicd/run-checkstyle \
84+
--modules-to-build="SPANNER"
8985
java_build:
9086
name: Build
9187
timeout-minutes: 60
9288
runs-on: [self-hosted, it]
9389
steps:
94-
- name: Checkout Code
95-
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
96-
- name: Setup Environment
97-
id: setup-env
98-
uses: ./.github/actions/setup-env
99-
- name: Run Build
100-
run: |
101-
./cicd/run-build \
102-
--modules-to-build="SPANNER"
103-
- name: Cleanup Java Environment
104-
uses: ./.github/actions/cleanup-java-env
105-
106-
# Temporarily disabled the Unit Test job to speed up debugging
107-
# java_unit_tests:
108-
# name: Unit Tests
109-
# needs: [java_build]
110-
# timeout-minutes: 60
111-
# runs-on: [self-hosted, it]
112-
# steps:
113-
# - name: Checkout Code
114-
# uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
115-
# - name: Setup Environment
116-
# id: setup-env
117-
# uses: ./.github/actions/setup-env
118-
# - name: Run Unit Tests
119-
# run: |
120-
# ./cicd/run-unit-tests \
121-
# --modules-to-build="SPANNER"
122-
# - name: Upload Unit Tests Report
123-
# uses: actions/upload-artifact@v4
124-
# if: always()
125-
# with:
126-
# name: surefire-unit-test-results
127-
# path: |
128-
# **/surefire-reports/TEST-*.xml
129-
# **/surefire-reports/*.html
130-
# **/surefire-reports/html/**
131-
# retention-days: 1
132-
# - name: Upload coverage reports to Codecov
133-
# uses: codecov/codecov-action@v5.5.1
134-
# with:
135-
# token: ${{ secrets.CODECOV_TOKEN }}
136-
# slug: GoogleCloudPlatform/DataflowTemplates
137-
# files: 'target/site/jacoco-aggregate/jacoco.xml'
138-
# - name: Cleanup Java Environment
139-
# uses: ./.github/actions/cleanup-java-env
140-
141-
# Temporarily disabled for faster debugging
142-
# java_integration_smoke_tests_templates:
143-
# name: Dataflow Templates Integration Smoke Tests
144-
# needs: [spotless_check, checkstyle_check, java_build, java_unit_tests]
145-
# timeout-minutes: 60
146-
# runs-on: [self-hosted, it]
147-
# steps:
148-
# - name: Checkout Code
149-
# uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
150-
# - name: Setup Environment
151-
# id: setup-env
152-
# uses: ./.github/actions/setup-env
153-
# - name: Run Integration Smoke Tests
154-
# run: |
155-
# ./cicd/run-it-smoke-tests \
156-
# --modules-to-build="SPANNER" \
157-
# --it-region="us-central1" \
158-
# --it-project="cloud-teleport-testing" \
159-
# --it-artifact-bucket="cloud-teleport-testing-it-gitactions" \
160-
# --it-private-connectivity="datastream-connect-2"
161-
# - name: Upload Smoke Tests Report
162-
# uses: actions/upload-artifact@v4
163-
# if: always()
164-
# with:
165-
# name: surefire-smoke-test-results
166-
# path: |
167-
# **/surefire-reports/TEST-*.xml
168-
# **/surefire-reports/*.html
169-
# **/surefire-reports/html/**
170-
# retention-days: 1
171-
# - name: Cleanup Java Environment
172-
# uses: ./.github/actions/cleanup-java-env
173-
174-
java_integration_tests_templates:
175-
name: Dataflow Templates Integration Tests
176-
# Updated dependencies to run directly after build
90+
- name: Checkout Code
91+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
92+
- name: Setup Environment
93+
id: setup-env
94+
uses: ./.github/actions/setup-env
95+
- name: Run Build
96+
run: |
97+
./cicd/run-build \
98+
--modules-to-build="SPANNER"
99+
- name: Cleanup Java Environment
100+
uses: ./.github/actions/cleanup-java-env
101+
java_unit_tests:
102+
name: Unit Tests
177103
needs: [java_build]
178-
timeout-minutes: 180
104+
timeout-minutes: 60
179105
runs-on: [self-hosted, it]
180106
steps:
181-
- name: Checkout Code
182-
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
183-
- name: Setup Environment
184-
id: setup-env
185-
uses: ./.github/actions/setup-env
186-
- name: Run Integration Tests
187-
run: |
188-
./cicd/run-it-tests \
189-
--modules-to-build="SPANNER" \
190-
--it-region="us-central1" \
191-
--it-project="cloud-teleport-testing" \
192-
--it-artifact-bucket="cloud-teleport-testing-it-gitactions" \
193-
--it-private-connectivity="datastream-connect-2" \
194-
--it-module-to-test="v2/spanner-to-sourcedb" \
195-
--it-test-to-run="SpannerToSourceDbIT"
196-
- name: Upload Integration Tests Report
197-
uses: actions/upload-artifact@v4
198-
if: always()
199-
with:
200-
name: surefire-integration-test-results
201-
path: |
107+
- name: Checkout Code
108+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
109+
- name: Setup Environment
110+
id: setup-env
111+
uses: ./.github/actions/setup-env
112+
- name: Run Unit Tests
113+
run: |
114+
./cicd/run-unit-tests \
115+
--modules-to-build="SPANNER"
116+
- name: Upload Unit Tests Report
117+
uses: actions/upload-artifact@v4
118+
if: always() # always run even if the previous step fails
119+
with:
120+
name: surefire-unit-test-results
121+
path: |
202122
**/surefire-reports/TEST-*.xml
203123
**/surefire-reports/*.html
204124
**/surefire-reports/html/**
205-
retention-days: 10
206-
- name: Integration Test report on GitHub
207-
uses: dorny/test-reporter@v2
208-
if: always()
209-
with:
210-
name: Integration Test report on GitHub
211-
path: '**/surefire-reports/TEST-*.xml'
212-
reporter: java-junit
213-
only-summary: 'true'
214-
token: ${{ secrets.GITHUB_TOKEN }}
215-
fail-on-error: 'false'
216-
list-suites: 'failed'
217-
list-tests: 'failed'
218-
- name: Cleanup Java Environment
219-
uses: ./.github/actions/cleanup-java-env
125+
retention-days: 1
126+
- name: Upload coverage reports to Codecov
127+
uses: codecov/codecov-action@v5.5.1
128+
with:
129+
token: ${{ secrets.CODECOV_TOKEN }}
130+
slug: GoogleCloudPlatform/DataflowTemplates
131+
files: 'target/site/jacoco-aggregate/jacoco.xml'
132+
- name: Cleanup Java Environment
133+
uses: ./.github/actions/cleanup-java-env
134+
java_integration_smoke_tests_templates:
135+
name: Dataflow Templates Integration Smoke Tests
136+
needs: [spotless_check, checkstyle_check, java_build, java_unit_tests]
137+
timeout-minutes: 60
138+
# Run on any runner that matches all the specified runs-on values.
139+
runs-on: [self-hosted, it]
140+
steps:
141+
- name: Checkout Code
142+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
143+
- name: Setup Environment
144+
id: setup-env
145+
uses: ./.github/actions/setup-env
146+
- name: Run Integration Smoke Tests
147+
run: |
148+
./cicd/run-it-smoke-tests \
149+
--modules-to-build="SPANNER" \
150+
--it-region="us-central1" \
151+
--it-project="cloud-teleport-testing" \
152+
--it-artifact-bucket="cloud-teleport-testing-it-gitactions" \
153+
--it-private-connectivity="datastream-connect-2"
154+
- name: Upload Smoke Tests Report
155+
uses: actions/upload-artifact@v4
156+
if: always() # always run even if the previous step fails
157+
with:
158+
name: surefire-smoke-test-results
159+
path: |
160+
**/surefire-reports/TEST-*.xml
161+
**/surefire-reports/*.html
162+
**/surefire-reports/html/**
163+
retention-days: 1
164+
- name: Cleanup Java Environment
165+
uses: ./.github/actions/cleanup-java-env
166+
java_integration_tests_templates:
167+
name: Dataflow Templates Integration Tests
168+
needs: [java_integration_smoke_tests_templates]
169+
timeout-minutes: 180
170+
# Run on any runner that matches all the specified runs-on values.
171+
runs-on: [self-hosted, it]
172+
steps:
173+
- name: Checkout Code
174+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
175+
- name: Setup Environment
176+
id: setup-env
177+
uses: ./.github/actions/setup-env
178+
- name: Run Integration Tests
179+
run: |
180+
./cicd/run-it-tests \
181+
--modules-to-build="SPANNER" \
182+
--it-region="us-central1" \
183+
--it-project="cloud-teleport-testing" \
184+
--it-artifact-bucket="cloud-teleport-testing-it-gitactions" \
185+
--it-private-connectivity="datastream-connect-2"
186+
- name: Upload Integration Tests Report
187+
uses: actions/upload-artifact@v4
188+
if: always() # always run even if the previous step fails
189+
with:
190+
name: surefire-integration-test-results
191+
path: |
192+
**/surefire-reports/TEST-*.xml
193+
**/surefire-reports/*.html
194+
**/surefire-reports/html/**
195+
retention-days: 10
196+
- name: Integration Test report on GitHub
197+
uses: dorny/test-reporter@v2
198+
if: always()
199+
with:
200+
name: Integration Test report on GitHub
201+
path: '**/surefire-reports/TEST-*.xml'
202+
reporter: java-junit
203+
only-summary: 'true'
204+
token: ${{ secrets.GITHUB_TOKEN }}
205+
fail-on-error: 'false'
206+
list-suites: 'failed'
207+
list-tests: 'failed'
208+
- name: Cleanup Java Environment
209+
uses: ./.github/actions/cleanup-java-env
220210
java_load_tests_templates:
221211
if: contains(github.event.pull_request.labels.*.name, 'run-load-tests')
222212
name: Dataflow Templates Load Tests
223-
# Updated dependencies
224-
needs: [java_build, java_integration_tests_templates]
213+
needs: [spotless_check, checkstyle_check, java_build, java_unit_tests, java_integration_tests_templates]
225214
timeout-minutes: 600
215+
# Run on any runner that matches all the specified runs-on values.
226216
runs-on: [self-hosted, perf]
227217
steps:
228-
- name: Checkout Code
229-
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
230-
- name: Setup Environment
231-
id: setup-env
232-
uses: ./.github/actions/setup-env
233-
- name: Run Load Tests
234-
run: |
235-
./cicd/run-load-tests \
236-
--modules-to-build="SPANNER" \
237-
--it-region="us-central1" \
238-
--it-project="cloud-teleport-testing" \
239-
--it-artifact-bucket="cloud-teleport-testing-it-gitactions" \
240-
--it-private-connectivity="datastream-connect-2"
241-
- name: Cleanup Java Environment
242-
uses: ./.github/actions/cleanup-java-env
218+
- name: Checkout Code
219+
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
220+
- name: Setup Environment
221+
id: setup-env
222+
uses: ./.github/actions/setup-env
223+
- name: Run Load Tests
224+
run: |
225+
./cicd/run-load-tests \
226+
--modules-to-build="SPANNER" \
227+
--it-region="us-central1" \
228+
--it-project="cloud-teleport-testing" \
229+
--it-artifact-bucket="cloud-teleport-testing-it-gitactions" \
230+
--it-private-connectivity="datastream-connect-2"
231+
- name: Cleanup Java Environment
232+
uses: ./.github/actions/cleanup-java-env

0 commit comments

Comments
 (0)