porting compatibility fixes from cryptotests #174
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: "test" | |
on: | |
pull_request: | |
branches: | |
- "*" | |
push: | |
branches: | |
- "*" | |
jobs: | |
test-linux: | |
name: "Linux Jtreg" | |
runs-on: "ubuntu-latest" | |
strategy: | |
fail-fast: false | |
matrix: | |
jdkconf: | |
- JDK 8 | |
- JDK 11 | |
- JDK 17 | |
- JDK 21 | |
include: | |
- jdkconf: JDK 8 | |
jdkver: "8" | |
- jdkconf: JDK 11 | |
jdkver: "11" | |
- jdkconf: JDK 17 | |
jdkver: "17" | |
- jdkconf: JDK 21 | |
jdkver: "21" | |
steps: | |
- uses: actions/checkout@v3 | |
- name: "Install dependencies" | |
run: | | |
sudo apt-get update | |
sudo apt-get install make openssl gnutls-bin libnss3 libnss3-tools libnss3-dev gcc pkg-config | |
- name: Set up JDK | |
uses: actions/setup-java@v3 | |
with: | |
distribution: 'temurin' | |
java-version: ${{ matrix.jdkver}} | |
- name: Run | |
run: ./run.sh "${JAVA_HOME}" | |
- name: Upload results | |
if: ${{ always() }} | |
uses: actions/upload-artifact@v3 | |
with: | |
path: "test.*.tar.gz" | |
test-macos: | |
name: "MacOS Jtreg" | |
runs-on: "macos-latest" | |
strategy: | |
fail-fast: false | |
matrix: | |
jdkconf: | |
- JDK 8 | |
- JDK 11 | |
- JDK 17 | |
- JDK 21 | |
include: | |
- jdkconf: JDK 8 | |
jdkver: "8" | |
- jdkconf: JDK 11 | |
jdkver: "11" | |
- jdkconf: JDK 17 | |
jdkver: "17" | |
- jdkconf: JDK 21 | |
jdkver: "21" | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up JDK | |
uses: actions/setup-java@v3 | |
with: | |
distribution: 'temurin' | |
java-version: ${{ matrix.jdkver}} | |
- name: Run | |
run: ./run.sh "${JAVA_HOME}" | |
- name: Upload results | |
if: ${{ always() }} | |
uses: actions/upload-artifact@v3 | |
with: | |
path: "test.*.tar.gz" | |
test-windows-cygwin: | |
name: "Windows-cygwin Jtreg" | |
runs-on: "windows-latest" | |
defaults: | |
run: | |
shell: C:\tools\cygwin\bin\bash.exe --login --norc -o igncr '{0}' | |
strategy: | |
fail-fast: false | |
matrix: | |
jdkconf: | |
- JDK 8 | |
- JDK 11 | |
- JDK 17 | |
- JDK 21 | |
include: | |
- jdkconf: JDK 8 | |
jdkver: "8" | |
- jdkconf: JDK 11 | |
jdkver: "11" | |
- jdkconf: JDK 17 | |
jdkver: "17" | |
- jdkconf: JDK 21 | |
jdkver: "21" | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Cygwin | |
uses: egor-tensin/setup-cygwin@v4 | |
with: | |
packages: wget tar bash dos2unix make openssl gnutls-bin libnss3 libnss3-tools libnss3-dev gcc pkg-config | |
- name: Set up JDK | |
uses: actions/setup-java@v3 | |
with: | |
distribution: 'temurin' | |
java-version: ${{ matrix.jdkver}} | |
- name: Run | |
run: | | |
set -ex | |
cd "$GITHUB_WORKSPACE" ; pwd; ls -l | |
echo "it seems default shell do not honour -o igncr nor --norc" | |
dos2unix -v run.sh | |
find . -type f -name "*.sh" -exec dos2unix -v {} \; | |
bash.exe --login --norc -o igncr -c "cd \"$GITHUB_WORKSPACE\" && ./run.sh \"${JAVA_HOME}\"" | |
- name: Upload results | |
if: ${{ always() }} | |
uses: actions/upload-artifact@v3 | |
with: | |
path: "test.*.tar.gz" | |
# test-windows-msys2: | |
# name: "Windows-msys2 Jtreg" | |
# runs-on: "windows-latest" | |
# strategy: | |
# fail-fast: false | |
# matrix: | |
# jdkconf: | |
# - JDK 8 | |
# - JDK 11 | |
# - JDK 17 | |
# - JDK 21 | |
# include: | |
# - jdkconf: JDK 8 | |
# jdkver: "8" | |
# - jdkconf: JDK 11 | |
# jdkver: "11" | |
# - jdkconf: JDK 17 | |
# jdkver: "17" | |
# - jdkconf: JDK 21 | |
# jdkver: "21" | |
# steps: | |
# - uses: actions/checkout@v3 | |
# - name: Set up JDK | |
# uses: actions/setup-java@v3 | |
# with: | |
# distribution: 'temurin' | |
# java-version: ${{ matrix.jdkver}} | |
# - uses: msys2/setup-msys2@v2 | |
# with: | |
# update: true | |
# install: wget tar make | |
# - name: Prepare env | |
# shell: msys2 {0} | |
# run: PATH="/usr/bin:$PATH" BASH_EXECUTABLE=/usr/bin/bash /usr/bin/bash ./run.sh "${JAVA_HOME}" | |
# - name: Upload results | |
# if: ${{ always() }} | |
# uses: actions/upload-artifact@v3 | |
# with: | |
# path: "test.*.tar.gz" | |
test-linux-SSLContextInfo-SSLSocketInfo-ssl-tests: | |
name: "Linux SSLContextInfo SSLSocketInfo ssl-tests" | |
runs-on: "ubuntu-latest" | |
strategy: | |
fail-fast: false | |
matrix: | |
jdkconf: | |
- JDK 8 | |
- JDK 11 | |
- JDK 17 | |
- JDK 21 | |
include: | |
- jdkconf: JDK 8 | |
jdkver: "8" | |
- jdkconf: JDK 11 | |
jdkver: "11" | |
- jdkconf: JDK 17 | |
jdkver: "17" | |
- jdkconf: JDK 21 | |
jdkver: "21" | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up JDK | |
uses: actions/setup-java@v3 | |
with: | |
distribution: 'temurin' | |
java-version: ${{ matrix.jdkver}} | |
- name: Run | |
run: make SSLContextInfo SSLSocketInfo ssl-tests | |
test-linux-pkcs11-nss-fips: | |
name: "Linux SunPKCS11-NSS-FIPS" | |
runs-on: "ubuntu-latest" | |
strategy: | |
fail-fast: false | |
matrix: | |
jdkconf: | |
- JDK 8 | |
- JDK 11 | |
- JDK 17 | |
- JDK 21 | |
include: | |
- jdkconf: JDK 8 | |
jdkver: "8" | |
- jdkconf: JDK 11 | |
jdkver: "11" | |
- jdkconf: JDK 17 | |
jdkver: "17" | |
- jdkconf: JDK 21 | |
jdkver: "21" | |
steps: | |
- name: "Install nss" | |
run: | | |
sudo apt-get update | |
sudo apt-get install libnss3 libnss3-tools | |
- uses: actions/checkout@v3 | |
- name: Set up JDK | |
uses: actions/setup-java@v3 | |
with: | |
distribution: 'temurin' | |
java-version: ${{ matrix.jdkver }} | |
- name: Run | |
run: | | |
make ssl-tests TEST_PKCS11_FIPS=1 | |
test-linux-openssl-client: | |
name: "Linux openssl client" | |
runs-on: "ubuntu-latest" | |
strategy: | |
fail-fast: false | |
matrix: | |
jdkconf: | |
- JDK 8 | |
- JDK 11 | |
- JDK 17 | |
- JDK 21 | |
include: | |
- jdkconf: JDK 8 | |
jdkver: "8" | |
- jdkconf: JDK 11 | |
jdkver: "11" | |
- jdkconf: JDK 17 | |
jdkver: "17" | |
- jdkconf: JDK 21 | |
jdkver: "21" | |
steps: | |
- name: "Install openssl" | |
run: | | |
sudo apt-get update | |
sudo apt-get install openssl | |
- uses: actions/checkout@v3 | |
- name: Set up JDK | |
uses: actions/setup-java@v3 | |
with: | |
distribution: 'temurin' | |
java-version: ${{ matrix.jdkver }} | |
- name: Run | |
run: make ssl-tests SSLTESTS_USE_OPENSSL_CLIENT=1 | |
test-linux-gnutls-client: | |
name: "Linux gnutls client" | |
runs-on: "ubuntu-latest" | |
strategy: | |
fail-fast: false | |
matrix: | |
jdkconf: | |
- JDK 8 | |
- JDK 11 | |
- JDK 17 | |
- JDK 21 | |
include: | |
- jdkconf: JDK 8 | |
jdkver: "8" | |
- jdkconf: JDK 11 | |
jdkver: "11" | |
- jdkconf: JDK 17 | |
jdkver: "17" | |
- jdkconf: JDK 21 | |
jdkver: "21" | |
steps: | |
- name: "Install gnutls" | |
run: | | |
sudo apt-get update | |
sudo apt-get install gnutls-bin | |
- uses: actions/checkout@v3 | |
- name: Set up JDK | |
uses: actions/setup-java@v3 | |
with: | |
distribution: 'temurin' | |
java-version: ${{ matrix.jdkver }} | |
- name: Run | |
run: make ssl-tests SSLTESTS_USE_GNUTLS_CLIENT=1 | |
test-linux-nss-client: | |
name: "Linux nss client" | |
runs-on: "ubuntu-latest" | |
strategy: | |
fail-fast: false | |
matrix: | |
jdkconf: | |
- JDK 8 | |
- JDK 11 | |
- JDK 17 | |
- JDK 21 | |
include: | |
- jdkconf: JDK 8 | |
jdkver: "8" | |
- jdkconf: JDK 11 | |
jdkver: "11" | |
- jdkconf: JDK 17 | |
jdkver: "17" | |
- jdkconf: JDK 21 | |
jdkver: "21" | |
steps: | |
- name: "Install nss" | |
run: | | |
sudo apt-get update | |
sudo apt-get install libnss3-tools libnss3-dev gcc pkg-config | |
if ! type listsuites ; then | |
curl -L -f -o listsuites.c https://raw.githubusercontent.com/servo/nss/949eb9848f4fa5f83756f3ab7fdf9b0d3f20d37f/cmd/listsuites/listsuites.c | |
gcc $( pkg-config --cflags nss ) -o listsuites listsuites.c $( pkg-config --libs nss ) | |
sudo cp -a listsuites /usr/bin/ | |
rm -f listsuites listsuites.c | |
fi | |
- uses: actions/checkout@v3 | |
- name: Set up JDK | |
uses: actions/setup-java@v3 | |
with: | |
distribution: 'temurin' | |
java-version: ${{ matrix.jdkver }} | |
- name: Run | |
run: make ssl-tests SSLTESTS_USE_NSS_CLIENT=1 | |
test-linux-bcjsse: | |
name: "Linux BCJSSE" | |
runs-on: "ubuntu-latest" | |
strategy: | |
fail-fast: false | |
matrix: | |
jdkconf: | |
- JDK 8 | |
- JDK 11 | |
- JDK 17 | |
- JDK 21 | |
include: | |
- jdkconf: JDK 8 | |
jdkver: "8" | |
- jdkconf: JDK 11 | |
jdkver: "11" | |
- jdkconf: JDK 17 | |
jdkver: "17" | |
- jdkconf: JDK 21 | |
jdkver: "21" | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up JDK | |
uses: actions/setup-java@v3 | |
with: | |
distribution: 'temurin' | |
java-version: ${{ matrix.jdkver }} | |
- name: Run | |
run: make ssl-tests TEST_BCJSSE=1 | |
test-linux-bcfips: | |
name: "Linux BCFIPS" | |
runs-on: "ubuntu-latest" | |
strategy: | |
fail-fast: false | |
matrix: | |
jdkconf: | |
- JDK 8 | |
- JDK 11 | |
- JDK 17 | |
- JDK 21 | |
include: | |
- jdkconf: JDK 8 | |
jdkver: "8" | |
- jdkconf: JDK 11 | |
jdkver: "11" | |
- jdkconf: JDK 17 | |
jdkver: "17" | |
- jdkconf: JDK 21 | |
jdkver: "21" | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up JDK | |
uses: actions/setup-java@v3 | |
with: | |
distribution: 'temurin' | |
java-version: ${{ matrix.jdkver }} | |
- name: Run | |
run: make ssl-tests TEST_BCFIPS=1 | |
test-linux-bc-2nd: | |
name: "Linux BC 2ND" | |
runs-on: "ubuntu-latest" | |
strategy: | |
fail-fast: false | |
matrix: | |
jdkconf: | |
- JDK 8 | |
- JDK 11 | |
- JDK 17 | |
- JDK 21 | |
include: | |
- jdkconf: JDK 8 | |
jdkver: "8" | |
- jdkconf: JDK 11 | |
jdkver: "11" | |
- jdkconf: JDK 17 | |
jdkver: "17" | |
- jdkconf: JDK 21 | |
jdkver: "21" | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up JDK | |
uses: actions/setup-java@v3 | |
with: | |
distribution: 'temurin' | |
java-version: ${{ matrix.jdkver }} | |
- name: Run | |
# Legacy algorithms used for keystore as workaround to BC issue: | |
# https://github.com/bcgit/bc-java/issues/958 | |
run: make ssl-tests TEST_BC_2ND=1 KEYSTORE_PKCS12_LEGACY=1 | |
test-windows-msys2-SSLContextInfo-SSLSocketInfo-ssl-tests: | |
name: "Window msys2 SSLContextInfo SSLSocketInfo ssl-tests" | |
runs-on: "windows-latest" | |
strategy: | |
fail-fast: false | |
matrix: | |
jdkconf: | |
- JDK 8 | |
- JDK 11 | |
- JDK 17 | |
- JDK 21 | |
include: | |
- jdkconf: JDK 8 | |
jdkver: "8" | |
- jdkconf: JDK 11 | |
jdkver: "11" | |
- jdkconf: JDK 17 | |
jdkver: "17" | |
- jdkconf: JDK 21 | |
jdkver: "21" | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up JDK | |
uses: actions/setup-java@v3 | |
with: | |
distribution: 'temurin' | |
java-version: ${{ matrix.jdkver }} | |
- uses: msys2/setup-msys2@v2 | |
with: | |
update: true | |
install: make | |
- name: Run | |
run: make SSLContextInfo SSLSocketInfo ssl-tests | |
test-macos-SSLContextInfo-SSLSocketInfo-ssl-tests: | |
name: "MacOS SSLContextInfo SSLSocketInfo ssl-tests" | |
runs-on: "macos-latest" | |
strategy: | |
fail-fast: false | |
matrix: | |
jdkconf: | |
- JDK 8 | |
- JDK 11 | |
- JDK 17 | |
- JDK 21 | |
include: | |
- jdkconf: JDK 8 | |
jdkver: "8" | |
- jdkconf: JDK 11 | |
jdkver: "11" | |
- jdkconf: JDK 17 | |
jdkver: "17" | |
- jdkconf: JDK 21 | |
jdkver: "21" | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up JDK | |
uses: actions/setup-java@v3 | |
with: | |
distribution: 'temurin' | |
java-version: ${{ matrix.jdkver}} | |
- name: Run | |
run: make SSLContextInfo SSLSocketInfo ssl-tests |