Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cleanup #1

Merged
merged 9 commits into from
Feb 21, 2024
Merged
Show file tree
Hide file tree
Changes from 5 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
18 changes: 1 addition & 17 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,5 @@
# Nautobot Dev Example App

<!--
Developer Note - Remove Me!

The README will have certain links/images broken until the PR is merged into `develop`. Update the GitHub links with whichever branch you're using (main etc.) if different.

The logo of the project is a placeholder (docs/images/icon-nautobot-dev-example.png) - please replace it with your app icon, making sure it's at least 200x200px and has a transparent background!

To avoid extra work and temporary links, make sure that publishing docs (or merging a PR) is done at the same time as setting up the docs site on RTD, then test everything.
-->

<p align="center">
<img src="https://raw.githubusercontent.com/nautobot/nautobot-app-dev-example/develop/docs/images/icon-nautobot-dev-example.png" class="logo" height="200px">
<br>
Expand All @@ -23,22 +13,16 @@ To avoid extra work and temporary links, make sure that publishing docs (or merg

## Overview

> Developer Note: Add a long (2-3 paragraphs) description of what the App does, what problems it solves, what functionality it adds to Nautobot, what external systems it works with etc.
An example Nautobot App.

### Screenshots

> Developer Note: Add any representative screenshots of the App in action. These images should also be added to the `docs/user/app_use_cases.md` section.

> Developer Note: Place the files in the `docs/images/` folder and link them using only full URLs from GitHub, for example: `![Overview](https://raw.githubusercontent.com/nautobot/nautobot-app-dev-example/develop/docs/images/app-overview.png)`. This absolute static linking is required to ensure the README renders properly in GitHub, the docs site, and any other external sites like PyPI.

More screenshots can be found in the [Using the App](https://docs.nautobot.com/projects/dev-example/en/latest/user/app_use_cases/) page in the documentation. Here's a quick overview of some of the app's added functionality:

![](https://raw.githubusercontent.com/nautobot/nautobot-app-dev-example/develop/docs/images/placeholder.png)

## Try it out!

> Developer Note: Only keep this section if appropriate. Update link to correct sandbox.

This App is installed in the Nautobot Community Sandbox found over at [demo.nautobot.com](https://demo.nautobot.com/)!
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
This App is installed in the Nautobot Community Sandbox found over at [demo.nautobot.com](https://demo.nautobot.com/)!

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed and added short package description.


> For a full list of all the available always-on sandbox environments, head over to the main page on [networktocode.com](https://www.networktocode.com/nautobot/sandbox-environments/).
Expand Down
1 change: 1 addition & 0 deletions changes/1.changed
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Cleaned up the baked cookie.
1 change: 1 addition & 0 deletions development/app_config_schema.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""App Config Schema Generator and Validator."""

import json
from importlib import import_module
from os import getenv
Expand Down
1 change: 1 addition & 0 deletions development/nautobot_config.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""Nautobot development configuration file."""

import os
import sys

Expand Down
3 changes: 0 additions & 3 deletions docs/admin/compatibility_matrix.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
# Compatibility Matrix

!!! warning "Developer Note - Remove Me!"
Explain how the release models of the app and of Nautobot work together, how releases are supported, how features and older releases are deprecated etc.

| Nautobot Dev Example App Version | Nautobot First Support Version | Nautobot Last Support Version |
| ------------- | -------------------- | ------------- |
| 1.0.X | 2.0.0 | 2.99.99 |
9 changes: 0 additions & 9 deletions docs/admin/install.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,6 @@

Here you will find detailed instructions on how to **install** and **configure** the App within your Nautobot environment.

!!! warning "Developer Note - Remove Me!"
Detailed instructions on installing the App. You will need to update this section based on any additional dependencies or prerequisites.

## Prerequisites

- The app is compatible with Nautobot 2.0.0 and higher.
Expand All @@ -15,9 +12,6 @@ Here you will find detailed instructions on how to **install** and **configure**

### Access Requirements

!!! warning "Developer Note - Remove Me!"
What external systems (if any) it needs access to in order to work.

## Install Guide

!!! note
Expand Down Expand Up @@ -69,9 +63,6 @@ sudo systemctl restart nautobot nautobot-worker nautobot-scheduler

## App Configuration

!!! warning "Developer Note - Remove Me!"
Any configuration required to get the App set up. Edit the table below as per the examples provided.

The app behavior can be controlled with the following list of settings:

| Key | Example | Default | Description |
Expand Down
21 changes: 0 additions & 21 deletions docs/admin/release_notes/version_1.0.md
Original file line number Diff line number Diff line change
@@ -1,26 +1,5 @@
# v1.0 Release Notes

!!! warning "Developer Note - Remove Me!"
Guiding Principles:

- Changelogs are for humans, not machines.
- There should be an entry for every single version.
- The same types of changes should be grouped.
- Versions and sections should be linkable.
- The latest version comes first.
- The release date of each version is displayed.
- Mention whether you follow Semantic Versioning.

Types of changes:

- `Added` for new features.
- `Changed` for changes in existing functionality.
- `Deprecated` for soon-to-be removed features.
- `Removed` for now removed features.
- `Fixed` for any bug fixes.
- `Security` in case of vulnerabilities.


This document describes all new features and changes in the release `1.0`. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## Release Overview
Expand Down
3 changes: 0 additions & 3 deletions docs/admin/uninstall.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,6 @@ Prior to removing the app from the `nautobot_config.py`, run the following comma
nautobot-server migrate nautobot_dev_example zero
```

!!! warning "Developer Note - Remove Me!"
Any other cleanup operations to ensure the database is clean after the app is removed. Is there anything else that needs cleaning up, such as CFs, relationships, etc. if they're no longer desired?

## Remove App configuration

Remove the configuration you added in `nautobot_config.py` from `PLUGINS` & `PLUGINS_CONFIG`.
Expand Down
3 changes: 0 additions & 3 deletions docs/admin/upgrade.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,4 @@ Here you will find any steps necessary to upgrade the App in your Nautobot envir

## Upgrade Guide

!!! warning "Developer Note - Remove Me!"
Add more detailed steps on how the app is upgraded in an existing Nautobot setup and any version specifics (such as upgrading between major versions with breaking changes).

When a new release comes out it may be necessary to run a migration of the database to account for any changes in the data models used by this app. Execute the command `nautobot-server post-upgrade` within the runtime environment of your Nautobot installation after updating the `nautobot-dev-example` package via `pip`.
4 changes: 0 additions & 4 deletions docs/dev/arch_decision.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,3 @@
# Architecture Decision Records

The intention is to document deviations from a standard Model View Controller (MVC) design.

!!! warning "Developer Note - Remove Me!"
Optional page, remove if not applicable.
For examples see [Golden Config](https://github.com/nautobot/nautobot-plugin-golden-config/tree/develop/docs/dev/dev_adr.md).
3 changes: 0 additions & 3 deletions docs/dev/code_reference/index.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
# Code Reference

Auto-generated code reference documentation from docstrings.

!!! warning "Developer Note - Remove Me!"
Uses [mkdocstrings](https://mkdocstrings.github.io/) syntax to auto-generate code documentation from docstrings. Two example pages are provided ([api](api.md) and [package](package.md)), add new stubs for each module or package that you think has relevant documentation.
6 changes: 0 additions & 6 deletions docs/user/app_getting_started.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,6 @@ To install the App, please follow the instructions detailed in the [Installation

## First steps with the App

!!! warning "Developer Note - Remove Me!"
What (with screenshots preferably) does it look like to perform the simplest workflow within the App once installed?

## What are the next steps?

!!! warning "Developer Note - Remove Me!"
After taking the first steps, what else could the users look at doing.

You can check out the [Use Cases](app_use_cases.md) section for more examples.
13 changes: 0 additions & 13 deletions docs/user/app_overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,21 +10,8 @@ This document provides an overview of the App including critical information and

## Audience (User Personas) - Who should use this App?

!!! warning "Developer Note - Remove Me!"
Who is this meant for/ who is the common user of this app?

## Authors and Maintainers

!!! warning "Developer Note - Remove Me!"
Add the team and/or the main individuals maintaining this project. Include historical maintainers as well.

## Nautobot Features Used

!!! warning "Developer Note - Remove Me!"
What is shown today in the Installed Apps page in Nautobot. What parts of Nautobot does it interact with, what does it add etc. ?

### Extras

!!! warning "Developer Note - Remove Me!"
Custom Fields - things like which CFs are created by this app?
Jobs - are jobs, if so, which ones, installed by this app?
3 changes: 0 additions & 3 deletions docs/user/app_use_cases.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,3 @@ This document describes common use-cases and scenarios for this App.
## Use-cases and common workflows

## Screenshots

!!! warning "Developer Note - Remove Me!"
Ideally captures every view exposed by the App. Should include a relevant dataset.
6 changes: 0 additions & 6 deletions docs/user/external_interactions.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,10 @@

This document describes external dependencies and prerequisites for this App to operate, including system requirements, API endpoints, interconnection or integrations to other applications or services, and similar topics.

!!! warning "Developer Note - Remove Me!"
Optional page, remove if not applicable.

## External System Integrations

### From the App to Other Systems

### From Other Systems to the App

## Nautobot REST API endpoints

!!! warning "Developer Note - Remove Me!"
API documentation in this doc - including python request examples, curl examples, postman collections referred etc.
1 change: 1 addition & 0 deletions nautobot_dev_example/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""App declaration for nautobot_dev_example."""

# Metadata is inherited from Nautobot. If not including Nautobot in the environment, this should be added
from importlib import metadata

Expand Down
1 change: 1 addition & 0 deletions nautobot_dev_example/api/serializers.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""API serializers for nautobot_dev_example."""

from nautobot.apps.api import NautobotModelSerializer, TaggedModelSerializerMixin

from nautobot_dev_example import models
Expand Down
1 change: 1 addition & 0 deletions nautobot_dev_example/forms.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""Forms for nautobot_dev_example."""

from django import forms
from nautobot.apps.forms import NautobotBulkEditForm, NautobotFilterForm, NautobotModelForm, TagsBulkEditFormMixin

Expand Down
46 changes: 46 additions & 0 deletions nautobot_dev_example/migrations/0001_initial.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
# Generated by Django 3.2.21 on 2024-02-16 08:32

import django.core.serializers.json
from django.db import migrations, models
import nautobot.core.models.fields
import nautobot.extras.models.mixins
import uuid


class Migration(migrations.Migration):
initial = True

dependencies = [
("extras", "0098_rename_data_jobresult_result"),
]

operations = [
migrations.CreateModel(
name="DevExample",
fields=[
(
"id",
models.UUIDField(
default=uuid.uuid4, editable=False, primary_key=True, serialize=False, unique=True
),
),
("created", models.DateTimeField(auto_now_add=True, null=True)),
("last_updated", models.DateTimeField(auto_now=True, null=True)),
(
"_custom_field_data",
models.JSONField(blank=True, default=dict, encoder=django.core.serializers.json.DjangoJSONEncoder),
),
("name", models.CharField(max_length=100, unique=True)),
("description", models.CharField(blank=True, max_length=200)),
("tags", nautobot.core.models.fields.TagsField(through="extras.TaggedItem", to="extras.Tag")),
],
options={
"ordering": ["name"],
},
bases=(
models.Model,
nautobot.extras.models.mixins.DynamicGroupMixin,
nautobot.extras.models.mixins.NotesMixin,
),
),
]
1 change: 1 addition & 0 deletions nautobot_dev_example/tests/fixtures.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""Create fixtures for tests."""

from nautobot_dev_example.models import DevExample


Expand Down
1 change: 1 addition & 0 deletions nautobot_dev_example/tests/test_api.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""Unit tests for nautobot_dev_example."""

from django.contrib.auth import get_user_model
from django.test import TestCase
from django.urls import reverse
Expand Down
1 change: 1 addition & 0 deletions nautobot_dev_example/tests/test_api_views.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""Unit tests for nautobot_dev_example."""

from nautobot.apps.testing import APIViewTestCases

from nautobot_dev_example import models
Expand Down
1 change: 1 addition & 0 deletions nautobot_dev_example/tests/test_basic.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""Basic tests that do not require Django."""

import unittest
import os
import toml
Expand Down
1 change: 1 addition & 0 deletions nautobot_dev_example/tests/test_filter_devexample.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""Test DevExample Filter."""

from django.test import TestCase
from nautobot_dev_example import filters
from nautobot_dev_example import models
Expand Down
1 change: 1 addition & 0 deletions nautobot_dev_example/tests/test_form_devexample.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""Test devexample forms."""

from django.test import TestCase

from nautobot_dev_example import forms
Expand Down
1 change: 1 addition & 0 deletions nautobot_dev_example/tests/test_views.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""Unit tests for views."""

from nautobot.apps.testing import ViewTestCases

from nautobot_dev_example import models
Expand Down
1 change: 1 addition & 0 deletions nautobot_dev_example/urls.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""Django urlpatterns declaration for nautobot_dev_example app."""

from nautobot.apps.urls import NautobotUIViewSetRouter

from nautobot_dev_example import views
Expand Down
1 change: 1 addition & 0 deletions nautobot_dev_example/views.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
"""Views for nautobot_dev_example."""

from nautobot.apps.views import NautobotUIViewSet

from nautobot_dev_example import filters, forms, models, tables
Expand Down
Loading
Loading