Skip to content

Commit

Permalink
chore: Manual fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
snaselj committed Jan 31, 2024
1 parent ed2b081 commit 43e44dc
Show file tree
Hide file tree
Showing 11 changed files with 38 additions and 257 deletions.
35 changes: 22 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,24 +1,31 @@
# Nautobot's Secrets Providers App

Nautobot Secrets Providers is a app for [Nautobot](https://github.com/nautobot/nautobot) 1.4.0 or higher that bundles Secrets Providers for integrating with popular secrets backends. Nautobot 1.4.0 added support for integrating with retrieving secrets from various secrets providers.

This app publishes secrets providers that are not included in the within the Nautobot core software package so that it will be easier to maintain and extend support for various secrets providers without waiting on Nautobot software releases.

## Supported Secrets Backends

This app supports the following popular secrets backends:

<p align="center">
<img src="https://raw.githubusercontent.com/nautobot/nautobot-app-secrets-providers/develop/docs/images/icon-nautobot-secrets-providers.png" class="logo" height="200px">
<br>
<a href="https://github.com/nautobot/nautobot-app-secrets-providers/actions"><img src="https://github.com/nautobot/nautobot-app-secrets-providers/actions/workflows/ci.yml/badge.svg?branch=main"></a>
<a href="https://docs.nautobot.com/projects/secrets-providers/en/latest"><img src="https://readthedocs.org/projects/nautobot-app-secrets-providers/badge/"></a>
<a href="https://docs.nautobot.com/projects/secrets-providers/en/latest/"><img src="https://readthedocs.org/projects/nautobot-plugin-secrets-providers/badge/"></a>
<a href="https://pypi.org/project/nautobot-secrets-providers/"><img src="https://img.shields.io/pypi/v/nautobot-secrets-providers"></a>
<a href="https://pypi.org/project/nautobot-secrets-providers/"><img src="https://img.shields.io/pypi/dm/nautobot-secrets-providers"></a>
<br>
An <a href="https://www.networktocode.com/nautobot/apps/">App</a> for <a href="https://nautobot.com/">Nautobot</a>.
</p>

Nautobot Secrets Providers is a app for [Nautobot](https://github.com/nautobot/nautobot) 1.4.0 or higher that bundles Secrets Providers for integrating with popular secrets backends. Nautobot 1.4.0 added support for integrating with retrieving secrets from various secrets providers.

This app publishes secrets providers that are not included in the within the Nautobot core software package so that it will be easier to maintain and extend support for various secrets providers without waiting on Nautobot software releases.

## Supported Secrets Backends

This app supports the following popular secrets backends:

| Secrets Backend | Supported Secret Types | Supported Authentication Methods |
| ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ |
| [AWS Secrets Manager](https://aws.amazon.com/secrets-manager/) | [Other: Key/value pairs](https://docs.aws.amazon.com/secretsmanager/latest/userguide/manage_create-basic-secret.html) | [AWS credentials](https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html) (see Usage section below) |
| [AWS Systems Manager Parameter Store](https://aws.amazon.com/secrets-manager/) | [Other: Key/value pairs](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-parameter-store.html) | [AWS credentials](https://docs.aws.amazon.com/general/latest/gr/aws-sec-cred-types.html) (see Usage section below) |
| [HashiCorp Vault](https://www.vaultproject.io) | [K/V Version 2](https://www.vaultproject.io/docs/secrets/kv/kv-v2)<br/>[K/V Version 1](https://developer.hashicorp.com/vault/docs/secrets/kv/kv-v1) | [Token](https://www.vaultproject.io/docs/auth/token)<br/>[AppRole](https://www.vaultproject.io/docs/auth/approle)<br/>[AWS](https://www.vaultproject.io/docs/auth/aws)<br/>[Kubernetes](https://www.vaultproject.io/docs/auth/kubernetes) |
| [Delinea/Thycotic Secret Server](https://delinea.com/products/secret-server) | [Secret Server Cloud](https://github.com/DelineaXPM/python-tss-sdk#secret-server-cloud)<br/>[Secret Server (on-prem)](https://github.com/DelineaXPM/python-tss-sdk#initializing-secretserver)| [Access Token Authorization](https://github.com/DelineaXPM/python-tss-sdk#access-token-authorization)<br/>[Domain Authorization](https://github.com/DelineaXPM/python-tss-sdk#domain-authorization)<br/>[Password Authorization](https://github.com/DelineaXPM/python-tss-sdk#password-authorization)<br/> |

## Screenshots

![Screenshot of installed apps](https://raw.githubusercontent.com/nautobot/nautobot-app-secrets-providers/develop/docs/images/screenshot01.png "App landing page")
Expand All @@ -27,11 +34,11 @@ This app supports the following popular secrets backends:

![Screenshot of app home page](https://raw.githubusercontent.com/nautobot/nautobot-app-secrets-providers/develop/docs/images/screenshot02.png "App Home page")

> 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-secrets-providers/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/secrets-providers/en/latest/user/app_use_cases/) page in the documentation. Here's a quick overview of some of the app's added functionality:
![Screenshot of secret using AWS Secrets Manager](https://raw.githubusercontent.com/nautobot/nautobot-app-secrets-providers/develop/docs/images/screenshot03.png "Secret using AWS Secrets Manager")

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

![Screenshot of secret using HashiCorp Vault](https://raw.githubusercontent.com/nautobot/nautobot-app-secrets-providers/develop/docs/images/screenshot04.png "Secret using HashiCorp Vault")

Expand All @@ -49,7 +56,9 @@ More screenshots can be found in the [Using the App](https://docs.nautobot.com/p
The package is available as a Python package in PyPI and can be installed with `pip`:

You can find all the Markdown source for the App documentation under the [`docs`](https://github.com/nautobot/nautobot-app-secrets-providers/tree/develop/docs) folder in this repository. For simple edits, a Markdown capable editor is sufficient: clone the repository and edit away.
```no-highlight
pip install nautobot-secrets-providers
```

You may quickly install all of the dependent libraries using the following command, however, this is *not recommended for production deployments* as it will install extras that you may not need:

Expand Down
3 changes: 2 additions & 1 deletion docs/admin/compatibility_matrix.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,5 @@

| Nautobot's Secrets Providers App Version | Nautobot First Support Version | Nautobot Last Support Version |
| ------------- | -------------------- | ------------- |
| 1.0.X | 2.0.0 | 2.99.99 |
| 1.0.X | 1.4.0 | 1.99.99 |
| 2.0.X | 2.0.0 | 2.99.99 |
81 changes: 0 additions & 81 deletions docs/admin/install.md

This file was deleted.

48 changes: 0 additions & 48 deletions docs/admin/release_notes/version_1.0.md

This file was deleted.

10 changes: 0 additions & 10 deletions docs/admin/upgrade.md

This file was deleted.

7 changes: 0 additions & 7 deletions docs/dev/arch_decision.md

This file was deleted.

5 changes: 0 additions & 5 deletions docs/dev/code_reference/api.md

This file was deleted.

53 changes: 0 additions & 53 deletions docs/dev/contributing.md

This file was deleted.

30 changes: 0 additions & 30 deletions docs/user/app_overview.md

This file was deleted.

18 changes: 13 additions & 5 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[tool.poetry]
name = "nautobot-secrets-providers"
version = "0.1.0"
description = "Nautobot's Secrets Providers App"
version = "2.0.1"
description = "Nautobot Secrets Providers App"
authors = ["Network to Code, LLC <[email protected]>"]
license = "Apache-2.0"
readme = "README.md"
Expand Down Expand Up @@ -30,8 +30,7 @@ boto3 = { version = "~1.19.5", optional = true }
hvac = { version = ">=0.11.0, <1.1.0", optional = true }
nautobot = "^2.0.0"
python = ">=3.8,<3.12"
# Used for local development
nautobot = "^2.0.0"
python-tss-sdk = {version = "~1.2.0", optional = true}

[tool.poetry.group.dev.dependencies]
Markdown = "*"
Expand All @@ -48,7 +47,6 @@ pylint-nautobot = "*"
ruff = "*"
yamllint = "*"
toml = "*"
Markdown = "*"
# Rendering docs to HTML
mkdocs = "1.5.2"
# Material for MkDocs theme
Expand All @@ -59,10 +57,20 @@ mkdocs-version-annotations = "1.0.0"
mkdocstrings = "0.22.0"
mkdocstrings-python = "1.5.2"
towncrier = "~23.6.0"
moto = "~2.2.11"
pyOpenSSL = "23.2.0"
requests-mock = "1.9.3"

[tool.poetry.extras]
all = [
"boto3",
"hvac",
"python-tss-sdk",
]
aws = ["boto3"]
hashicorp = ["hvac"]
nautobot = ["nautobot"]
thycotic = ["python-tss-sdk"]

[tool.black]
line-length = 120
Expand Down
5 changes: 1 addition & 4 deletions tasks.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@
def is_truthy(arg):
"""Convert "truthy" strings into Booleans.
Examples
--------
Examples:
>>> is_truthy('yes')
True
Args:
Expand Down Expand Up @@ -112,7 +111,6 @@ def docker_compose(context, command, **kwargs):
"""Helper function for running a specific docker compose command with all appropriate parameters and environment.
Args:
----
context (obj): Used to run specific commands
command (str): Command string to append to the "docker compose ..." command, such as "build", "up", etc.
**kwargs: Passed through to the context.run() call.
Expand Down Expand Up @@ -712,7 +710,6 @@ def yamllint(context):
"""Run yamllint to validate formatting adheres to NTC defined YAML standards.
Args:
----
context (obj): Used to run specific commands
"""
command = "yamllint . --format standard"
Expand Down

0 comments on commit 43e44dc

Please sign in to comment.