feat: minimal implementation of UDP CL without any of the extensions … #263
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
name: Rust | |
on: | |
push: | |
branches: [ master ] | |
paths: | |
- '**.rs' | |
pull_request: | |
branches: [ master ] | |
paths: | |
- '**.rs' | |
env: | |
CARGO_TERM_COLOR: always | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v2 | |
with: | |
submodules: true | |
- name: Install stable toolchain | |
uses: actions-rs/toolchain@v1 | |
with: | |
profile: minimal | |
toolchain: stable | |
override: true | |
- name: Cache cargo registry | |
uses: actions/[email protected] | |
with: | |
path: ~/.cargo/registry | |
key: ${{ runner.os }}-v1-cargo-registry-${{ hashFiles('**/Cargo.lock') }} | |
- name: Cache cargo index | |
uses: actions/[email protected] | |
with: | |
path: ~/.cargo/git | |
key: ${{ runner.os }}-v1-cargo-index-${{ hashFiles('**/Cargo.lock') }} | |
- name: Cache cargo target dir | |
uses: actions/[email protected] | |
with: | |
path: target | |
key: ${{ runner.os }}-v1-cargo-build-target-${{ hashFiles('**/Cargo.lock') }} | |
- name: Run cargo check | |
uses: actions-rs/cargo@v1 | |
with: | |
command: check | |
test: | |
name: Test Suite | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v2 | |
with: | |
submodules: true | |
- name: Install stable toolchain | |
uses: actions-rs/toolchain@v1 | |
with: | |
profile: minimal | |
toolchain: ${{ matrix.rust }} | |
override: true | |
- name: Cache cargo registry | |
uses: actions/[email protected] | |
with: | |
path: ~/.cargo/registry | |
key: ${{ runner.os }}-v1-cargo-registry-${{ hashFiles('**/Cargo.lock') }} | |
- name: Cache cargo index | |
uses: actions/[email protected] | |
with: | |
path: ~/.cargo/git | |
key: ${{ runner.os }}-v1-cargo-index-${{ hashFiles('**/Cargo.lock') }} | |
- name: Cache cargo target dir | |
uses: actions/[email protected] | |
with: | |
path: target | |
key: ${{ runner.os }}-v1-cargo-build-target-${{ hashFiles('**/Cargo.lock') }} | |
- name: Run cargo test | |
uses: actions-rs/cargo@v1 | |
with: | |
command: test | |
args: --release | |
- name: Run local ping/echo test | |
run: ./tests/local_ping_echo.sh | |
- name: Run local nodes dtn test (w/o status reports) | |
run: ./tests/local_nodes_dtn.sh | |
- name: Run local nodes dtn test (w/ status reports) | |
run: STATUS_REPORTS="-g" ./tests/local_nodes_dtn.sh | |
- name: Run local nodes ipn test | |
run: ./tests/local_nodes_ipn.sh | |
- name: Run lifetime test | |
run: ./tests/lifetime.sh | |
- name: Run local group dtn test | |
run: ./tests/local_group_test.sh | |
- name: Run chained CLAs test | |
run: ./tests/cla_chain_test.sh | |
- name: Run CLA extension test | |
run: ./tests/cla_ext_test.sh | |
- name: Run local dtntrigger test | |
run: ./tests/local_trigger_test.sh | |
- name: Run spray and wait routing test | |
run: ./tests/routing_saw.sh | |
- name: Run static routing test | |
run: ./tests/routing_static.sh | |
- name: Run external peer management (dtn) test | |
run: ./tests/ext_peer_management.sh | |
- name: Run external peer management (ipn) test | |
run: ./tests/ext_peer_management_ipn.sh | |
- name: Run store delete test | |
run: ./tests/store_delete.sh | |
- name: Run store delete test for singleton | |
run: ./tests/store_delete_singleton.sh | |
strategy: | |
matrix: | |
os: [ubuntu-latest] | |
rust: [stable] | |
lints: | |
name: Lints | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout sources | |
uses: actions/checkout@v2 | |
with: | |
submodules: true | |
- name: Install stable toolchain | |
uses: actions-rs/toolchain@v1 | |
with: | |
profile: minimal | |
toolchain: stable | |
override: true | |
components: rustfmt, clippy | |
- name: Cache cargo registry | |
uses: actions/[email protected] | |
with: | |
path: ~/.cargo/registry | |
key: ${{ runner.os }}-v1-cargo-registry-${{ hashFiles('**/Cargo.lock') }} | |
- name: Cache cargo index | |
uses: actions/[email protected] | |
with: | |
path: ~/.cargo/git | |
key: ${{ runner.os }}-v1-cargo-index-${{ hashFiles('**/Cargo.lock') }} | |
- name: Cache cargo target dir | |
uses: actions/[email protected] | |
with: | |
path: target | |
key: ${{ runner.os }}-v1-cargo-build-target-${{ hashFiles('**/Cargo.lock') }} | |
- name: Run cargo fmt | |
uses: actions-rs/cargo@v1 | |
with: | |
command: fmt | |
args: --all -- --check | |
- name: Run cargo clippy | |
uses: actions-rs/cargo@v1 | |
with: | |
command: clippy | |
args: -- -D warnings |