Skip to main content

Manage Cloudflare with Netbox & style.

Project description

Netbox Cloudflare Plugin

Testing Report

Manage Cloudflare with Netbox & style.

UI Container view with dependencies

Installation

You can follow the official plugins installation instructions.

If needed, source your Netbox's virtual environment and install the plugin like a package. We assume you have already installed Netbox and its source code are in /opt/netbox:

cd /opt/netbox
python3 -m venv venv # if virtual env was not created before
source /opt/netbox/venv/bin/activate
pip install netbox-cloudflare-plugin

Enable the plugin in the /opt/netbox/netbox/netbox/configuration.py file:

PLUGINS = [
    'netbox_cloudflare_plugin',
]

Then, run migrations:

cd /opt/netbox
python3 netbox/manage.py migrate

Alternative

Another way to install Netbox is to use the Official netbox-docker project.

With this alternate way, you can customize your Netbox image and migrations will be automatically execute each time you restart the container.

Contribute

Install our development environment

Requirements:

  • Python 3.11
  • PostgreSQL 15 Official Netbox doc
    • user: netbox (with database creation right)
    • password: secret
    • database: netbox
    • port: 5432
  • Redis 7.2
    • port: 6379

Set a PROJECT variable :

PROJECT="/project/netbox"

Create a project directory $PROJECT:

mkdir $PROJECT

Go inside your project directory, clone this repository and the Netbox repository:

cd $PROJECT
git clone git@github.com:SaaShup/netbox-cloudflare-plugin.git
git clone git@github.com:netbox-community/netbox.git

Create your venv and activate it:

python -m venv venv
source venv/bin/activate

Install netbox-cloudflare-plugin dependencies:

cd $PROJECT/netbox-cloudflare-plugin
pip install -e .

Configure Netbox and install Netbox dependencies:

cd $PROJECT/netbox
cp $PROJECT/netbox-cloudflare-plugin/netbox_configuration/configuration_dev.py $PROJECT/netbox/netbox/netbox/configuration.py
pip install -r requirements.txt

Run database migrations:

cd $PROJECT/netbox
python3 netbox/manage.py migrate

Create a Netbox super user:

cd $PROJECT/netbox
python3 netbox/manage.py createsuperuser

Start Netbox instance:

cd $PROJECT/netbox
python3 netbox/manage.py runserver 0.0.0.0:8000 --insecure

Visit http://localhost:8000/

Run tests

After installing your development environment, you can run the tests plugin (you don't need to start the Netbox instance):

cd $PROJECT/netbox
python3 -m pip install requests_mock
python3 netbox/manage.py test netbox_cloudflare_plugin.tests --keepdb -v 2

With code coverage, install coverage.py and use it:

cd $PROJECT/netbox
python3 -m pip install coverage

Then run the test with coverage.py and print the report:

cd $PROJECT/netbox
coverage run --include='*/netbox_cloudflare_plugin/*' netbox/manage.py test netbox_cloudflare_plugin.tests --keepdb -v 2
coverage report -m

Hosting

Check https://saashup.com for more information.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

netbox_cloudflare_plugin-0.3.0.tar.gz (15.1 kB view details)

Uploaded Source

Built Distribution

netbox_cloudflare_plugin-0.3.0-py3-none-any.whl (22.8 kB view details)

Uploaded Python 3

File details

Details for the file netbox_cloudflare_plugin-0.3.0.tar.gz.

File metadata

File hashes

Hashes for netbox_cloudflare_plugin-0.3.0.tar.gz
Algorithm Hash digest
SHA256 102d30e48d9af035fbaf79cfb57f418b7f32498db810461dee29b10170b7d55b
MD5 684957b97dddd32480f01d33dfd66a94
BLAKE2b-256 af478e51961eb5df418a975d9f191b94b308d9c01dc897c68133ebe79868ccb0

See more details on using hashes here.

File details

Details for the file netbox_cloudflare_plugin-0.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for netbox_cloudflare_plugin-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3f4ec45674082004fc3ed99a178ab0868c082ce903849c2f9c3a66e72b107200
MD5 7d30ad3cce1d3bff3a5c885b031cd285
BLAKE2b-256 c3dd1f140f46d220cf95724cd5cd90244155bb43231bf93a2303cf531e1dab98

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page