Skip to content

Commit

Permalink
docs: overhaul development docs section
Browse files Browse the repository at this point in the history
  • Loading branch information
Kircheneer committed Nov 19, 2024
1 parent 32b9713 commit ff8a9ce
Show file tree
Hide file tree
Showing 8 changed files with 133 additions and 133 deletions.
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,10 @@ This Nautobot application framework includes the following integrations:

Read more about integrations [here](https://docs.nautobot.com/projects/ssot/en/latest/user/integrations). To enable and configure integrations follow the instructions from [the install guide](https://docs.nautobot.com/projects/ssot/en/latest/admin/install/#integrations-configuration).

### Building Your Own Integration

If you need an integration that is not supported, you can build your own! Check out the documentation [here](https://docs.nautobot.com/projects/ssot/en/latest/dev/jobs).

### Screenshots

---
Expand Down
1 change: 1 addition & 0 deletions changes/468.documentation
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Overhauled developer documentation structure.
1 change: 1 addition & 0 deletions changes/468.fixed
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Fixed SSoT jobs only allowing dry run unless you overwrote the `run` method.
21 changes: 21 additions & 0 deletions docs/dev/issues.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Reference: Common Issues and Solutions

This pages describes common issues when implementing SSoT integrations and their respective solutions.

## Converting Types Between Database and Pydantic

Developers are able to override the default loading of basic parameters to control how that parameter is loaded from Nautobot.

This only works with basic parameters belonging to the model and does not override more complex parameters (foreign keys, custom fields, custom relationships, etc.).

To override a parameter, add a method with the name `load_param_{param_key}` to your adapter class inheriting from `NautobotAdapter`:

```python
from nautobot_ssot.contrib import NautobotAdapter

class YourSSoTNautobotAdapter(NautobotAdapter):
...
def load_param_time_zone(self, parameter_name, database_object):
"""Custom loader for `time_zone` parameter."""
return str(getattr(database_object, parameter_name))
```
226 changes: 98 additions & 128 deletions docs/dev/jobs.md

Large diffs are not rendered by default.

File renamed without changes.
2 changes: 2 additions & 0 deletions docs/user/app_getting_started.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,3 +44,5 @@ PLUGINS_CONFIG = {
## What are the next steps?

You can check out the [Use Cases](app_use_cases.md) section for more examples.

Alternatively, if you intend to build your own integration, check out [Developing Data Source and Data Target Jobs](../dev/jobs.md).
11 changes: 6 additions & 5 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,6 @@ nav:
- Itential: "user/integrations/itential.md"
- Cisco Meraki: "user/integrations/meraki.md"
- ServiceNow: "user/integrations/servicenow.md"
- Modeling: "user/modeling.md"
- Performance: "user/performance.md"
- Frequently Asked Questions: "user/faq.md"
- External Interactions: "user/external_interactions.md"
Expand Down Expand Up @@ -161,12 +160,14 @@ nav:
- v1.1: "admin/release_notes/version_1.1.md"
- v1.0: "admin/release_notes/version_1.0.md"
- Developer Guide:
- Extending the App: "dev/extending.md"
- Developing Jobs: "dev/jobs.md"
- Debugging Jobs: "dev/debugging.md"
- Contributing to the App: "dev/contributing.md"
- "Tutorial: Developing Jobs": "dev/jobs.md"
- "How To: Debugging Jobs": "dev/debugging.md"
- "Reference: Issues": "dev/issues.md"
- "Reference: Modeling": "dev/modeling.md"
- Development Environment: "dev/dev_environment.md"
- Upgrading SSoT Apps: "dev/upgrade.md"
- Extending the App: "dev/extending.md"
- Contributing to the App: "dev/contributing.md"
- Code Reference:
- "dev/code_reference/index.md"
- Package: "dev/code_reference/package.md"
Expand Down

0 comments on commit ff8a9ce

Please sign in to comment.