Skip to content
3 changes: 2 additions & 1 deletion .github/workflows/daemon-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ defaults:

jobs:
test:
name: daemon-lint-and-test
runs-on: ubuntu-latest

steps:
Expand Down Expand Up @@ -52,4 +53,4 @@ jobs:
run: cargo test --lib

- name: Build daemon (release)
run: cargo build --release --bin daemon
run: cargo build --release --bin daemon
18 changes: 18 additions & 0 deletions .github/workflows/pr_dev_only.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: Check pull request source branch
on:
pull_request_target:
types: [opened, reopened, synchronize, edited]
jobs:
check-branches:
name: pr_dev_only
runs-on: ubuntu-latest
steps:
- name: Check branches
env:
HEAD_REF: ${{ github.head_ref }}
BASE_REF: ${{ github.base_ref }}
run: |
if [ "$HEAD_REF" != "dev" ] && [ "$BASE_REF" = "main" ]; then
echo "Merge requests to main branch are only allowed from dev branch."
exit 1
fi
3 changes: 2 additions & 1 deletion .github/workflows/server-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ defaults:

jobs:
test:
name: server-lint-and-test
runs-on: ubuntu-latest

steps:
Expand Down Expand Up @@ -52,4 +53,4 @@ jobs:
run: cargo test --lib

- name: Build server (release)
run: cargo build --release --bin server
run: cargo build --release --bin server
3 changes: 2 additions & 1 deletion .github/workflows/ui-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ defaults:

jobs:
lint-and-test:
name: ui-lint-and-test
runs-on: ubuntu-latest

steps:
Expand Down Expand Up @@ -51,4 +52,4 @@ jobs:
with:
name: ui-build
path: ui/build/
retention-days: 7
retention-days: 7
2 changes: 1 addition & 1 deletion docs/CONFIGURATION.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ The config file stores runtime state (daemon ID, host ID) alongside your setting
|-----------|----------|---------------------|-----------------|---------|-------------|
| **Server URL** | `--server-url` | `NETVISOR_SERVER_URL` | `server_url` | `http://127.0.0.1:60072` | URL where the daemon can reach the server |
| **API Key** | `--api-key` | `NETVISOR_DAEMON_API_KEY` | `daemon_api_key` | *Required* | Authentication key for daemon (generated via UI) |
| **Mode** | `--mode` | `NETVISOR_MODE` | `docker_proxy` | Push | Whether server will push work to daemon or daemon should poll for work from server |
| **Mode** | `--mode` | `NETVISOR_MODE` | `mode` | Push | Whether server will push work to daemon or daemon should poll for work from server |
| **Network ID** | `--network-id` | `NETVISOR_NETWORK_ID` | `network_id` | *Auto-assigned* | UUID of the network to scan |
| **Daemon Port** | `--daemon-port` or `-p` | `NETVISOR_DAEMON_PORT` | `daemon_port` | `60073` | Port for daemon to listen on |
| **Bind Address** | `--bind-address` | `NETVISOR_BIND_ADDRESS` | `bind_address` | `0.0.0.0` | IP address to bind daemon to |
Expand Down
37 changes: 23 additions & 14 deletions docs/USER_GUIDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -689,36 +689,45 @@ The topology view generates an interactive diagram of your network structure.
Topology will display different states depending on if the underlying data has changed since it was last built. Pressing Rebuild will have different effects depending on topology state.

Rebuilding the graph will reset some user-provided changes, such as node positions and subnet sizes. Edge handles will be preserved when possible, but may also be overwritten as the layout of the graph may need to change depending on entities being added or removed.
<br>

### Up to date

**Up to date**
<p align="center">
<img src="../media/topology_fresh.png" width="800" alt="Discovery Sessions">
</p>
- All data is up to date
- There is usually no reason to rebuild the graph in this state
- All data is up to date<br>
- There is usually no reason to rebuild the graph in this state<br>
<br>

### Stale

**Stale**
<p align="center">
<img src="../media/topology_stale.png" width="800" alt="Discovery Sessions">
</p>
- One or more entities have been added or updated since the visualization was last rebuilt
- Rebuilding the graph will add those entities
- One or more entities have been added or updated since the visualization was last rebuilt<br>
- Rebuilding the graph will add those entities<br>
<br>

### Conflict

**Conflict**
<p align="center">
<img src="../media/topology_conflict.png" width="800" alt="Discovery Sessions">
</p>
- One or more entities on the graph have been deleted since it was last rebuilt
- Rebuilding the graph will remove those entities
- The specific entities that will be removed will be displayed in a modal so you can confirm before they are removed.
- One or more entities on the graph have been deleted since it was last rebuilt<br>
- Rebuilding the graph will remove those entities<br>
- The specific entities that will be removed will be displayed in a modal so you can confirm before they are removed.<br>
<br>

### Locked

**Locked**
<p align="center">
<img src="../media/topology_locked.png" width="800" alt="Discovery Sessions">
</p>
- Other states will not be displayed
- Topology cannot be rebuilt
- Press Lock to enter the locked state
- Other states will not be displayed<br>
- Topology cannot be rebuilt<br>
- Press Lock to enter the locked state<br>
<br>

### Visual Elements

Expand Down