Skip to content
Closed
Changes from all commits
Commits
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
64 changes: 36 additions & 28 deletions .github/workflows/pull_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ jobs:
format_check_enabled: false
license_header_check_project_name: Swift.org

test-java:
name: Java tests (swift:${{ matrix.swift_version }} jdk:${{matrix.jdk_vendor}} os:${{ matrix.os_version }})
build:
name: Build (swift:${{ matrix.swift_version }} jdk:${{matrix.jdk_vendor}} os:${{ matrix.os_version }})
runs-on: ubuntu-latest
strategy:
fail-fast: true
Expand Down Expand Up @@ -64,18 +64,16 @@ jobs:
restore-keys: |
${{ runner.os }}-swiftpm-cache
${{ runner.os }}-swiftpm-
# run the actual build
- name: Gradle build
run: |
./gradlew build -x test --no-daemon # skip tests
find .
./gradlew build --info --no-daemon

test-swift:
name: Swift tests (swift:${{ matrix.swift_version }} jdk:${{matrix.jdk_vendor}} os:${{ matrix.os_version }})
test-java:
name: Java tests (swift:${{ matrix.swift_version }} jdk:${{matrix.jdk_vendor}} os:${{ matrix.os_version }})
runs-on: ubuntu-latest
needs: build
strategy:
fail-fast: false
fail-fast: true
matrix:
swift_version: ['nightly-main']
os_version: ['jammy']
Expand All @@ -86,23 +84,6 @@ jobs:
JAVA_HOME: "/usr/lib/jvm/default-jdk"
steps:
- uses: actions/checkout@v4
- name: Install System Dependencies
run: apt-get -qq update && apt-get -qq install -y make curl wget
- name: Cache JDK
id: cache-jdk
uses: actions/cache@v4
continue-on-error: true
with:
path: /usr/lib/jvm/default-jdk/
key: ${{ runner.os }}-jdk-${{ matrix.jdk_vendor }}-${{ hashFiles('/usr/lib/jvm/default-jdk/*') }}
restore-keys: |
${{ runner.os }}-jdk-
- name: Install JDK
if: steps.cache-jdk.outputs.cache-hit != 'true'
run: "bash -xc 'JDK_VENDOR=${{ matrix.jdk_vendor }} ./docker/install_jdk.sh'"
# TODO: not using setup-java since incompatible with the swiftlang/swift base image
- name: Install Untested Nightly Swift
run: "bash -xc './docker/install_untested_nightly_swift.sh'"
- name: Cache local Gradle repository
uses: actions/cache@v4
continue-on-error: true
Expand All @@ -123,9 +104,36 @@ jobs:
${{ runner.os }}-swiftpm-cache
${{ runner.os }}-swiftpm-
# run the actual build
- name: Generate sources (make) (Temporary)
# TODO: this should be triggered by the respective builds
run: "make jextract-generate"
- name: Gradle test
run: |
./gradlew build --info --no-daemon

test-swift:
name: Swift tests (swift:${{ matrix.swift_version }} jdk:${{matrix.jdk_vendor}} os:${{ matrix.os_version }})
runs-on: ubuntu-latest
needs: build
strategy:
fail-fast: false
matrix:
swift_version: ['nightly-main']
os_version: ['jammy']
jdk_vendor: ['Corretto']
container:
image: ${{ (contains(matrix.swift_version, 'nightly') && 'swiftlang/swift') || 'swift' }}:${{ matrix.swift_version }}-${{ matrix.os_version }}
env:
JAVA_HOME: "/usr/lib/jvm/default-jdk"
steps:
- uses: actions/checkout@v4
- name: Cache local SwiftPM repository
uses: actions/cache@v4
continue-on-error: true
with:
path: /__w/swift-java/swift-java/.build/checkouts
key: ${{ runner.os }}-swiftpm-cache-${{ hashFiles('Package.swift') }}
restore-keys: |
${{ runner.os }}-swiftpm-cache
${{ runner.os }}-swiftpm-
# run the actual build
- name: Test Swift
run: "swift test"
- name: Build (Swift) Sample Apps
Expand Down
Loading