Skip to content

Network

Network #33539

Workflow file for this run

name: Network
on:
pull_request:
branches:
- master
- develop
schedule:
- cron: "0 * * * *"
jobs:
build:
name: Check Network
runs-on: macOS-latest
steps:
- name: Install automake
run: |
brew install automake
- name: Checkout DashSync
uses: actions/checkout@v3
with:
path: dashsync
submodules: recursive
- name: Create LFS file list
run: |
git lfs ls-files -l | cut -d' ' -f1 | sort > .lfs-assets-id
working-directory: ./dashsync
- name: Restore LFS cache
uses: actions/cache@v3
id: lfs-cache
with:
path: dashsync/.git/lfs
key: lfs-${{ hashFiles('.lfs-assets-id') }}-v1
- name: Git LFS Pull
run: git lfs pull
working-directory: ./dashsync
- uses: actions/cache@v3
with:
path: ./dashsync/Example/Pods
key: ${{ runner.os }}-pods-${{ hashFiles('**/Podfile.lock') }}
restore-keys: |
${{ runner.os }}-pods-
- name: Install Cargo Lipo
run: cargo install cargo-lipo
- name: Rustup add targets
run: rustup target add x86_64-apple-darwin
- name: Build Dependencies
working-directory: ./dashsync/Example
run: pod install --repo-update
- name: Cache network info build
id: cache-network-info-build
uses: actions/cache@v3
with:
path: ./dashsync/Example/build/NetworkInfo/Build/Products/Debug
key: ${{ runner.os }}-NetworkInfo-${{ hashFiles('NetworkInfo/**') }}
restore-keys: |
${{ runner.os }}-NetworkInfo-
- name: Build
working-directory: ./dashsync/Example
env:
scheme: ${{ 'default' }}
platform: ${{ 'macOS' }}
if: steps.cache-network-info-build.outputs.cache-hit != 'true'
run: |
xcodebuild build -scheme "NetworkInfo" -workspace "DashSync.xcworkspace" -derivedDataPath './build/NetworkInfo/' CODE_SIGN_IDENTITY="-" CODE_SIGNING_REQUIRED=NO
- name: Get Network Info and Ping Nodes
working-directory: ./dashsync/Example/build/NetworkInfo/Build/Products/Debug
env:
scheme: ${{ 'default' }}
platform: ${{ 'macOS' }}
run: |
./NetworkInfo -outputDir ~/
- name: Archive network ping results
uses: actions/upload-artifact@v4 # Updated to v4
with:
name: testnet-network-report
path: ~/networkHealth.json
retention-days: 30
compression-level: 6 # Default, adjust as needed