Skip to content

Commit e2895f0

Browse files
Vova Kolmakovclaude
andcommitted
ci: add Makefile and GitHub Actions workflow for PR checks
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent d5c0aa0 commit e2895f0

3 files changed

Lines changed: 95 additions & 0 deletions

File tree

.github/workflows/flink.yml

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
name: Flink CI
2+
3+
on:
4+
push:
5+
branches: [main]
6+
paths-ignore:
7+
- '**.md'
8+
- 'docs/**'
9+
pull_request:
10+
types: [opened, synchronize, ready_for_review, reopened]
11+
paths-ignore:
12+
- '**.md'
13+
- 'docs/**'
14+
15+
concurrency:
16+
group: ${{ github.workflow }}-${{ github.ref }}
17+
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
18+
19+
jobs:
20+
lint:
21+
runs-on: ubuntu-24.04
22+
timeout-minutes: 10
23+
steps:
24+
- uses: actions/checkout@v4
25+
- name: Set up JDK
26+
uses: actions/setup-java@v4
27+
with:
28+
distribution: temurin
29+
java-version: '11'
30+
cache: maven
31+
- name: Run lint
32+
run: make lint
33+
34+
build-and-test:
35+
runs-on: ubuntu-24.04
36+
timeout-minutes: 30
37+
steps:
38+
- uses: actions/checkout@v4
39+
- name: Set up JDK
40+
uses: actions/setup-java@v4
41+
with:
42+
distribution: temurin
43+
java-version: '11'
44+
cache: maven
45+
- name: Install
46+
run: make install
47+
- name: Test
48+
run: make test

Makefile

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
SHELL := /bin/bash
2+
MAVEN := mvn
3+
4+
.PHONY: install test build bundle clean lint format \
5+
install-all test-all build-all help
6+
7+
help:
8+
@echo "Available targets:"
9+
@echo " install Install artifact to local .m2 (skip tests)"
10+
@echo " test Run unit and integration tests"
11+
@echo " build Run lint + install"
12+
@echo " bundle Build shaded fat-jar (skip tests)"
13+
@echo " clean Remove target/"
14+
@echo " lint Run Spotless and Checkstyle checks"
15+
@echo " format Apply Spotless formatting in place"
16+
@echo " install-all Alias of install (reserved for future multi-module matrix)"
17+
@echo " test-all Alias of test (reserved for future multi-module matrix)"
18+
@echo " build-all Alias of build (reserved for future multi-module matrix)"
19+
20+
install:
21+
$(MAVEN) install -DskipTests
22+
23+
test:
24+
$(MAVEN) test
25+
26+
build:
27+
$(MAKE) lint
28+
$(MAKE) install
29+
30+
bundle:
31+
$(MAVEN) package -DskipTests
32+
33+
clean:
34+
$(MAVEN) clean
35+
36+
lint:
37+
$(MAVEN) spotless:check checkstyle:check
38+
39+
format:
40+
$(MAVEN) spotless:apply
41+
42+
install-all: install
43+
test-all: test
44+
build-all: build

pom.xml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -257,6 +257,9 @@
257257
<artifactId>maven-surefire-plugin</artifactId>
258258
<version>3.1.2</version>
259259
<configuration>
260+
<!-- @{argLine} preserves the JaCoCo agent; the add-opens flag lets
261+
Arrow reach java.nio off-heap memory on JDK 9+ (build runs on JDK 11+). -->
262+
<argLine>@{argLine} --add-opens=java.base/java.nio=ALL-UNNAMED</argLine>
260263
</configuration>
261264
</plugin>
262265

0 commit comments

Comments
 (0)