mirror of
https://github.com/wolfSSL/wolfssl.git
synced 2026-07-06 01:40:48 +02:00
058f506407
The v6.4.3_rel version was repeated in the cache path, cache key, download URL and extract command. Define it once as a workflow-level env var and reference it everywhere.
74 lines
2.6 KiB
YAML
74 lines
2.6 KiB
YAML
name: ThreadXBuild Test
|
|
|
|
on:
|
|
push:
|
|
branches: [ 'release/**' ]
|
|
pull_request:
|
|
types: [opened, synchronize, reopened, ready_for_review]
|
|
branches: [ '*' ]
|
|
# Daily run on master reseeds the shared cache (see save step below).
|
|
schedule:
|
|
- cron: '20 5 * * *'
|
|
|
|
env:
|
|
NETXDUO_REF: v6.4.3_rel
|
|
|
|
jobs:
|
|
build:
|
|
if: ${{ github.event_name != 'pull_request' || github.event.pull_request.draft == false }}
|
|
|
|
runs-on: ubuntu-24.04
|
|
timeout-minutes: 10
|
|
|
|
steps:
|
|
- name: Restore NetXDuo bundle cache
|
|
id: cache-netxduo
|
|
uses: actions/cache/restore@v5
|
|
with:
|
|
path: ./${{ env.NETXDUO_REF }}.tar.gz
|
|
key: netxduo-bundle-${{ env.NETXDUO_REF }}
|
|
|
|
- name: Download NetXDuo bundle if not cached
|
|
if: steps.cache-netxduo.outputs.cache-hit != 'true'
|
|
run: |
|
|
wget https://github.com/eclipse-threadx/netxduo/archive/refs/tags/${{ env.NETXDUO_REF }}.tar.gz
|
|
|
|
# Only master (the daily schedule) saves, so all PRs share one entry.
|
|
- name: Save NetXDuo bundle cache
|
|
if: github.ref == 'refs/heads/master' && steps.cache-netxduo.outputs.cache-hit != 'true'
|
|
uses: actions/cache/save@v5
|
|
with:
|
|
path: ./${{ env.NETXDUO_REF }}.tar.gz
|
|
key: netxduo-bundle-${{ env.NETXDUO_REF }}
|
|
|
|
- name: Extract NetXDuo bundle
|
|
run: |
|
|
mkdir -p netxduo_src
|
|
tar -xzf ${{ env.NETXDUO_REF }}.tar.gz -C netxduo_src --strip-components=1
|
|
|
|
- name: Install NetXDuo Dependencies
|
|
working-directory: ./netxduo_src
|
|
run: |
|
|
./scripts/install.sh
|
|
|
|
- name: Configure NetX with DNS Client Support
|
|
working-directory: ./netxduo_src
|
|
run: |
|
|
cp addons/dns/nxd_dns.h ./common/inc/
|
|
cp addons/dns/nxd_dns.c ./common/src/
|
|
|
|
- name: Build NetXDuo with DNS Support
|
|
working-directory: ./netxduo_src
|
|
run: |
|
|
rm -rf test/cmake/threadx
|
|
rm -rf test/cmake/filex
|
|
./scripts/build_nxd64.sh
|
|
|
|
- name: Build wolfSSL
|
|
uses: wolfSSL/actions-build-autotools-project@v1
|
|
with:
|
|
path: wolfssl
|
|
configure: --enable-enckeys --disable-examples --disable-benchmark --disable-crypttests CPPFLAGS="-DTHREADX -DHAVE_NETX -DWOLFSSL_USER_IO -I${{ github.workspace }}/netxduo_src/common/inc -I${{ github.workspace }}/netxduo_src/ports/linux/gnu/inc -I${{ github.workspace }}/netxduo_src/test/cmake/netxduo64/build/libs/inc" LDFLAGS="-L${{ github.workspace }}/netxduo_src/test/cmake/netxduo64/build/default_build_coverage/netxduo -L${{ github.workspace }}/netxduo_src/test/cmake/netxduo64/build/libs/threadx" LIBS="-lnetxduo -lthreadx"
|
|
install: false
|
|
|