| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- #!/bin/bash
- # This script will prepare NetBox to run after the code has been upgraded to
- # its most recent release.
- #
- # Once the script completes, remember to restart the WSGI service (e.g.
- # gunicorn or uWSGI).
- cd "$(dirname "$0")"
- PYTHON="python3"
- PIP="pip3"
- # Uninstall any Python packages which are no longer needed
- COMMAND="${PIP} uninstall -r old_requirements.txt -y"
- echo "Removing old Python packages ($COMMAND)..."
- eval $COMMAND
- # Install any new Python packages
- COMMAND="${PIP} install -r requirements.txt --upgrade"
- echo "Updating required Python packages ($COMMAND)..."
- eval $COMMAND
- # Validate Python dependencies
- COMMAND="${PIP} check"
- echo "Validating Python dependencies ($COMMAND)..."
- eval $COMMAND || (
- echo "******** PLEASE FIX THE DEPENDENCIES BEFORE CONTINUING ********"
- echo "* Manually install newer version(s) of the highlighted packages"
- echo "* so that 'pip3 check' passes. For more information see:"
- echo "* https://github.com/pypa/pip/issues/988"
- exit 1
- )
- # Apply any database migrations
- COMMAND="${PYTHON} netbox/manage.py migrate"
- echo "Applying database migrations ($COMMAND)..."
- eval $COMMAND
- # Delete any stale content types
- COMMAND="${PYTHON} netbox/manage.py remove_stale_contenttypes --no-input"
- echo "Removing stale content types ($COMMAND)..."
- eval $COMMAND
- # Collect static files
- COMMAND="${PYTHON} netbox/manage.py collectstatic --no-input"
- echo "Collecting static files ($COMMAND)..."
- eval $COMMAND
- # Clear all cached data
- COMMAND="${PYTHON} netbox/manage.py invalidate all"
- echo "Clearing cache data ($COMMAND)..."
- eval $COMMAND
|