From e45bdc34f5dd9b35409d4866af6201f443187998 Mon Sep 17 00:00:00 2001 From: Fabrice Drouin Date: Mon, 16 Sep 2024 16:13:39 +0200 Subject: [PATCH] Update CI scripts (#698) * Update CI scripts * Disable macos arm64 electrum tests that require support for SSL connections ktor client does not support SSL sockets on native platforms. --- .github/workflows/release.yml | 24 +++++++++++++++++------- .github/workflows/snapshot.yml | 24 +++++++++++++++++------- .github/workflows/test.yml | 9 +++++---- build.gradle.kts | 2 +- 4 files changed, 40 insertions(+), 19 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 2ba25098f..968d42add 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -14,17 +14,17 @@ jobs: os: [ubuntu-latest, macOS-latest] steps: - name: Check out - uses: actions/checkout@v2 + uses: actions/checkout@v4 with: submodules: 'true' - name: Cached Konan - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: ~/.konan key: ${{ runner.os }}-konan-${{ hashFiles('**/*.gradle*') }}-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }} restore-keys: ${{ runner.os }}-konan- - name: Cached Gradle - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: ~/.gradle key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }} @@ -35,9 +35,10 @@ jobs: sudo apt-get update -y sudo apt install -y libcurl4-gnutls-dev - name: Set up JDK 11 - uses: actions/setup-java@v1 + uses: actions/setup-java@v4 with: java-version: 11 + distribution: 'adopt' - name: Check run: ./gradlew check - name: Publish Linux @@ -52,10 +53,19 @@ jobs: run: | mkdir -p maven-local/release cp -r ~/.m2/repository/* maven-local/release - - name: Upload artifacts - uses: actions/upload-artifact@v2 + - name: Upload linux artifacts + if: matrix.os == 'ubuntu-latest' + uses: actions/upload-artifact@v4 + with: + name: release-linux + path: | + maven-local + !maven-local/**/maven-metadata-local.xml + - name: Upload macos artifacts + if: matrix.os == 'macOS-latest' + uses: actions/upload-artifact@v4 with: - name: release + name: release-macos path: | maven-local !maven-local/**/maven-metadata-local.xml diff --git a/.github/workflows/snapshot.yml b/.github/workflows/snapshot.yml index 1187abd71..79530aa3f 100644 --- a/.github/workflows/snapshot.yml +++ b/.github/workflows/snapshot.yml @@ -22,17 +22,17 @@ jobs: os: [ubuntu-latest, macOS-latest] steps: - name: Check out - uses: actions/checkout@v2 + uses: actions/checkout@v4 with: submodules: 'true' - name: Cached Konan - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: ~/.konan key: ${{ runner.os }}-konan-${{ hashFiles('**/*.gradle*') }}-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }} restore-keys: ${{ runner.os }}-konan- - name: Cached Gradle - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: ~/.gradle key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }} @@ -43,9 +43,10 @@ jobs: sudo apt-get update -y sudo apt install -y libcurl4-gnutls-dev - name: Set up JDK 11 - uses: actions/setup-java@v1 + uses: actions/setup-java@v4 with: java-version: 11 + distribution: 'adopt' - name: Check run: ./gradlew check - name: Publish Linux to Maven Local @@ -60,10 +61,19 @@ jobs: run: | mkdir -p maven-local/snapshot cp -r ~/.m2/repository/* maven-local/snapshot - - name: Upload artifacts - uses: actions/upload-artifact@v2 + - name: Upload linux artifacts + if: matrix.os == 'ubuntu-latest' + uses: actions/upload-artifact@v4 + with: + name: snapshot-linux + path: | + maven-local + !maven-local/**/maven-metadata-local.xml + - name: Upload macos artifacts + uses: actions/upload-artifact@v4 + if: matrix.os == 'macOS-latest' with: - name: snapshot + name: snapshot-macos path: | maven-local !maven-local/**/maven-metadata-local.xml diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index df3c6ba08..1a2ad74db 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -31,19 +31,19 @@ jobs: # 1 - checkout repositories - name: Check out - uses: actions/checkout@v2 + uses: actions/checkout@v4 with: submodules: 'true' # 2 - setup cache and tools - name: Cached Konan - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: ~/.konan key: ${{ runner.os }}-konan-${{ hashFiles('**/*.gradle*') }}-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }} restore-keys: ${{ runner.os }}-konan- - name: Cached Gradle - uses: actions/cache@v2 + uses: actions/cache@v4 with: path: ~/.gradle key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }} @@ -54,9 +54,10 @@ jobs: sudo apt-get update -y sudo apt install -y libcurl4-gnutls-dev - name: Set up JDK 11 - uses: actions/setup-java@v1 + uses: actions/setup-java@v4 with: java-version: 11 + distribution: 'adopt' # 4 - tests - name: Check with integration diff --git a/build.gradle.kts b/build.gradle.kts index 93b64388c..0cd4d473d 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -304,7 +304,7 @@ tasks.withType { // Those tests use TLS sockets which are not supported on Linux and MacOS tasks .filterIsInstance() - .filter { it.name == "macosX64Test" || it.name == "linuxX64Test" } + .filter { it.name == "macosX64Test" || it.name == "macosArm64Test" || it.name == "linuxX64Test" } .map { it.filter.excludeTestsMatching("*IntegrationTest") it.filter.excludeTestsMatching("*ElectrumClientTest")