Skip to content

fixup: wip implementing pmtud #531

fixup: wip implementing pmtud

fixup: wip implementing pmtud #531

Workflow file for this run

# .github/workflows/ci.yml
name: CI
on:
push:
branches:
- "**"
pull_request:
branches: [main]
jobs:
earthly:
runs-on: ubuntu-22.04
strategy:
matrix:
distro: [bullseye, bookworm]
env:
FORCE_COLOR: 1
steps:
- uses: earthly/actions/setup-earthly@v1
with:
version: v0.7.20
- uses: actions/checkout@v3
- name: Put back the git branch into git (Earthly uses it for tagging)
run: |
branch=""
if [ -n "$GITHUB_HEAD_REF" ]; then
branch="$GITHUB_HEAD_REF"
else
branch="${GITHUB_REF##*/}"
fi
git checkout -b "$branch" || true
- name: Run build
run: earthly --ci +all --distro=${{ matrix.distro }}
linux:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- name: Install Ceedling
run: sudo gem install ceedling --no-user-install
- name: Build dependencies
run: ceedling project:linux verbosity[4] clobber dependencies:make
- name: Run wolfSSL Tests
run: |
cd third_party/wolfssl
./wolfcrypt/test/testwolfcrypt
- name: Run build and test
run: ceedling project:linux verbosity[4] test:all
linux-386:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- name: Install Ceedling
run: sudo gem install ceedling --no-user-install
- name: Install gcc multi lib
run: |
sudo apt update
sudo apt install -y gcc-multilib
- name: Build dependencies
run: ceedling project:linux_386 verbosity[4] clobber dependencies:make
- name: Run wolfSSL Tests
run: |
cd third_party/wolfssl
./wolfcrypt/test/testwolfcrypt
- name: Run build and test
run: ceedling project:linux_386 verbosity[4] test:all
linux-arm64:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- name: Install Ceedling
run: sudo gem install ceedling --no-user-install
- name: Install ARM Tools
run: |
sudo apt update
sudo apt install -y crossbuild-essential-arm64 qemu-user
- name: Build dependencies
run: CROSS_COMPILE="aarch64-linux-gnu" CC="aarch64-linux-gnu-gcc" ceedling project:linux_arm64 verbosity[4] clobber dependencies:make
- name: Run wolfSSL Tests
run: |
cd third_party/wolfssl
QEMU_LD_PREFIX=/usr/aarch64-linux-gnu ./wolfcrypt/test/testwolfcrypt
- name: Run build
run: CC="aarch64-linux-gnu-gcc" ceedling project:linux_arm64 verbosity[4] release
linux-arm:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- name: Install Ceedling
run: sudo gem install ceedling --no-user-install
- name: Install ARM Tools
run: |
sudo apt update
sudo apt install -y crossbuild-essential-armhf qemu-user
- name: Build dependencies
run: CROSS_COMPILE="arm-linux-gnueabihf" CC="arm-linux-gnueabihf-gcc" ceedling project:linux_arm verbosity[4] clobber dependencies:make
- name: Run wolfSSL Tests
run: |
cd third_party/wolfssl
QEMU_LD_PREFIX=/usr/arm-linux-gnueabihf ./wolfcrypt/test/testwolfcrypt
- name: Run build
run: CC="arm-linux-gnueabihf-gcc" ceedling project:linux_arm verbosity[4] release
linux-arm-no-pqc:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- name: Install Ceedling
run: sudo gem install ceedling --no-user-install
- name: Install ARM Tools
run: |
sudo apt update
sudo apt install -y crossbuild-essential-armhf qemu-user
- name: Build dependencies
run: CROSS_COMPILE="arm-linux-gnueabihf" CC="arm-linux-gnueabihf-gcc" ceedling project:linux_arm_no_pqc verbosity[4] clobber dependencies:make
- name: Run wolfSSL Tests
run: |
cd third_party/wolfssl
QEMU_LD_PREFIX=/usr/arm-linux-gnueabihf ./wolfcrypt/test/testwolfcrypt
- name: Run build
run: CC="arm-linux-gnueabihf-gcc" ceedling project:linux_arm_no_pqc verbosity[4] release
macos:
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- name: Install Ceedling
run: sudo gem install ceedling --no-user-install
- name: Install automake
run: HOMEBREW_NO_AUTO_UPDATE=1 brew install autoconf automake libtool
- name: Build dependencies
run: ceedling project:macos verbosity[4] clobber dependencies:make
- name: Run build and test
run: ceedling project:macos verbosity[4] test:all
macos_arm64:
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- name: Install Ceedling
run: sudo gem install ceedling --no-user-install
- name: Install automake
run: HOMEBREW_NO_AUTO_UPDATE=1 brew install autoconf automake libtool
- name: Build dependencies
run: ceedling project:macos_arm64 verbosity[4] clobber dependencies:make
- name: Run build
run: ceedling project:macos_arm64 verbosity[4] release
windows-64bit:
runs-on: windows-2022
steps:
- uses: actions/checkout@v3
- name: Install Ceedling
run: gem install ceedling --no-user-install
- name: Check Ceedling version
run: ceedling version
- name: Set up Visual Studio shell
uses: egor-tensin/vs-shell@v2
with:
arch: x64
- name: Build dependencies
run: ceedling project:windows_64 verbosity[4] clobber dependencies:make
- name: Run build and test
run: ceedling project:windows_64 verbosity[4] test:all
windows-32bit:
runs-on: windows-2022
steps:
- uses: actions/checkout@v3
- name: Install Ceedling
run: gem install ceedling --no-user-install
- name: Check Ceedling version
run: ceedling version
- name: Set up Visual Studio shell
uses: egor-tensin/vs-shell@v2
with:
arch: x86
- name: Build dependencies
run: ceedling project:windows_32 verbosity[4] clobber dependencies:make
- name: Run build and test
run: ceedling project:windows_32 verbosity[4] test:all
ios:
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- name: Install Ceedling
run: sudo gem install ceedling --no-user-install
- name: Install automake
run: HOMEBREW_NO_AUTO_UPDATE=1 brew install autoconf automake libtool
- name: Run build
run: ceedling project:ios verbosity[4] release
- name: Copy all public headers into the umbrella framework
run: cp public/*.h ios/Lightway/Lightway
- name: Build xcframework
run: |
cd ios/Lightway
./build-xcframework.sh
tvos:
env:
DEVELOPER_DIR: /Applications/Xcode_15.0.app/Contents/Developer
runs-on: macos-13
steps:
- uses: actions/checkout@v3
- name: Install Ceedling
run: sudo gem install ceedling --no-user-install
- name: Install automake
run: HOMEBREW_NO_AUTO_UPDATE=1 brew install autoconf automake libtool
- name: Run build
run: ceedling project:tvos verbosity[4] release
android-armeabi-v7a:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- name: Install Ceedling
run: sudo gem install ceedling --no-user-install
- name: Run build
run: |
source android/android_env.sh armeabi-v7a
ceedling project:android verbosity[4] release
android-arm64-v8a:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- name: Install Ceedling
run: sudo gem install ceedling --no-user-install
- name: Run build
run: |
source android/android_env.sh arm64-v8a
ceedling project:android verbosity[4] release
android-x86:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- name: Install Ceedling
run: sudo gem install ceedling --no-user-install
- name: Run build
run: |
source android/android_env.sh x86
ceedling project:android verbosity[4] release
android-x86_64:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
- name: Install Ceedling
run: sudo gem install ceedling --no-user-install
- name: Run build
run: |
source android/android_env.sh x86_64
ceedling project:android verbosity[4] release