Skip to content

build: Sync Cargo lockfile with Zenoh's #115

build: Sync Cargo lockfile with Zenoh's

build: Sync Cargo lockfile with Zenoh's #115

Workflow file for this run

#
# Copyright (c) 2023 ZettaScale Technology
#
# This program and the accompanying materials are made available under the
# terms of the Eclipse Public License 2.0 which is available at
# http://www.eclipse.org/legal/epl-2.0, or the Apache License, Version 2.0
# which is available at https://www.apache.org/licenses/LICENSE-2.0.
#
# SPDX-License-Identifier: EPL-2.0 OR Apache-2.0
#
# Contributors:
# ZettaScale Zenoh Team, <zenoh@zettascale.tech>
#
name: CI (macOS)
on:
push:
branches: ["**"]
pull_request:
branches: ["**"]
schedule:
- cron: "0 6 * * 1-5"
env:
CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
WIRESHARK_VERSION: 4-4
# We will link the /Applications/Wireshark.app/Contents/Frameworks/libwireshark.*.dylib
# to libwireshark.dylib under the project folder to prevent the privilege issue
WIRESHARK_LIB_DIR: ${{ github.workspace }}
jobs:
check:
name: Run checks on macOS
runs-on: macos-latest
strategy:
fail-fast: false
steps:
- uses: actions/checkout@v4
- name: Code format check
run: cargo fmt -- --check
- name: Install Wireshark
run: |
brew install --cask wireshark
ln -snf $(find /Applications/Wireshark.app/Contents/Frameworks -name "libwireshark.*.dylib" | tail -n 1) libwireshark.dylib
- name: Clippy
run: cargo clippy --all-targets -- --deny warnings
- name: Build
run: cargo build --release
- name: Place the plugin
run: |
mkdir -p ~/.local/lib/wireshark/plugins/${{ env.WIRESHARK_VERSION }}/epan
cp ./target/release/libzenoh_dissector.dylib ~/.local/lib/wireshark/plugins/${{ env.WIRESHARK_VERSION }}/epan/libzenoh_dissector.so
- name: Test the sample data
run: |
[ $(tshark -r assets/sample-data.pcap | grep Zenoh | wc -l) -eq 7 ] || return 1