Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion docs/installation/3-netbox.md
Original file line number Diff line number Diff line change
Expand Up @@ -246,7 +246,7 @@ Once NetBox has been configured, we're ready to proceed with the actual installa

* Create a Python virtual environment
* Installs all required Python packages
* Run database schema migrations
* Run database schema migrations (skip with `--readonly`)
* Builds the documentation locally (for offline use)
* Aggregate static resource files on disk

Expand All @@ -266,6 +266,9 @@ sudo PYTHON=/usr/bin/python3.10 /opt/netbox/upgrade.sh
!!! note
Upon completion, the upgrade script may warn that no existing virtual environment was detected. As this is a new installation, this warning can be safely ignored.

!!! note
To run the script on a node connected to a database in read-only mode, include the `--readonly` parameter. This will skip the application of any database migrations.

## Create a Super User

NetBox does not come with any predefined user accounts. You'll need to create a super user (administrative account) to be able to log into NetBox. First, enter the Python virtual environment created by the upgrade script:
Expand Down
3 changes: 3 additions & 0 deletions docs/installation/upgrading.md
Original file line number Diff line number Diff line change
Expand Up @@ -152,6 +152,9 @@ sudo ./upgrade.sh
sudo PYTHON=/usr/bin/python3.10 ./upgrade.sh
```

!!! note
To run the script on a node connected to a database in read-only mode, include the `--readonly` parameter. This will skip the application of any database migrations.

This script performs the following actions:

* Destroys and rebuilds the Python virtual environment
Expand Down
18 changes: 15 additions & 3 deletions upgrade.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,13 @@
# variable (if set), or fall back to "python3". Note that NetBox v4.0+ requires
# Python 3.10 or later.

# Parse arguments
if [[ "$1" == "--readonly" ]]; then
READONLY_MODE=true
else
READONLY_MODE=false
fi

cd "$(dirname "$0")"

NETBOX_VERSION="$(grep ^version netbox/release.yaml | cut -d \" -f2)"
Expand Down Expand Up @@ -83,9 +90,14 @@ else
fi

# Apply any database migrations
COMMAND="python3 netbox/manage.py migrate"
echo "Applying database migrations ($COMMAND)..."
eval $COMMAND || exit 1
if [ "$READONLY_MODE" = true ]; then
echo "Skipping database migrations (read-only mode)"
exit 0
else
COMMAND="python3 netbox/manage.py migrate"
echo "Applying database migrations ($COMMAND)..."
eval $COMMAND || exit 1
fi

# Trace any missing cable paths (not typically needed)
COMMAND="python3 netbox/manage.py trace_paths --no-input"
Expand Down