srl-labs / netbox-nrx-clab

This lab demonstrates creating Digital Twin networks for lab use-cases with Netbox and NetReplica
22 stars 1 forks source link

Script ./4_run_nrx.sh failing #2

Open FranC1010 opened 3 weeks ago

FranC1010 commented 3 weeks ago

When reaching step 4 in the setup, running "sudo ./4_run_nrx.sh" gives the below error:

python3: can't open file '/home/debian/netbox-nrx-clab/./nrx/nrx.py': [Errno 2] No such file or directory

Within the /nrx directory there seems to be a file named "nrx", so without the .py. So I tried running the command inside script 4 separately:

Running the below command:

python3 ./nrx/nrx -c ./nrx.conf -o clab -D ./

Then gives me the below output and error:

Reading platform map from: ./platform_map.yaml Connecting to NetBox at: http://localhost:8000 Fetching devices from sites: ['SYD1'] Error: Exporting from NetBox: object has no attribute "device_role"

I can login to Netbox fine, and can see the populated data for the site and the devices.

hellt commented 2 weeks ago

did you use netbox v4 by any chance?

rbutts1 commented 2 weeks ago

I have the same problem and yes the lab downloaded netbox 4.5. On a postman call I see "role:" not "device_role". Suspect schema change may have happened. I could not dig through the nrx piece to update the API call.

I see:

(venv) root@f4su24-d-xlab1:/data/clab/netbox-nrx-clab# ./4_run_nrx.sh Reading platform map from: ./platform_map.yaml Connecting to NetBox at: http://localhost:8000/ Fetching devices from sites: ['SYD1'] Error: Exporting from NetBox: object has no attribute “device_role"

On Postman I see:

{ "count": 20, "next": null, "previous": null, "results": [ { "id": 9, "url": "http://192.168.1.48:8000/api/dcim/devices/9/", "display": "syd1-dcgw1", "name": "syd1-dcgw1", "device_type": { "id": 17, "url": "http://192.168.1.48:8000/api/dcim/device-types/17/", "display": "7750 SR-1se", "manufacturer": { "id": 1, "url": "http://192.168.1.48:8000/api/dcim/manufacturers/1/", "display": "Nokia", "name": "Nokia", "slug": "nokia", "description": "" }, "model": "7750 SR-1se", "slug": "sr-1s", "description": "" }, "role": { "id": 5, "url": "http://192.168.1.48:8000/api/dcim/device-roles/5/", "display": "DC Gateway", "name": "DC Gateway", "slug": "dc-gateway", "description": "" }

mrmrcoleman commented 2 weeks ago

@hellt Looks like this is NetBox 4.0. You can assign it to me if you want.

tardoe commented 2 weeks ago

@mrmrcoleman I've already put in a PR for NRX to support Netbox 4.0 https://github.com/netreplica/nrx/pull/123 - I'm happy to take this one.

mrmrcoleman commented 2 weeks ago

Thanks @tardoe :-)