name: netsim-CI

on:
  push:
    branches:
      - main
  workflow_dispatch:
    inputs:
      pr_number:
        required: true
        type: string
      branch:
        required: true
        type: string
      netsim_branch:
        required: true
        type: string
        default: "main"
      report_table:
        required: false
        type: boolean
        default: false
      rust_log:
        description: "Custom RUST_LOG value (e.g. 'iroh=debug,iroh_quinn=trace'). If empty, defaults to warn."
        required: false
        type: string
        default: ""

env:
  RUST_BACKTRACE: 1
  RUSTFLAGS: -Dwarnings
  MSRV: "1.66"
  SCCACHE_GHA_ENABLED: "true"
  RUSTC_WRAPPER: "sccache"
  IROH_FORCE_STAGING_RELAYS: "1"

jobs:
  netsim-release:
    permissions: write-all
    if: ${{github.ref_name=='main' && github.event_name == 'push'}}
    uses: './.github/workflows/netsim_runner.yaml'
    secrets: inherit
    with:
      branch: "main"
      max_workers: 1
      netsim_branch: "main"
      sim_paths: "sims/iroh,sims/integration"
      pr_number: ""
      publish_metrics: true
      build_profile: "optimized-release"

  netsim-perf:
    permissions: write-all
    if: ${{github.event_name != 'push'}}
    uses: './.github/workflows/netsim_runner.yaml'
    secrets: inherit
    with:
      branch: ${{inputs.branch}}
      max_workers: 1
      netsim_branch: ${{inputs.netsim_branch}}
      sim_paths: "sims/iroh"
      pr_number: ${{inputs.pr_number}}
      publish_metrics: false
      build_profile: "optimized-release"
      report_table: ${{inputs.report_table}}
      rust_log: ${{inputs.rust_log}}

Homonyms

soft3/radio/iroh-willow/.github/workflows/netsim.yml

Graph