test: add test script #1176
Workflow file for this run
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
# | |
# Copyright (c) 2022 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 | |
on: | |
workflow_dispatch: | |
push: | |
branches: ["**"] | |
pull_request: | |
branches: ["**"] | |
schedule: | |
- cron: "0 0 * * 1-5" | |
jobs: | |
checks: | |
name: Run checks on ${{ matrix.os }} | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-latest, macOS-latest] | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Install Rust toolchain | |
uses: actions-rs/toolchain@v1 | |
with: | |
components: rustfmt, clippy | |
- name: Code format check | |
uses: actions-rs/cargo@v1 | |
with: | |
command: fmt | |
args: -- --check | |
- name: Clippy | |
uses: actions-rs/cargo@v1 | |
with: | |
command: clippy | |
args: --all-targets -- -D warnings | |
- name: Clippy unstable | |
uses: actions-rs/cargo@v1 | |
with: | |
command: clippy | |
args: --all-targets -- -D warnings | |
tests: | |
name: Run tests on ${{ matrix.os }} | |
needs: [checks] | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ubuntu-latest, macOS-latest] | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Install latest Rust toolchain | |
uses: actions-rs/toolchain@v1 | |
- name: Build zenoh-flow-plugin | |
uses: actions-rs/cargo@v1 | |
with: | |
command: build | |
args: --release -p zenoh-flow-plugin -j1 | |
- name: Build zfctl | |
uses: actions-rs/cargo@v1 | |
with: | |
command: build | |
args: --release -p zfctl -j1 | |
- name: Run tests | |
uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: --release --verbose | |
env: | |
ASYNC_STD_THREAD_COUNT: 4 | |
- name: Run doctests | |
uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: --doc | |
env: | |
ASYNC_STD_THREAD_COUNT: 4 | |
- name: dump | |
run: | | |
echo 'github.workspace === ${{ github.workspace }}' | |
echo "GITHUB_WORKSPACE === $GITHUB_WORKSPACE" | |
echo 'runner.workspace === ${{ runner.workspace }}' | |
echo "RUNNER_WORKSPACE === $RUNNER_WORKSPACE" | |
- name: Pwd | |
run: pwd | |
# - name: Find files matching "zfctl.json" | |
# uses: jeertmans/filesfinder@latest | |
# id: ff # Any id, to be used later to reference to files output | |
# with: | |
# # Only argument, a single string, to be passed as arguments to ff. | |
# # See `ff --help` for more help. | |
# # Default: "*" | |
# args: "zfctl.json" | |
# - name: Print files matching "zfctl.json" | |
# run: echo "${{ steps.ff.outputs.files }}" | |
# - name: Find files matching "zenohd" | |
# uses: jeertmans/filesfinder@latest | |
# id: pp # Any id, to be used later to reference to files output | |
# with: | |
# # Only argument, a single string, to be passed as arguments to ff. | |
# # See `ff --help` for more help. | |
# # Default: "*" | |
# args: "zenohd" | |
# - name: Print files matching "zenohd" | |
# run: echo "${{ steps.pp.outputs.files }}" | |
# - name: Change directory --> from Zenoh-Flow/Zenoh-Flow to Home directory | |
# run: | | |
# cd .. | |
# cd .. | |
# #it works | |
# - name: Check out my other private repo | |
# uses: actions/checkout@master | |
# with: | |
# repository: eclipse-zenoh/zenoh | |
#but this is better | |
- name: Clone Repository | |
run: git clone -b '0.7.2-rc' https://github.com/eclipse-zenoh/zenoh.git ./../../zenoh | |
#uses: actions/checkout@master | |
# path: main | |
# ref: b9103c3 | |
# token: ${{ secrets.PAT }} | |
# token: ${{ github.token }} | |
- name: Pwd | |
run: pwd | |
# - name: Change directory --> from Home directory to zenoh | |
# run: cd zenoh | |
# - name: git | |
# run: git checkout 0.7.2-rc | |
- name: Change directory --> from Zenoh-Flow to Home directory | |
run: | | |
cd .. | |
cd .. | |
- name: Pwd | |
run: pwd | |
- name: Change directory --> from Zenoh-Flow to Home directory | |
run: cd zenoh | |
- name: Pwd | |
run: pwd | |
# - name: Build Zenoh | |
# uses: actions-rs/cargo@v1 | |
# with: | |
# command: build | |
# args: --verbose --all-targets | |
- name: Build Zenoh | |
run: cargo build --verbose --all-targets | |
- name: Change directory --> from Zenoh-Flow to Home directory | |
run: | | |
cd .. | |
- name: Pwd | |
run: pwd | |
- name: Change directory --> from Home directory to Zenoh | |
run: cd zenoh-flow | |
- name: Install Python package | |
uses: actions/setup-python@v4 | |
with: | |
python-version: "3.x" | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
pip install -r manual-tests/requirements.txt | |
- name: Run Python automated-test.py script | |
run: | | |
output=$(python3 manual-tests/automated-test.py --build release --zenohd zenoh/target/debug/zenohd --zfctl zenoh-flow/release/debug/zfctl) |