From ada12fe5bb5cff6ae30892ee555e0078b2e527d2 Mon Sep 17 00:00:00 2001 From: Jan Snasel Date: Mon, 25 Sep 2023 11:45:57 +0000 Subject: [PATCH 01/93] chore: Align docs with SSoT --- docs/admin/{install/index.md => install.md} | 22 +++++----- .../aci_setup.md => integrations/aci.md} | 8 ++-- .../ansible.md} | 8 ++-- .../aristacv.md} | 8 ++-- .../grafana.md} | 8 ++-- .../ipfabric.md} | 8 ++-- .../meraki.md} | 8 ++-- .../panorama.md} | 8 ++-- .../mattermost.md} | 4 +- .../microsoft_teams.md} | 4 +- .../slack_setup.md => platforms/slack.md} | 4 +- .../webex_setup.md => platforms/webex.md} | 4 +- docs/dev/release_checklist.md | 2 +- docs/user/app_getting_started.md | 16 +++---- .../{aci_commands.md => integrations/aci.md} | 12 +++--- .../ansible.md} | 0 .../aristacv.md} | 6 +-- .../grafana.md} | 0 .../ipfabric.md} | 14 +++--- .../meraki.md} | 12 +++--- .../panorama.md} | 18 ++++---- mkdocs.yml | 43 ++++++++++--------- 22 files changed, 109 insertions(+), 108 deletions(-) rename docs/admin/{install/index.md => install.md} (92%) rename docs/admin/{install/aci_setup.md => integrations/aci.md} (91%) rename docs/admin/{install/ansible_setup.md => integrations/ansible.md} (91%) rename docs/admin/{install/aristacv_setup.md => integrations/aristacv.md} (93%) rename docs/admin/{install/grafana_setup.md => integrations/grafana.md} (93%) rename docs/admin/{install/ipfabric_setup.md => integrations/ipfabric.md} (92%) rename docs/admin/{install/meraki_setup.md => integrations/meraki.md} (87%) rename docs/admin/{install/panorama_setup.md => integrations/panorama.md} (89%) rename docs/admin/{install/mattermost_setup.md => platforms/mattermost.md} (92%) rename docs/admin/{install/microsoft_teams_setup.md => platforms/microsoft_teams.md} (96%) rename docs/admin/{install/slack_setup.md => platforms/slack.md} (99%) rename docs/admin/{install/webex_setup.md => platforms/webex.md} (95%) rename docs/user/{aci_commands.md => integrations/aci.md} (82%) rename docs/user/{ansible_commands.md => integrations/ansible.md} (100%) rename docs/user/{aristacv_commands.md => integrations/aristacv.md} (88%) rename docs/user/{grafana_commands.md => integrations/grafana.md} (100%) rename docs/user/{ipfabric_commands.md => integrations/ipfabric.md} (87%) rename docs/user/{meraki_commands.md => integrations/meraki.md} (89%) rename docs/user/{panorama_commands.md => integrations/panorama.md} (73%) diff --git a/docs/admin/install/index.md b/docs/admin/install.md similarity index 92% rename from docs/admin/install/index.md rename to docs/admin/install.md index e01fd168..65595982 100644 --- a/docs/admin/install/index.md +++ b/docs/admin/install.md @@ -58,10 +58,10 @@ The `nautobot-chatops` package supports multiple chat platforms. Set up your chosen chat platform: -- [Mattermost](./mattermost_setup.md) -- [Microsoft Teams](./microsoft_teams_setup.md) -- [Slack](./slack_setup.md) -- [Cisco Webex](./webex_setup.md) +- [Mattermost](./platforms/mattermost.md) +- [Microsoft Teams](./platforms/microsoft_teams.md) +- [Slack](./platforms/slack.md) +- [Cisco Webex](./platforms/webex.md) ## Installation Guide @@ -145,10 +145,10 @@ The `nautobot-chatops` package includes multiple integrations. Each requires ext Set up integrations using the specific guides: -- [Cisco ACI](./aci_setup.md) -- [AWX / Ansible Tower](./ansible_setup.md) -- [Arista CloudVision](./aristacv_setup.md) -- [Grafana](./grafana_setup.md) -- [IPFabric](./ipfabric_setup.md) -- [Cisco Meraki](./meraki_setup.md) -- [Palo Alto Panorama](./panorama_setup.md) +- [Cisco ACI](./integrations/aci.md) +- [AWX / Ansible Tower](./integrations/ansible.md) +- [Arista CloudVision](./integrations/aristacv.md) +- [Grafana](./integrations/grafana.md) +- [IPFabric](./integrations/ipfabric.md) +- [Cisco Meraki](./integrations/meraki.md) +- [Palo Alto Panorama](./integrations/panorama.md) diff --git a/docs/admin/install/aci_setup.md b/docs/admin/integrations/aci.md similarity index 91% rename from docs/admin/install/aci_setup.md rename to docs/admin/integrations/aci.md index ba776522..a8b2468e 100644 --- a/docs/admin/install/aci_setup.md +++ b/docs/admin/integrations/aci.md @@ -6,15 +6,15 @@ This guide will walk you through steps to set up Cisco ACI integration with the Before configuring the integration, please ensure the following: -- `nautobot-chatops` App was [installed with integration extra dependencies](./index.md#installation-guide). +- `nautobot-chatops` App was [installed with integration extra dependencies](./../install.md#installation-guide). ```shell pip install nautobot-chatops[aci] ``` -- `nautobot-chatops` App is set up with at least one [enabled chat platform](./index.md#chat-platforms-configuration) and [tested](./index.md#test-your-chatbot). +- `nautobot-chatops` App is set up with at least one [enabled chat platform](./../install.md#chat-platforms-configuration) and [tested](./../install.md#test-your-chatbot). ## Command Setup -Create a top-level command named `aci` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./index.md#chat-platforms-configuration). +Create a top-level command named `aci` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./../install.md#chat-platforms-configuration). ## Configuration @@ -66,7 +66,7 @@ When executing chat commands, you will be presented with a selection dialog cont ## Upgrading from `nautobot-plugin-chatops-aci` App !!! warning - When upgrading from `nautobot-plugin-chatops-aci` App, it's necessary to [avoid conflicts](index.md#potential-apps-conflicts). + When upgrading from `nautobot-plugin-chatops-aci` App, it's necessary to [avoid conflicts](../install.md#potential-apps-conflicts). - Uninstall the old App: ```shell diff --git a/docs/admin/install/ansible_setup.md b/docs/admin/integrations/ansible.md similarity index 91% rename from docs/admin/install/ansible_setup.md rename to docs/admin/integrations/ansible.md index 63e5af9f..a04f8a9a 100644 --- a/docs/admin/install/ansible_setup.md +++ b/docs/admin/integrations/ansible.md @@ -6,15 +6,15 @@ This guide will walk you through steps to set up AWX / Ansible Tower integration Before configuring the integration, please ensure the following: -- `nautobot-chatops` App was [installed with integration extra dependencies](./index.md#installation-guide). +- `nautobot-chatops` App was [installed with integration extra dependencies](./../install.md#installation-guide). ```shell pip install nautobot-chatops[ansible] ``` -- `nautobot-chatops` App is set up with at least one [enabled chat platform](./index.md#chat-platforms-configuration) and [tested](./index.md#test-your-chatbot). +- `nautobot-chatops` App is set up with at least one [enabled chat platform](./../install.md#chat-platforms-configuration) and [tested](./../install.md#test-your-chatbot). ## Command Setup -Create a top-level command named `ansible` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./index.md#chat-platforms-configuration). +Create a top-level command named `ansible` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./../install.md#chat-platforms-configuration). ## Configuration @@ -52,7 +52,7 @@ PLUGINS_CONFIG = { ## Upgrading from `nautobot-plugin-chatops-ansible` App !!! warning - When upgrading from `nautobot-plugin-chatops-ansible` App, it's necessary to [avoid conflicts](index.md#potential-apps-conflicts). + When upgrading from `nautobot-plugin-chatops-ansible` App, it's necessary to [avoid conflicts](../install.md#potential-apps-conflicts). - Uninstall the old App: ```shell diff --git a/docs/admin/install/aristacv_setup.md b/docs/admin/integrations/aristacv.md similarity index 93% rename from docs/admin/install/aristacv_setup.md rename to docs/admin/integrations/aristacv.md index 48309d1a..90bbaba8 100644 --- a/docs/admin/install/aristacv_setup.md +++ b/docs/admin/integrations/aristacv.md @@ -6,15 +6,15 @@ This guide will walk you through steps to set up Arista CloudVision integration Before configuring the integration, please ensure the following: -- `nautobot-chatops` App was [installed with integration extra dependencies](./index.md#installation-guide). +- `nautobot-chatops` App was [installed with integration extra dependencies](./../install.md#installation-guide). ```shell pip install nautobot-chatops[aristacv] ``` -- `nautobot-chatops` App is set up with at least one [enabled chat platform](./index.md#chat-platforms-configuration) and [tested](./index.md#test-your-chatbot). +- `nautobot-chatops` App is set up with at least one [enabled chat platform](./../install.md#chat-platforms-configuration) and [tested](./../install.md#test-your-chatbot). ## Command Setup -Create a top-level command named `aristacv` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./index.md#chat-platforms-configuration). +Create a top-level command named `aristacv` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./../install.md#chat-platforms-configuration). ## Configuration @@ -69,7 +69,7 @@ Once you have updated your environment file, restart both nautobot and nautobot- ## Upgrading from `nautobot-plugin-chatops-arista-cloudvision` App !!! warning - When upgrading from `nautobot-plugin-chatops-arista-cloudvision` App, it's necessary to [avoid conflicts](index.md#potential-apps-conflicts). + When upgrading from `nautobot-plugin-chatops-arista-cloudvision` App, it's necessary to [avoid conflicts](../install.md#potential-apps-conflicts). - Uninstall the old App: ```shell diff --git a/docs/admin/install/grafana_setup.md b/docs/admin/integrations/grafana.md similarity index 93% rename from docs/admin/install/grafana_setup.md rename to docs/admin/integrations/grafana.md index 84b4e407..d09522ec 100644 --- a/docs/admin/install/grafana_setup.md +++ b/docs/admin/integrations/grafana.md @@ -6,18 +6,18 @@ This guide will walk you through steps to set up Grafana integration with the `n Before configuring the integration, please ensure the following: -- `nautobot-chatops` App was [installed with integration extra dependencies](./index.md#installation-guide). +- `nautobot-chatops` App was [installed with integration extra dependencies](./../install.md#installation-guide). ```shell pip install nautobot-chatops[grafana] ``` -- `nautobot-chatops` App is set up with at least one [enabled chat platform](./index.md#chat-platforms-configuration) and [tested](./index.md#test-your-chatbot). +- `nautobot-chatops` App is set up with at least one [enabled chat platform](./../install.md#chat-platforms-configuration) and [tested](./../install.md#test-your-chatbot). - [Grafana](https://grafana.com/docs/grafana/latest/installation/) application installed and configured with dashboards and panels. - [Grafana Image Rendering Service](https://grafana.com/docs/grafana/latest/administration/image_rendering/) installed. - [Grafana Image Rending Plugin for Grafana](https://grafana.com/grafana/plugins/grafana-image-renderer/) installed in your Grafana application. ## Command Setup -Create a top-level command named `grafana` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./index.md#chat-platforms-configuration). +Create a top-level command named `grafana` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./../install.md#chat-platforms-configuration). ## Configuration @@ -62,7 +62,7 @@ PLUGINS_CONFIG = { ## Upgrading from `nautobot-plugin-chatops-grafana` App !!! warning - When upgrading from `nautobot-plugin-chatops-grafana` App, it's necessary to [avoid conflicts](index.md#potential-apps-conflicts). + When upgrading from `nautobot-plugin-chatops-grafana` App, it's necessary to [avoid conflicts](../install.md#potential-apps-conflicts). - Uninstall the old App: ```shell diff --git a/docs/admin/install/ipfabric_setup.md b/docs/admin/integrations/ipfabric.md similarity index 92% rename from docs/admin/install/ipfabric_setup.md rename to docs/admin/integrations/ipfabric.md index aeff7d2c..c1f38326 100644 --- a/docs/admin/install/ipfabric_setup.md +++ b/docs/admin/integrations/ipfabric.md @@ -6,11 +6,11 @@ This guide will walk you through steps to set up IPFabric integration with the ` Before configuring the integration, please ensure the following: -- `nautobot-chatops` App was [installed with integration extra dependencies](./index.md#installation-guide). +- `nautobot-chatops` App was [installed with integration extra dependencies](./../install.md#installation-guide). ```shell pip install nautobot-chatops[ipfabric] ``` -- `nautobot-chatops` App is set up with at least one [enabled chat platform](./index.md#chat-platforms-configuration) and [tested](./index.md#test-your-chatbot). +- `nautobot-chatops` App is set up with at least one [enabled chat platform](./../install.md#chat-platforms-configuration) and [tested](./../install.md#test-your-chatbot). ## Version Matrix @@ -25,7 +25,7 @@ Here is a compatibility matrix and the minimum versions required to run this plu ## Command Setup -Create a top-level command named `ipfabric` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./index.md#chat-platforms-configuration). +Create a top-level command named `ipfabric` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./../install.md#chat-platforms-configuration). ## Configuration @@ -59,7 +59,7 @@ PLUGINS_CONFIG = { ## Upgrading from `nautobot-plugin-chatops-ipfabric` App !!! warning - When upgrading from `nautobot-plugin-chatops-ipfabric` App, it's necessary to [avoid conflicts](index.md#potential-apps-conflicts). + When upgrading from `nautobot-plugin-chatops-ipfabric` App, it's necessary to [avoid conflicts](../install.md#potential-apps-conflicts). - Uninstall the old App: ```shell diff --git a/docs/admin/install/meraki_setup.md b/docs/admin/integrations/meraki.md similarity index 87% rename from docs/admin/install/meraki_setup.md rename to docs/admin/integrations/meraki.md index 6506931f..e3173812 100644 --- a/docs/admin/install/meraki_setup.md +++ b/docs/admin/integrations/meraki.md @@ -6,15 +6,15 @@ This guide will walk you through steps to set up Cisco Meraki integration with t Before configuring the integration, please ensure the following: -- `nautobot-chatops` App was [installed with integration extra dependencies](./index.md#installation-guide). +- `nautobot-chatops` App was [installed with integration extra dependencies](./../install.md#installation-guide). ```shell pip install nautobot-chatops[meraki] ``` -- `nautobot-chatops` App is set up with at least one [enabled chat platform](./index.md#chat-platforms-configuration) and [tested](./index.md#test-your-chatbot). +- `nautobot-chatops` App is set up with at least one [enabled chat platform](./../install.md#chat-platforms-configuration) and [tested](./../install.md#test-your-chatbot). ## Command Setup -Create a top-level command named `meraki` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./index.md#chat-platforms-configuration). +Create a top-level command named `meraki` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./../install.md#chat-platforms-configuration). ## Configuration @@ -46,7 +46,7 @@ The alternative option is to set the environmental variable: ## Upgrading from `nautobot-plugin-chatops-meraki` App !!! warning - When upgrading from `nautobot-plugin-chatops-meraki` App, it's necessary to [avoid conflicts](index.md#potential-apps-conflicts). + When upgrading from `nautobot-plugin-chatops-meraki` App, it's necessary to [avoid conflicts](../install.md#potential-apps-conflicts). - Uninstall the old App: ```shell diff --git a/docs/admin/install/panorama_setup.md b/docs/admin/integrations/panorama.md similarity index 89% rename from docs/admin/install/panorama_setup.md rename to docs/admin/integrations/panorama.md index 1907ca97..63e29011 100644 --- a/docs/admin/install/panorama_setup.md +++ b/docs/admin/integrations/panorama.md @@ -6,15 +6,15 @@ This guide will walk you through steps to set up Palo Alto Panorama integration Before configuring the integration, please ensure the following: -- `nautobot-chatops` App was [installed with integration extra dependencies](./index.md#installation-guide). +- `nautobot-chatops` App was [installed with integration extra dependencies](./../install.md#installation-guide). ```shell pip install nautobot-chatops[panorama] ``` -- `nautobot-chatops` App is set up with at least one [enabled chat platform](./index.md#chat-platforms-configuration) and [tested](./index.md#test-your-chatbot). +- `nautobot-chatops` App is set up with at least one [enabled chat platform](./../install.md#chat-platforms-configuration) and [tested](./../install.md#test-your-chatbot). ## Command Setup -Create a top-level command named `panorama` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./index.md#chat-platforms-configuration). +Create a top-level command named `panorama` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./../install.md#chat-platforms-configuration). ## Configuration @@ -46,7 +46,7 @@ PLUGINS_CONFIG = { ## Upgrading from `nautobot-plugin-chatops-panorama` App !!! warning - When upgrading from `nautobot-plugin-chatops-panorama` App, it's necessary to [avoid conflicts](index.md#potential-apps-conflicts). + When upgrading from `nautobot-plugin-chatops-panorama` App, it's necessary to [avoid conflicts](../install.md#potential-apps-conflicts). - Uninstall the old App: ```shell diff --git a/docs/admin/install/mattermost_setup.md b/docs/admin/platforms/mattermost.md similarity index 92% rename from docs/admin/install/mattermost_setup.md rename to docs/admin/platforms/mattermost.md index 40ac69b4..92e8ba6d 100644 --- a/docs/admin/install/mattermost_setup.md +++ b/docs/admin/platforms/mattermost.md @@ -25,7 +25,7 @@ - Copy the displayed url matching the Server you want to add the chatbot to. - Make sure to include the `http://` or `https://`. - If shown, make sure to include the port. Ex. `https://example.com:8065` -6. Proceed to the [Install Guide](index.md#Install-Guide) section. +6. Proceed to the [Install Guide](../install.md#Install-Guide) section. **Note:** For every Slash Command created for Mattermost, a separate token will be generated. @@ -39,4 +39,4 @@ ## General Chat Setup Instructions -See [admin_install](index.md) instructions here for general plugin setup instructions. +See [admin_install](../install.md) instructions here for general plugin setup instructions. diff --git a/docs/admin/install/microsoft_teams_setup.md b/docs/admin/platforms/microsoft_teams.md similarity index 96% rename from docs/admin/install/microsoft_teams_setup.md rename to docs/admin/platforms/microsoft_teams.md index ac3b2ac5..ff0ea783 100644 --- a/docs/admin/install/microsoft_teams_setup.md +++ b/docs/admin/platforms/microsoft_teams.md @@ -36,7 +36,7 @@ 1. In the Microsoft Teams client, select “Apps” from the sidebar to the left. 2. Select “Built for your org.” 3. Select the tile for the new Nautobot app. Click the blue “Add” button. -4. Proceed to the [Install Guide](index.md#Install-Guide) section. +4. Proceed to the [Install Guide](../install.md#Install-Guide) section. ## Nautobot Config @@ -53,4 +53,4 @@ Reference the [Setting Up Nautobot ChatOps With MSTeams Fall 2022](https://blog. ## General Chat Setup Instructions -See [admin_install](index.md) instructions here for general plugin setup instructions. +See [admin_install](../install.md) instructions here for general plugin setup instructions. diff --git a/docs/admin/install/slack_setup.md b/docs/admin/platforms/slack.md similarity index 99% rename from docs/admin/install/slack_setup.md rename to docs/admin/platforms/slack.md index d12c5f86..1f59b7bd 100644 --- a/docs/admin/install/slack_setup.md +++ b/docs/admin/platforms/slack.md @@ -138,7 +138,7 @@ PLUGINS_CONFIG = { ![slack integration invite](../../images/add_nautobot.png) -Once these steps are completed, you can proceed to the [Install Guide](index.md#Install-Guide) section. +Once these steps are completed, you can proceed to the [Install Guide](../install.md#Install-Guide) section. ## Configuring Multiple Chatbots in a Workspace @@ -186,7 +186,7 @@ PLUGINS_CONFIG = { ## General Chat Setup Instructions -See [admin_install](index.md) instructions here for general plugin setup instructions. +See [admin_install](../install.md) instructions here for general plugin setup instructions. ## Startup Slack Sockets (Socket Mode) diff --git a/docs/admin/install/webex_setup.md b/docs/admin/platforms/webex.md similarity index 95% rename from docs/admin/install/webex_setup.md rename to docs/admin/platforms/webex.md index b282f64d..a65d9fa9 100644 --- a/docs/admin/install/webex_setup.md +++ b/docs/admin/platforms/webex.md @@ -28,7 +28,7 @@ - secret: (enter a secret string that you don't mind having passed around as plaintext) - Change the `resource` to "attachmentActions" and run the API call again to create a second webhook. 4. Configure the `webex_signing_secret` in your `.creds.env` to match the Webhook secret string that you selected above. -5. Proceed to the [Installation Guide](index.md#Install-Guide) section. +5. Proceed to the [Installation Guide](../install.md#Install-Guide) section. ## Deprecation Warning @@ -60,4 +60,4 @@ Both settings will currently work, however support for `enable_webex_teams`, `we ## General Chat Setup Instructions -See [admin_install](index.md) instructions here for general plugin setup instructions. +See [admin_install](../install.md) instructions here for general plugin setup instructions. diff --git a/docs/dev/release_checklist.md b/docs/dev/release_checklist.md index d31d8c4f..1455133b 100644 --- a/docs/dev/release_checklist.md +++ b/docs/dev/release_checklist.md @@ -49,7 +49,7 @@ Add the release notes (`docs/release-notes/X.Y.md`) to the table of contents wit ### Verify and Revise the Installation Documentation -Follow the [installation instructions](../admin/install/index.md) to perform a new production installation of Nautobot ChatOps. +Follow the [installation instructions](../admin/install.md) to perform a new production installation of Nautobot ChatOps. The goal of this step is to walk through the entire install process *as documented* to make sure nothing there needs to be changed or updated, to catch any errors or omissions in the documentation, and to ensure that it is current with each release. diff --git a/docs/user/app_getting_started.md b/docs/user/app_getting_started.md index c2da634b..4a30aeab 100644 --- a/docs/user/app_getting_started.md +++ b/docs/user/app_getting_started.md @@ -4,7 +4,7 @@ A step-by-step tutorial on how to get the App going and how to use it. ## Install the App -To install the App, please follow the instructions detailed in the [Administrator Guide](../admin/install/index.md). +To install the App, please follow the instructions detailed in the [Administrator Guide](../admin/install.md). ## Link Nautobot Account @@ -52,10 +52,10 @@ Interact with Nautobot by utilizing the following sub-commands: The `nautobot-chatops` package includes multiple integrations. Each integration adds chat commands described here: -- [Cisco ACI](./aci_commands.md) -- [AWX / Ansible Tower](./ansible_commands.md) -- [Arista CloudVision](./aristacv_commands.md) -- [Grafana](./grafana_commands.md) -- [IPFabric](./ipfabric_commands.md) -- [Cisco Meraki](./meraki_commands.md) -- [Palo Alto Panorama](./panorama_commands.md) +- [Cisco ACI](./integrations/aci.md) +- [AWX / Ansible Tower](./integrations/ansible.md) +- [Arista CloudVision](./integrations/aristacv.md) +- [Grafana](./integrations/grafana.md) +- [IPFabric](./integrations/ipfabric.md) +- [Cisco Meraki](./integrations/meraki.md) +- [Palo Alto Panorama](./integrations/panorama.md) diff --git a/docs/user/aci_commands.md b/docs/user/integrations/aci.md similarity index 82% rename from docs/user/aci_commands.md rename to docs/user/integrations/aci.md index 40e71756..9b6416fa 100644 --- a/docs/user/aci_commands.md +++ b/docs/user/integrations/aci.md @@ -25,16 +25,16 @@ Interact with Cisco ACI by utilizing the following sub-commands: ### Slack -![image](../images/aci-slack-get-tenants.png) +![image](../../images/aci-slack-get-tenants.png) -![image](../images/aci-slack-get-epg-details.png) +![image](../../images/aci-slack-get-epg-details.png) -![image](../images/aci-slack-get-bds.png) +![image](../../images/aci-slack-get-bds.png) ### Cisco Webex -![image](../images/aci-slack-get-tenants.png) +![image](../../images/aci-slack-get-tenants.png) -![image](../images/aci-slack-get-epg-details.png) +![image](../../images/aci-slack-get-epg-details.png) -![image](../images/aci-slack-get-bds.png) +![image](../../images/aci-slack-get-bds.png) diff --git a/docs/user/ansible_commands.md b/docs/user/integrations/ansible.md similarity index 100% rename from docs/user/ansible_commands.md rename to docs/user/integrations/ansible.md diff --git a/docs/user/aristacv_commands.md b/docs/user/integrations/aristacv.md similarity index 88% rename from docs/user/aristacv_commands.md rename to docs/user/integrations/aristacv.md index 8ee52bd9..465cc265 100644 --- a/docs/user/aristacv_commands.md +++ b/docs/user/integrations/aristacv.md @@ -20,8 +20,8 @@ Interact with Arista CloudVision by utilizing the following sub-commands: ## Screenshots -![image](../images/aristacv-get-device-cve.png) +![image](../../images/aristacv-get-device-cve.png) -![image](../images/aristacv-get-configlet.png) +![image](../../images/aristacv-get-configlet.png) -![image](../images/aristacv-get-device-cve.png) +![image](../../images/aristacv-get-device-cve.png) diff --git a/docs/user/grafana_commands.md b/docs/user/integrations/grafana.md similarity index 100% rename from docs/user/grafana_commands.md rename to docs/user/integrations/grafana.md diff --git a/docs/user/ipfabric_commands.md b/docs/user/integrations/ipfabric.md similarity index 87% rename from docs/user/ipfabric_commands.md rename to docs/user/integrations/ipfabric.md index 053c0941..13213c3c 100644 --- a/docs/user/ipfabric_commands.md +++ b/docs/user/integrations/ipfabric.md @@ -25,16 +25,16 @@ IP Fabric uses a concept of snapshots which can include different devices and da ## Screenshots -![image](../images/ipfabric-1.png) +![image](../../images/ipfabric-1.png) -![image](../images/ipfabric-2.png) +![image](../../images/ipfabric-2.png) -![image](../images/ipfabric-3.png) +![image](../../images/ipfabric-3.png) -![image](../images/ipfabric-4.png) +![image](../../images/ipfabric-4.png) -![image](../images/ipfabric-5.png) +![image](../../images/ipfabric-5.png) -![image](../images/ipfabric-6.png) +![image](../../images/ipfabric-6.png) -![image](../images/ipfabric-7.png) +![image](../../images/ipfabric-7.png) diff --git a/docs/user/meraki_commands.md b/docs/user/integrations/meraki.md similarity index 89% rename from docs/user/meraki_commands.md rename to docs/user/integrations/meraki.md index 701f4d88..d114666d 100644 --- a/docs/user/meraki_commands.md +++ b/docs/user/integrations/meraki.md @@ -27,15 +27,15 @@ Interact with Cisco Meraki by utilizing the following sub-commands: Running `/meraki get-organizations`. -![Example output for get-organizations](../images/00-meraki-get-orgs.png) +![Example output for get-organizations](../../images/00-meraki-get-orgs.png) Running `/meraki get-networks`. -![Example output for get-networks](../images/00-meraki-get-networks.png) +![Example output for get-networks](../../images/00-meraki-get-networks.png) Running `/meraki get-switchports-status`. -![Example output for get-networks](../images/00-meraki-get-port-stats.png) +![Example output for get-networks](../../images/00-meraki-get-port-stats.png) Since the output was cut off the output example is below: @@ -62,12 +62,12 @@ To demonstrate a example of configuration updates. There is a simple configurat Specify Org, Switch, and Port ID. -![Example output for config-port0](../images/00-meraki-port-config.png) +![Example output for config-port0](../../images/00-meraki-port-config.png) Fill out the Port Specific Configuration. -![Example output for config-port1](../images/01-meraki-port-config.png) +![Example output for config-port1](../../images/01-meraki-port-config.png) Result of the configuration. -![Example output for config-port2](../images/02-meraki-port-config.png) +![Example output for config-port2](../../images/02-meraki-port-config.png) diff --git a/docs/user/panorama_commands.md b/docs/user/integrations/panorama.md similarity index 73% rename from docs/user/panorama_commands.md rename to docs/user/integrations/panorama.md index 9eb6e752..a4332e30 100644 --- a/docs/user/panorama_commands.md +++ b/docs/user/integrations/panorama.md @@ -21,20 +21,20 @@ Interact with Palo Alto Panorama by utilizing the following sub-commands: ## Screenshots -![Help](../images/panorama-01.png) +![Help](../../images/panorama-01.png) -![Validate Rule Exists Success](../images/panorama-02.png) +![Validate Rule Exists Success](../../images/panorama-02.png) -![Validate Rule Exists Failure](../images/panorama-03.png) +![Validate Rule Exists Failure](../../images/panorama-03.png) -![Upload Software](../images/panorama-04.png) +![Upload Software](../../images/panorama-04.png) -![Capture Traffic Filter](../images/panorama-05.png) +![Capture Traffic Filter](../../images/panorama-05.png) -![Capture Traffic](../images/panorama-06.png) +![Capture Traffic](../../images/panorama-06.png) -![Get Devices](../images/panorama-07.png) +![Get Devices](../../images/panorama-07.png) -![Get DeviceGroups](../images/panorama-08.png) +![Get Device Groups](../../images/panorama-08.png) -![Get Device Rules](../images/panorama-09.png) +![Get Device Rules](../../images/panorama-09.png) diff --git a/mkdocs.yml b/mkdocs.yml index 8ead7041..8a35c26f 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -101,29 +101,30 @@ nav: - User Guide: - App Overview: "user/app_overview.md" - Getting Started: "user/app_getting_started.md" - - Frequently Asked Questions: "user/app_faq.md" - Integrations: - - "user/aci_commands.md" - - "user/ansible_commands.md" - - "user/aristacv_commands.md" - - "user/grafana_commands.md" - - "user/ipfabric_commands.md" - - "user/meraki_commands.md" - - "user/panorama_commands.md" + - "user/integrations/aci.md" + - "user/integrations/ansible.md" + - "user/integrations/aristacv.md" + - "user/integrations/grafana.md" + - "user/integrations/ipfabric.md" + - "user/integrations/meraki.md" + - "user/integrations/panorama.md" + - Frequently Asked Questions: "user/app_faq.md" - Administrator Guide: - - Install and Configure: - - "admin/install/index.md" - - "admin/install/slack_setup.md" - - "admin/install/mattermost_setup.md" - - "admin/install/webex_setup.md" - - "admin/install/microsoft_teams_setup.md" - - "admin/install/aci_setup.md" - - "admin/install/ansible_setup.md" - - "admin/install/aristacv_setup.md" - - "admin/install/grafana_setup.md" - - "admin/install/ipfabric_setup.md" - - "admin/install/meraki_setup.md" - - "admin/install/panorama_setup.md" + - Install and Configure: "admin/install.md" + - Platforms: + - "admin/platforms/slack.md" + - "admin/platforms/mattermost.md" + - "admin/platforms/webex.md" + - "admin/platforms/microsoft_teams.md" + - Integrations: + - "admin/integrations/aci.md" + - "admin/integrations/ansible.md" + - "admin/integrations/aristacv.md" + - "admin/integrations/grafana.md" + - "admin/integrations/ipfabric.md" + - "admin/integrations/meraki.md" + - "admin/integrations/panorama.md" - Upgrade: "admin/upgrade.md" - Uninstall: "admin/uninstall.md" - Compatibility Matrix: "admin/compatibility_matrix.md" From 187fcf734ec54e069cd9a6cbae8bb85a4bcc016e Mon Sep 17 00:00:00 2001 From: Jan Snasel Date: Mon, 25 Sep 2023 11:49:40 +0000 Subject: [PATCH 02/93] fix: Add changelog fragment --- changes/265.changed | 1 + 1 file changed, 1 insertion(+) create mode 100644 changes/265.changed diff --git a/changes/265.changed b/changes/265.changed new file mode 100644 index 00000000..5dbed3a4 --- /dev/null +++ b/changes/265.changed @@ -0,0 +1 @@ +Aligned integrations documentation structure with SSoT. From c17166c92a7493e18bbb43ba8a5692ef4a5728c3 Mon Sep 17 00:00:00 2001 From: meganerd Date: Mon, 25 Sep 2023 20:04:46 -0400 Subject: [PATCH 03/93] copy init-jobs changes fom #224 with rebase to next-2.0 branch --- changes/224.added | 3 + nautobot_chatops/workers/nautobot.py | 105 ++++++++++++++++++++++++++- 2 files changed, 107 insertions(+), 1 deletion(-) create mode 100644 changes/224.added diff --git a/changes/224.added b/changes/224.added new file mode 100644 index 00000000..ac354b51 --- /dev/null +++ b/changes/224.added @@ -0,0 +1,3 @@ +Add init_job Nautobot subcommand, which starts a Nautobot job by job name. +Add get_jobs Nautobot subcommand, which gets all Nautobot jobs. +Add filter_jobs Nautobot subcommand, which gets filtered set of Nautobot jobs. \ No newline at end of file diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index 819fb2be..5ac0442e 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1,5 +1,9 @@ """Worker functions for interacting with Nautobot.""" +import uuid + + +from django.contrib.auth import get_user_model from django.core.exceptions import ValidationError from django.db.models import Count from django.contrib.contenttypes.models import ContentType @@ -10,7 +14,10 @@ from nautobot.dcim.models import Device, DeviceType, Location, LocationType, Manufacturer, Rack, Cable from nautobot.ipam.models import VLAN, Prefix, VLANGroup from nautobot.tenancy.models import Tenant -from nautobot.extras.models import Role, Status +from nautobot.extras.context_managers import web_request_context +from nautobot.extras.jobs import run_job +from nautobot.extras.models import Job, JobResult, Role, Status +from nautobot.extras.utils import get_job_content_type from nautobot_chatops.choices import CommandStatusChoices from nautobot_chatops.workers import subcommand_of, handle_subcommands @@ -1045,6 +1052,102 @@ def get_circuit_providers(dispatcher, *args): return CommandStatusChoices.STATUS_SUCCEEDED +@subcommand_of("nautobot") +def filter_jobs( + dispatcher, job_filters: str = "" +): # We can use a Literal["enabled", "installed", "runnable"] here instead + """Get a filtered list of jobs from Nautobot. + Args: + job_filters (str): Filter job results by literals in a comma-separated string. + Available filters are: enabled, installed or runnable. + """ + # Check for filters in user supplied input + job_filters_list = [item.strip() for item in job_filters.split(",")] if isinstance(job_filters, str) else "" + filters = ["enabled", "installed", "runnable"] + if any([key in job_filters for key in filters]): + filter_args = {key: True for key in filters if key in job_filters_list} + jobs = Job.objects.restrict(dispatch.user, "view").filter( + **filter_args + ) # enabled=True, installed=True, runnable=True + else: + jobs = Job.objects.restrict(dispatch.user, "view").all() + + header = ["Name", "ID"] + rows = [ + ( + str(job.name), + str(job.id), + ) + for job in jobs + ] + + dispatcher.send_large_table(header, rows) + + return CommandStatusChoices.STATUS_SUCCEEDED + + +@subcommand_of("nautobot") +def get_jobs(dispatcher): + """Get all jobs from Nautobot.""" + jobs = Job.objects.restrict(dispatch.user, "view").all() + + header = ["Name", "ID"] + rows = [ + ( + str(job.name), + str(job.id), + ) + for job in jobs + ] + + dispatcher.send_large_table(header, rows) + + return CommandStatusChoices.STATUS_SUCCEEDED + + +@subcommand_of("nautobot") +def init_job(dispatcher, job_name): + """Initiate a job in Nautobot by job name.""" + # Get instance of the user who will run the job + user = get_user_model() + try: + user_instance = user.objects.get(username=dispatch.user) + except user.DoesNotExist: # Unsure if we need to check this case? + dispatcher.send_error(f"User {dispatch.user} not found") + return (CommandStatusChoices.STATUS_FAILED, f'User "{dispatch.user}" not found') + + # Get the job model instance using job name + try: + job_model = Job.objects.restrict(dispatch.user, "view").get(name=job_name) + except Job.DoesNotExist: + dispatcher.send_error(f"Job {job_name} not found") + return (CommandStatusChoices.STATUS_FAILED, f'Job "{job_name}" not found') + + job_class_path = job_model.class_path + + # Create an instance of job result + job_result = JobResult.objects.create( + name=job_model.class_path, + job_kwargs={"data": {}, "commit": True, "profile": False}, + obj_type=get_job_content_type(), + user=user_instance, + job_model=job_model, + job_id=uuid.uuid4(), + ) + + # Emulate HTTP context for the request as the user + with web_request_context(user=user_instance) as request: + run_job(data={}, request=request, commit=True, job_result_pk=job_result.pk) + + blocks = [ + dispatcher.markdown_block(f"The requested job {job_class_path} was initiated!"), + ] + + dispatcher.send_blocks(blocks) + + return CommandStatusChoices.STATUS_SUCCEEDED + + @subcommand_of("nautobot") def about(dispatcher, *args): """Provide link for more information on Nautobot Apps.""" From 67d545de1e5af100017d2e4a52533d4ad15ac392 Mon Sep 17 00:00:00 2001 From: meganerd Date: Tue, 26 Sep 2023 02:02:02 -0400 Subject: [PATCH 04/93] Rebased PR for next-2.0 branch, had some trouble with fork Update init_jobs for new pattern, tested and working Add kwargs to init_jobs, untested but looks good Add get_jobs which returns all Nautobot jobs viewable to user Add filter_jobs which returns filtered set of Nautobot jobs viewable to user --- nautobot_chatops/workers/nautobot.py | 72 +++++++++++++++++----------- 1 file changed, 45 insertions(+), 27 deletions(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index 5ac0442e..981a40f0 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1,6 +1,7 @@ """Worker functions for interacting with Nautobot.""" import uuid +import json from django.contrib.auth import get_user_model @@ -15,9 +16,7 @@ from nautobot.ipam.models import VLAN, Prefix, VLANGroup from nautobot.tenancy.models import Tenant from nautobot.extras.context_managers import web_request_context -from nautobot.extras.jobs import run_job from nautobot.extras.models import Job, JobResult, Role, Status -from nautobot.extras.utils import get_job_content_type from nautobot_chatops.choices import CommandStatusChoices from nautobot_chatops.workers import subcommand_of, handle_subcommands @@ -1056,7 +1055,7 @@ def get_circuit_providers(dispatcher, *args): def filter_jobs( dispatcher, job_filters: str = "" ): # We can use a Literal["enabled", "installed", "runnable"] here instead - """Get a filtered list of jobs from Nautobot. + """Get a filtered list of jobs from Nautobot that the request user have view permissions for. Args: job_filters (str): Filter job results by literals in a comma-separated string. Available filters are: enabled, installed or runnable. @@ -1066,17 +1065,18 @@ def filter_jobs( filters = ["enabled", "installed", "runnable"] if any([key in job_filters for key in filters]): filter_args = {key: True for key in filters if key in job_filters_list} - jobs = Job.objects.restrict(dispatch.user, "view").filter( + jobs = Job.objects.restrict(dispatcher.user, "view").filter( **filter_args ) # enabled=True, installed=True, runnable=True else: - jobs = Job.objects.restrict(dispatch.user, "view").all() + jobs = Job.objects.restrict(dispatcher.user, "view").all() - header = ["Name", "ID"] + header = ["Name", "ID", "Enabled"] rows = [ ( str(job.name), str(job.id), + str(job.enabled), ) for job in jobs ] @@ -1088,14 +1088,15 @@ def filter_jobs( @subcommand_of("nautobot") def get_jobs(dispatcher): - """Get all jobs from Nautobot.""" - jobs = Job.objects.restrict(dispatch.user, "view").all() + """Get all jobs from Nautobot that the requesting user have view permissions for.""" + jobs = Job.objects.restrict(dispatcher.user, "view").all() - header = ["Name", "ID"] + header = ["Name", "ID", "Enabled"] rows = [ ( str(job.name), str(job.id), + str(job.enabled), ) for job in jobs ] @@ -1106,39 +1107,56 @@ def get_jobs(dispatcher): @subcommand_of("nautobot") -def init_job(dispatcher, job_name): - """Initiate a job in Nautobot by job name.""" +def init_job(dispatcher, job_name: str, kwargs: str = ""): + """Initiate a job in Nautobot by job name. + + Args: + job_name (str): Name of Nautobot job to run. + kwargs (str): JSON-string dictionary for input keyword arguments for job run. + #profile (str): Whether to profile the job execution. + """ + # Confirm kwargs is valid JSON + json_args = {} + try: + if kwargs: + json_args = json.loads(kwargs) + except json.JSONDecodeError as exc: + dispatcher.send_error(f"Invalid JSON-string, cannot decode: {kwargs}") + return (CommandStatusChoices.STATUS_FAILED, f'Invalid JSON-string, cannot decode: {kwargs}') + + profile = False + if json_args.get("profile") and json_args["profile"] == True: + profile = True + # Get instance of the user who will run the job user = get_user_model() try: - user_instance = user.objects.get(username=dispatch.user) + user_instance = user.objects.get(username=dispatcher.user) except user.DoesNotExist: # Unsure if we need to check this case? - dispatcher.send_error(f"User {dispatch.user} not found") - return (CommandStatusChoices.STATUS_FAILED, f'User "{dispatch.user}" not found') + dispatcher.send_error(f"User {dispatcher.user} not found") + return (CommandStatusChoices.STATUS_FAILED, f'User "{dispatcher.user}" was not found') # Get the job model instance using job name try: - job_model = Job.objects.restrict(dispatch.user, "view").get(name=job_name) + job_model = Job.objects.restrict(dispatcher.user, "view").get(name=job_name) except Job.DoesNotExist: dispatcher.send_error(f"Job {job_name} not found") - return (CommandStatusChoices.STATUS_FAILED, f'Job "{job_name}" not found') + return (CommandStatusChoices.STATUS_FAILED, f'Job "{job_name}" was not found') + + if not job_model.enabled: + dispatcher.send_error(f"The requested job {job_name} is not enabled") + return (CommandStatusChoices.STATUS_FAILED, f'Job "{job_name}" is not enabled') job_class_path = job_model.class_path - # Create an instance of job result - job_result = JobResult.objects.create( - name=job_model.class_path, - job_kwargs={"data": {}, "commit": True, "profile": False}, - obj_type=get_job_content_type(), - user=user_instance, + # TODO: Check if json_args keys are valid for this job model + job_result = JobResult.execute_job( job_model=job_model, - job_id=uuid.uuid4(), + user=user_instance, + profile=profile, + **json_args, ) - # Emulate HTTP context for the request as the user - with web_request_context(user=user_instance) as request: - run_job(data={}, request=request, commit=True, job_result_pk=job_result.pk) - blocks = [ dispatcher.markdown_block(f"The requested job {job_class_path} was initiated!"), ] From e01dbe6d5e8423ff3450c0b089d874c8d04aad51 Mon Sep 17 00:00:00 2001 From: meganerd Date: Tue, 26 Sep 2023 02:27:05 -0400 Subject: [PATCH 05/93] Correct change fragment, #270 will replace #224, and closes #223 Run black formatter --- changes/224.added | 3 --- changes/270.added | 4 ++++ nautobot_chatops/workers/nautobot.py | 6 +++--- 3 files changed, 7 insertions(+), 6 deletions(-) delete mode 100644 changes/224.added create mode 100644 changes/270.added diff --git a/changes/224.added b/changes/224.added deleted file mode 100644 index ac354b51..00000000 --- a/changes/224.added +++ /dev/null @@ -1,3 +0,0 @@ -Add init_job Nautobot subcommand, which starts a Nautobot job by job name. -Add get_jobs Nautobot subcommand, which gets all Nautobot jobs. -Add filter_jobs Nautobot subcommand, which gets filtered set of Nautobot jobs. \ No newline at end of file diff --git a/changes/270.added b/changes/270.added new file mode 100644 index 00000000..2a43fc7f --- /dev/null +++ b/changes/270.added @@ -0,0 +1,4 @@ +Add init_jobs Nautobot subcommand. +Add kwargs input to init_jobs as JSON-string to init_jobs. +Add get_jobs Nautobot subcommand, which returns all Nautobot jobs viewable to user. +Add filter_jobs Nautobot subcommand, which returns filtered set of Nautobot jobs viewable to user. diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index 981a40f0..e3ed68b2 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1122,12 +1122,12 @@ def init_job(dispatcher, job_name: str, kwargs: str = ""): json_args = json.loads(kwargs) except json.JSONDecodeError as exc: dispatcher.send_error(f"Invalid JSON-string, cannot decode: {kwargs}") - return (CommandStatusChoices.STATUS_FAILED, f'Invalid JSON-string, cannot decode: {kwargs}') - + return (CommandStatusChoices.STATUS_FAILED, f"Invalid JSON-string, cannot decode: {kwargs}") + profile = False if json_args.get("profile") and json_args["profile"] == True: profile = True - + # Get instance of the user who will run the job user = get_user_model() try: From 99e45120b3fd3e15b39cba9f77038ed1e2f0276f Mon Sep 17 00:00:00 2001 From: meganerd Date: Tue, 26 Sep 2023 03:05:28 -0400 Subject: [PATCH 06/93] Add kwargs for get_jobs() that allows user-specified header items to be exported for jobs. --- nautobot_chatops/workers/nautobot.py | 36 +++++++++++++++++++--------- 1 file changed, 25 insertions(+), 11 deletions(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index e3ed68b2..503b3720 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1087,19 +1087,33 @@ def filter_jobs( @subcommand_of("nautobot") -def get_jobs(dispatcher): - """Get all jobs from Nautobot that the requesting user have view permissions for.""" +def get_jobs(dispatcher, kwargs: str = ""): + """Get all jobs from Nautobot that the requesting user have view permissions for. + + Args: + kwargs (str): JSON-string array of header items to be exported. + """ + # Confirm kwargs is valid JSON + json_args = ["Name", "Id", "Enabled"] + try: + if kwargs: + json_args = json.loads(kwargs) + except json.JSONDecodeError as exc: + dispatcher.send_error(f"Invalid JSON-string, cannot decode: {kwargs}") + return (CommandStatusChoices.STATUS_FAILED, f"Invalid JSON-string, cannot decode: {kwargs}") + jobs = Job.objects.restrict(dispatcher.user, "view").all() - header = ["Name", "ID", "Enabled"] - rows = [ - ( - str(job.name), - str(job.id), - str(job.enabled), - ) - for job in jobs - ] + # Check if all items in json_args are valid keys (assuming all keys of job object are valid) + valid_keys = [attr for attr in dir(Job) if not callable(getattr(Job, attr)) and not attr.startswith("_")] + for item in json_args: + if item not in valid_keys: + dispatcher.send_error(f"Invalid item provided: {item}") + return (CommandStatusChoices.STATUS_FAILED, f"Invalid item provided: {item}") + + # TODO: Check json_args are all valid keys + header = [item.capitalize() for item in json_args] + rows = [(tuple(str(getattr(job, item, "")) for item in json_args)) for job in jobs] dispatcher.send_large_table(header, rows) From 0d623efd10f63dcb992a9fd792d67599b42c63fe Mon Sep 17 00:00:00 2001 From: meganerd Date: Tue, 26 Sep 2023 03:08:31 -0400 Subject: [PATCH 07/93] Minor update --- nautobot_chatops/workers/nautobot.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index 503b3720..45169a77 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1058,11 +1058,11 @@ def filter_jobs( """Get a filtered list of jobs from Nautobot that the request user have view permissions for. Args: job_filters (str): Filter job results by literals in a comma-separated string. - Available filters are: enabled, installed or runnable. + Available filters are: enabled, installed. """ # Check for filters in user supplied input job_filters_list = [item.strip() for item in job_filters.split(",")] if isinstance(job_filters, str) else "" - filters = ["enabled", "installed", "runnable"] + filters = ["enabled", "installed"] # Runnable is not valid if any([key in job_filters for key in filters]): filter_args = {key: True for key in filters if key in job_filters_list} jobs = Job.objects.restrict(dispatcher.user, "view").filter( From 0f28144637fd8077ee76f352da6cc06eb561df8a Mon Sep 17 00:00:00 2001 From: meganerd Date: Tue, 26 Sep 2023 03:34:15 -0400 Subject: [PATCH 08/93] Catch job_result.result == "FAILURE" Update markdown to URL --- nautobot_chatops/workers/nautobot.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index 45169a77..6161b12c 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1170,9 +1170,14 @@ def init_job(dispatcher, job_name: str, kwargs: str = ""): profile=profile, **json_args, ) + + if job_result and job_result.status == "FAILURE": + dispatcher.send_error(f"The requested job {job_name} failed to initiate. Result: {job_result.result}") + return (CommandStatusChoices.STATUS_FAILED, f'Job "{job_name}" failed to initiate. Result: {job_result.result}') + # TODO: need base-domain, this yields: /extras/job-results// blocks = [ - dispatcher.markdown_block(f"The requested job {job_class_path} was initiated!"), + dispatcher.markdown_block(f"The requested job {job_class_path} was initiated! [`click here`]({job_result.get_absolute_url()}) to open the job."), ] dispatcher.send_blocks(blocks) From 9d99ca7d34d76d9ad37b834ab3fade145f6dc4f0 Mon Sep 17 00:00:00 2001 From: meganerd Date: Tue, 26 Sep 2023 03:35:36 -0400 Subject: [PATCH 09/93] run black --- nautobot_chatops/workers/nautobot.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index 6161b12c..45ccfaaa 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1170,14 +1170,16 @@ def init_job(dispatcher, job_name: str, kwargs: str = ""): profile=profile, **json_args, ) - + if job_result and job_result.status == "FAILURE": dispatcher.send_error(f"The requested job {job_name} failed to initiate. Result: {job_result.result}") return (CommandStatusChoices.STATUS_FAILED, f'Job "{job_name}" failed to initiate. Result: {job_result.result}') # TODO: need base-domain, this yields: /extras/job-results// blocks = [ - dispatcher.markdown_block(f"The requested job {job_class_path} was initiated! [`click here`]({job_result.get_absolute_url()}) to open the job."), + dispatcher.markdown_block( + f"The requested job {job_class_path} was initiated! [`click here`]({job_result.get_absolute_url()}) to open the job." + ), ] dispatcher.send_blocks(blocks) From 4d0d877845bc1aae1e3f2d1fdc099516ca9ff7a3 Mon Sep 17 00:00:00 2001 From: meganerd Date: Tue, 26 Sep 2023 03:39:22 -0400 Subject: [PATCH 10/93] pydocstyle, flake8 fixes --- nautobot_chatops/workers/nautobot.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index 45ccfaaa..07ec2043 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1056,6 +1056,7 @@ def filter_jobs( dispatcher, job_filters: str = "" ): # We can use a Literal["enabled", "installed", "runnable"] here instead """Get a filtered list of jobs from Nautobot that the request user have view permissions for. + Args: job_filters (str): Filter job results by literals in a comma-separated string. Available filters are: enabled, installed. @@ -1098,7 +1099,7 @@ def get_jobs(dispatcher, kwargs: str = ""): try: if kwargs: json_args = json.loads(kwargs) - except json.JSONDecodeError as exc: + except json.JSONDecodeError: dispatcher.send_error(f"Invalid JSON-string, cannot decode: {kwargs}") return (CommandStatusChoices.STATUS_FAILED, f"Invalid JSON-string, cannot decode: {kwargs}") @@ -1134,12 +1135,12 @@ def init_job(dispatcher, job_name: str, kwargs: str = ""): try: if kwargs: json_args = json.loads(kwargs) - except json.JSONDecodeError as exc: + except json.JSONDecodeError: dispatcher.send_error(f"Invalid JSON-string, cannot decode: {kwargs}") return (CommandStatusChoices.STATUS_FAILED, f"Invalid JSON-string, cannot decode: {kwargs}") profile = False - if json_args.get("profile") and json_args["profile"] == True: + if json_args.get("profile") and json_args["profile"] is True: profile = True # Get instance of the user who will run the job From fe07fc3a73bdddccf11d1bf0f15ec15bf0fd7afe Mon Sep 17 00:00:00 2001 From: meganerd Date: Tue, 26 Sep 2023 03:39:49 -0400 Subject: [PATCH 11/93] black formatter --- nautobot_chatops/workers/nautobot.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index 07ec2043..3fec0247 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1056,7 +1056,7 @@ def filter_jobs( dispatcher, job_filters: str = "" ): # We can use a Literal["enabled", "installed", "runnable"] here instead """Get a filtered list of jobs from Nautobot that the request user have view permissions for. - + Args: job_filters (str): Filter job results by literals in a comma-separated string. Available filters are: enabled, installed. From 1c8da1a94d8993c0fa685f27d95e619e03dffc12 Mon Sep 17 00:00:00 2001 From: meganerd Date: Tue, 26 Sep 2023 03:53:39 -0400 Subject: [PATCH 12/93] pylint --- nautobot_chatops/workers/nautobot.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index 3fec0247..2558a177 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1,6 +1,5 @@ """Worker functions for interacting with Nautobot.""" -import uuid import json @@ -15,7 +14,6 @@ from nautobot.dcim.models import Device, DeviceType, Location, LocationType, Manufacturer, Rack, Cable from nautobot.ipam.models import VLAN, Prefix, VLANGroup from nautobot.tenancy.models import Tenant -from nautobot.extras.context_managers import web_request_context from nautobot.extras.models import Job, JobResult, Role, Status from nautobot_chatops.choices import CommandStatusChoices @@ -1177,9 +1175,10 @@ def init_job(dispatcher, job_name: str, kwargs: str = ""): return (CommandStatusChoices.STATUS_FAILED, f'Job "{job_name}" failed to initiate. Result: {job_result.result}') # TODO: need base-domain, this yields: /extras/job-results// + job_url = job_result.get_absolute_url() blocks = [ dispatcher.markdown_block( - f"The requested job {job_class_path} was initiated! [`click here`]({job_result.get_absolute_url()}) to open the job." + f"The requested job {job_class_path} was initiated! [`click here`]({job_url}) to open the job." ), ] From 3fc453aeb04de23940b275bcc4b2ec0141ac49f5 Mon Sep 17 00:00:00 2001 From: meganerd Date: Tue, 26 Sep 2023 04:17:47 -0400 Subject: [PATCH 13/93] remove runnable references --- nautobot_chatops/workers/nautobot.py | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index 2558a177..8c0f7b6c 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1050,9 +1050,7 @@ def get_circuit_providers(dispatcher, *args): @subcommand_of("nautobot") -def filter_jobs( - dispatcher, job_filters: str = "" -): # We can use a Literal["enabled", "installed", "runnable"] here instead +def filter_jobs(dispatcher, job_filters: str = ""): # We can use a Literal["enabled", "installed"] here instead """Get a filtered list of jobs from Nautobot that the request user have view permissions for. Args: @@ -1061,12 +1059,10 @@ def filter_jobs( """ # Check for filters in user supplied input job_filters_list = [item.strip() for item in job_filters.split(",")] if isinstance(job_filters, str) else "" - filters = ["enabled", "installed"] # Runnable is not valid + filters = ["enabled", "installed"] if any([key in job_filters for key in filters]): filter_args = {key: True for key in filters if key in job_filters_list} - jobs = Job.objects.restrict(dispatcher.user, "view").filter( - **filter_args - ) # enabled=True, installed=True, runnable=True + jobs = Job.objects.restrict(dispatcher.user, "view").filter(**filter_args) # enabled=True, installed=True else: jobs = Job.objects.restrict(dispatcher.user, "view").all() From d7e4ccc6f92787e65b01643b97aa2e2825325f83 Mon Sep 17 00:00:00 2001 From: meganerd Date: Wed, 27 Sep 2023 00:46:14 -0400 Subject: [PATCH 14/93] reuse existing user instance (dispatch.user) --- nautobot_chatops/workers/nautobot.py | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index 8c0f7b6c..323775ef 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -3,7 +3,6 @@ import json -from django.contrib.auth import get_user_model from django.core.exceptions import ValidationError from django.db.models import Count from django.contrib.contenttypes.models import ContentType @@ -1137,14 +1136,6 @@ def init_job(dispatcher, job_name: str, kwargs: str = ""): if json_args.get("profile") and json_args["profile"] is True: profile = True - # Get instance of the user who will run the job - user = get_user_model() - try: - user_instance = user.objects.get(username=dispatcher.user) - except user.DoesNotExist: # Unsure if we need to check this case? - dispatcher.send_error(f"User {dispatcher.user} not found") - return (CommandStatusChoices.STATUS_FAILED, f'User "{dispatcher.user}" was not found') - # Get the job model instance using job name try: job_model = Job.objects.restrict(dispatcher.user, "view").get(name=job_name) @@ -1161,7 +1152,7 @@ def init_job(dispatcher, job_name: str, kwargs: str = ""): # TODO: Check if json_args keys are valid for this job model job_result = JobResult.execute_job( job_model=job_model, - user=user_instance, + user=dispatch.user, profile=profile, **json_args, ) From 1423b8c926333dbc6b4eff48cda655846cb3943b Mon Sep 17 00:00:00 2001 From: meganerd Date: Wed, 27 Sep 2023 00:49:11 -0400 Subject: [PATCH 15/93] typo correction for dispatcher.user --- nautobot_chatops/workers/nautobot.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index 323775ef..8fc5705c 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1152,7 +1152,7 @@ def init_job(dispatcher, job_name: str, kwargs: str = ""): # TODO: Check if json_args keys are valid for this job model job_result = JobResult.execute_job( job_model=job_model, - user=dispatch.user, + user=dispatcher.user, profile=profile, **json_args, ) From 50725bbc134a4cb43b9df426d2b7069d4d0a0891 Mon Sep 17 00:00:00 2001 From: Stephen Kiely Date: Fri, 29 Sep 2023 08:58:43 -0500 Subject: [PATCH 16/93] Replace list comp with generator --- nautobot_chatops/workers/nautobot.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index 8fc5705c..ccafad93 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1059,7 +1059,7 @@ def filter_jobs(dispatcher, job_filters: str = ""): # We can use a Literal["ena # Check for filters in user supplied input job_filters_list = [item.strip() for item in job_filters.split(",")] if isinstance(job_filters, str) else "" filters = ["enabled", "installed"] - if any([key in job_filters for key in filters]): + if any(key in job_filters for key in filters): filter_args = {key: True for key in filters if key in job_filters_list} jobs = Job.objects.restrict(dispatcher.user, "view").filter(**filter_args) # enabled=True, installed=True else: From ca6a43349dd59e0eb9434ee559e76bd166068c40 Mon Sep 17 00:00:00 2001 From: bakebot Date: Mon, 23 Oct 2023 10:17:26 +0000 Subject: [PATCH 17/93] Cookie initialy baked by NetworkToCode Cookie Drift Manager Tool Template: ``` { "template": "https://github.com/nautobot/cookiecutter-nautobot-app.git", "dir": "nautobot-app", "ref": "develop", "path": null } ``` Cookie: ``` { "remote": "https://github.com/nautobot/nautobot-plugin-chatops.git", "path": "/opt/ntc/drift-manager/outputs/nautobot-plugin-chatops", "repository_path": "/opt/ntc/drift-manager/outputs/nautobot-plugin-chatops", "dir": "", "branch_prefix": "drift-manager", "context": { "codeowner_github_usernames": "@nautobot/plugin-chatops", "full_name": "Network to Code, LLC", "email": "opensource@networktocode.com", "github_org": "nautobot", "plugin_name": "nautobot_chatops", "verbose_name": "Nautobot ChatOps App", "plugin_slug": "nautobot-chatops", "project_slug": "nautobot-plugin-chatops", "repo_url": "https://github.com/nautobot/nautobot-plugin-chatops/", "base_url": "chatops", "min_nautobot_version": "2.0.0", "max_nautobot_version": "2.9999", "camel_name": "NautobotChatOpsPlugin", "project_short_description": "Nautobot ChatOps App", "model_class_name": "None", "open_source_license": "Apache-2.0", "docs_base_url": "https://docs.nautobot.com", "docs_app_url": "https://docs.nautobot.com/projects/chatops/en/latest", "_template": "https://github.com/nautobot/cookiecutter-nautobot-app.git", "_output_dir": "/opt/ntc/drift-manager/outputs", "_repo_dir": "/opt/ntc/drift-manager/outputs/.cookiecutters/cookiecutter-nautobot-app/nautobot-app", "_checkout": "develop" }, "base_branch": "develop", "remote_name": "origin", "pull_request_strategy": "PullRequestStrategy.CREATE", "post_actions": [ "PostAction.BLACK" ], "baked_commit_ref": "", "draft": true } ``` CLI Arguments: ``` { "cookie_dir": "", "input": false, "json_filename": "setup-cookie-chatops.json", "output_dir": "./outputs", "push": true, "template": "https://github.com/nautobot/cookiecutter-nautobot-app.git", "template_dir": "nautobot-app", "template_ref": "develop", "pull_request": null, "post_action": [ "black" ], "disable_post_actions": false, "draft": true } ``` --- .bandit.yml | 7 +- .cookiecutter.json | 35 ++ .dockerignore | 30 +- .flake8 | 12 +- .github/CODEOWNERS | 4 +- .github/ISSUE_TEMPLATE/bug_report.md | 22 +- .github/ISSUE_TEMPLATE/feature_request.md | 4 +- .../pull_request_template.md | 35 ++ .github/workflows/ci.yml | 270 +++++++++----- .github/workflows/rebake.yml | 118 ++++++ .github/workflows/upstream_testing.yml | 4 +- .gitignore | 31 +- .readthedocs.yaml | 7 +- .yamllint.yml | 8 +- LICENSE | 10 +- README.md | 148 +++----- development/Dockerfile | 21 +- development/creds.example.env | 52 --- development/development.env | 60 --- development/docker-compose.base.yml | 4 +- development/docker-compose.dev.yml | 13 +- development/docker-compose.mysql.yml | 2 +- development/docker-compose.postgres.yml | 1 - development/nautobot_config.py | 174 +++------ docs/admin/compatibility_matrix.md | 26 +- docs/admin/install.md | 81 +++++ docs/admin/release_notes/version_1.0.md | 48 +++ docs/admin/uninstall.md | 22 +- docs/admin/upgrade.md | 9 +- docs/assets/extra.css | 82 ++++- docs/assets/overrides/partials/copyright.html | 6 +- docs/dev/arch_decision.md | 7 + docs/dev/code_reference/api.md | 2 +- docs/dev/code_reference/index.md | 3 + docs/dev/code_reference/package.md | 1 + docs/dev/contributing.md | 208 +---------- docs/dev/dev_environment.md | 83 ++--- docs/dev/extending.md | 6 + docs/images/icon-nautobot-chatops.png | Bin 0 -> 74601 bytes docs/index.md | 2 +- docs/requirements.txt | 9 +- docs/user/app_getting_started.md | 60 +-- docs/user/app_overview.md | 34 +- docs/user/app_use_cases.md | 12 + docs/user/external_interactions.md | 17 + docs/user/faq.md | 1 + invoke.example.yml | 6 +- invoke.mysql.yml | 6 +- mkdocs.yml | 80 +--- nautobot_chatops/__init__.py | 160 +------- nautobot_chatops/api/__init__.py | 1 + nautobot_chatops/tests/__init__.py | 2 +- nautobot_chatops/tests/test_api.py | 98 ++--- nautobot_chatops/tests/test_basic.py | 34 ++ pyproject.toml | 242 ++++-------- tasks.py | 343 ++++++++---------- 56 files changed, 1233 insertions(+), 1530 deletions(-) create mode 100644 .cookiecutter.json create mode 100644 .github/PULL_REQUEST_TEMPLATE/pull_request_template.md create mode 100644 .github/workflows/rebake.yml create mode 100644 docs/admin/install.md create mode 100644 docs/admin/release_notes/version_1.0.md create mode 100644 docs/dev/arch_decision.md create mode 100644 docs/dev/code_reference/package.md create mode 100644 docs/dev/extending.md create mode 100644 docs/images/icon-nautobot-chatops.png create mode 100644 docs/user/app_use_cases.md create mode 100644 docs/user/external_interactions.md create mode 100644 docs/user/faq.md create mode 100644 nautobot_chatops/tests/test_basic.py diff --git a/.bandit.yml b/.bandit.yml index 4824c564..56f7a83b 100644 --- a/.bandit.yml +++ b/.bandit.yml @@ -1,7 +1,6 @@ --- +skips: [] # No need to check for security issues in the test scripts! exclude_dirs: - - "./nautobot_chatops/tests/" - -skips: - - "B404" + - "./tests/" + - "./.venv/" diff --git a/.cookiecutter.json b/.cookiecutter.json new file mode 100644 index 00000000..c67312da --- /dev/null +++ b/.cookiecutter.json @@ -0,0 +1,35 @@ +{ + "cookiecutter": { + "codeowner_github_usernames": "@nautobot/plugin-chatops", + "full_name": "Network to Code, LLC", + "email": "opensource@networktocode.com", + "github_org": "nautobot", + "plugin_name": "nautobot_chatops", + "verbose_name": "Nautobot ChatOps App", + "plugin_slug": "nautobot-chatops", + "project_slug": "nautobot-plugin-chatops", + "repo_url": "https://github.com/nautobot/nautobot-plugin-chatops/", + "base_url": "chatops", + "min_nautobot_version": "2.0.0", + "max_nautobot_version": "2.9999", + "camel_name": "NautobotChatOpsPlugin", + "project_short_description": "Nautobot ChatOps App", + "model_class_name": "None", + "open_source_license": "Apache-2.0", + "docs_base_url": "https://docs.nautobot.com", + "docs_app_url": "https://docs.nautobot.com/projects/chatops/en/latest", + "_drift_manager": { + "template": "https://github.com/nautobot/cookiecutter-nautobot-app.git", + "template_dir": "nautobot-app", + "template_ref": "develop", + "cookie_dir": "", + "branch_prefix": "drift-manager", + "pull_request_strategy": "create", + "post_actions": [ + "black" + ], + "draft": true, + "baked_commit_ref": "f7199da166a77ef00af4347535a1e09f939a711a" + } + } +} diff --git a/.dockerignore b/.dockerignore index aacfd4e3..2270f496 100644 --- a/.dockerignore +++ b/.dockerignore @@ -1,11 +1,27 @@ +# Docker related +development/Dockerfile +development/docker-compose*.yml +development/*.env +*.env +environments/ + +# Python **/*.pyc **/*.pyo -**/*.log +**/__pycache__/ +**/.pytest_cache/ +**/.venv/ + + +# Other +docs/_build +FAQ.md .git/ -.github/ .gitignore -Dockerfile -docker-compose.yml -.env -docs/_build -__pycache__/ \ No newline at end of file +.github +tasks.py +LICENSE +**/*.log +**/.vscode/ +invoke*.yml +tasks.py diff --git a/.flake8 b/.flake8 index 8193a5d0..c9f5e84d 100644 --- a/.flake8 +++ b/.flake8 @@ -1,4 +1,10 @@ [flake8] -# E501: Line length is enforced by Black, so flake8 doesn't need to check it -# W503: Black disagrees with this rule, as does PEP 8; Black wins -ignore = E501, W503, F811, F401 \ No newline at end of file +ignore = + E501, # Line length is enforced by Black, so flake8 doesn't need to check it + W503 # Black disagrees with this rule, as does PEP 8; Black wins +exclude = + migrations, + __pycache__, + manage.py, + settings.py, + .venv diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 5f4290b0..6592e35a 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1,2 +1,2 @@ -# Default owners for all files in this repository -* @glennmatthews @jvanderaa @smk4664 @whitej6 +# Default owner(s) of all files in this repository +* @nautobot/plugin-chatops diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 2a57e1af..93878502 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -1,12 +1,19 @@ --- name: 🐛 Bug Report -about: Report a reproducible bug in the current release of nautobot-plugin-chatops +about: Report a reproducible bug in the current release of nautobot-chatops --- ### Environment -* Python version: -* Nautobot version: -* nautobot-plugin-chatops version: +* Python version: +* Nautobot version: +* nautobot-chatops version: + + +### Expected Behavior + + + +### Observed Behavior -### Expected Behavior - - - -### Observed Behavior \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md index bbeb5de2..2324a93a 100644 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -5,8 +5,8 @@ about: Propose a new feature or enhancement --- ### Environment -* Nautobot version: -* nautobot-plugin-chatops version: +* Nautobot version: +* nautobot-chatops version: + +# Closes: # + +## What's Changed + + + +## To Do + + +- [ ] Explanation of Change(s) +- [ ] Added change log fragment(s) (for more information see [the documentation](https://docs.nautobot.com/projects/core/en/stable/development/#creating-changelog-fragments)) +- [ ] Attached Screenshots, Payload Example +- [ ] Unit, Integration Tests +- [ ] Documentation Updates (when adding/changing features) +- [ ] Example Plugin Updates (when adding/changing features) +- [ ] Outline Remaining Work, Constraints from Design diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 59d01289..03e02e6d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -3,195 +3,269 @@ name: "CI" concurrency: # Cancel any existing runs of this workflow for this same PR group: "${{ github.workflow }}-${{ github.ref }}" cancel-in-progress: true -on: # yamllint disable - - "push" - - "pull_request" +on: # yamllint disable-line rule:truthy rule:comments + push: + branches: + - "main" + - "develop" + tags: + - "v*" + pull_request: ~ + +env: + PLUGIN_NAME: "nautobot-plugin-chatops" jobs: black: - runs-on: "ubuntu-20.04" + runs-on: "ubuntu-22.04" env: INVOKE_NAUTOBOT_CHATOPS_LOCAL: "True" steps: - name: "Check out repository code" - uses: "actions/checkout@v2" + uses: "actions/checkout@v4" - name: "Setup environment" - uses: "networktocode/gh-action-setup-poetry-environment@v2" - with: - python-version: "3.10" + uses: "networktocode/gh-action-setup-poetry-environment@v4" - name: "Linting: black" run: "poetry run invoke black" bandit: - runs-on: "ubuntu-20.04" + runs-on: "ubuntu-22.04" env: INVOKE_NAUTOBOT_CHATOPS_LOCAL: "True" steps: - name: "Check out repository code" - uses: "actions/checkout@v2" + uses: "actions/checkout@v4" - name: "Setup environment" - uses: "networktocode/gh-action-setup-poetry-environment@v2" - with: - python-version: "3.10" + uses: "networktocode/gh-action-setup-poetry-environment@v4" - name: "Linting: bandit" run: "poetry run invoke bandit" - needs: - - "black" pydocstyle: - runs-on: "ubuntu-20.04" + runs-on: "ubuntu-22.04" env: INVOKE_NAUTOBOT_CHATOPS_LOCAL: "True" steps: - name: "Check out repository code" - uses: "actions/checkout@v2" + uses: "actions/checkout@v4" - name: "Setup environment" - uses: "networktocode/gh-action-setup-poetry-environment@v2" - with: - python-version: "3.10" + uses: "networktocode/gh-action-setup-poetry-environment@v4" - name: "Linting: pydocstyle" run: "poetry run invoke pydocstyle" - needs: - - "black" flake8: - runs-on: "ubuntu-20.04" + runs-on: "ubuntu-22.04" env: INVOKE_NAUTOBOT_CHATOPS_LOCAL: "True" steps: - name: "Check out repository code" - uses: "actions/checkout@v2" + uses: "actions/checkout@v4" - name: "Setup environment" - uses: "networktocode/gh-action-setup-poetry-environment@v2" - with: - python-version: "3.10" + uses: "networktocode/gh-action-setup-poetry-environment@v4" - name: "Linting: flake8" run: "poetry run invoke flake8" - needs: - - "black" + poetry: + runs-on: "ubuntu-22.04" + env: + INVOKE_NAUTOBOT_CHATOPS_LOCAL: "True" + steps: + - name: "Check out repository code" + uses: "actions/checkout@v4" + - name: "Setup environment" + uses: "networktocode/gh-action-setup-poetry-environment@v4" + - name: "Checking: poetry lock file" + run: "poetry run invoke lock --check" yamllint: - runs-on: "ubuntu-20.04" + runs-on: "ubuntu-22.04" env: INVOKE_NAUTOBOT_CHATOPS_LOCAL: "True" steps: - name: "Check out repository code" - uses: "actions/checkout@v2" + uses: "actions/checkout@v4" - name: "Setup environment" - uses: "networktocode/gh-action-setup-poetry-environment@v2" - with: - python-version: "3.10" + uses: "networktocode/gh-action-setup-poetry-environment@v4" - name: "Linting: yamllint" run: "poetry run invoke yamllint" + pylint: needs: + - "bandit" + - "pydocstyle" + - "flake8" + - "poetry" + - "yamllint" - "black" - pylint: - runs-on: "ubuntu-20.04" + runs-on: "ubuntu-22.04" + strategy: + fail-fast: true + matrix: + python-version: ["3.11"] + nautobot-version: ["2.0.0"] + env: + INVOKE_NAUTOBOT_CHATOPS_PYTHON_VER: "${{ matrix.python-version }}" + INVOKE_NAUTOBOT_CHATOPS_NAUTOBOT_VER: "${{ matrix.nautobot-version }}" steps: - name: "Check out repository code" - uses: "actions/checkout@v2" + uses: "actions/checkout@v4" - name: "Setup environment" - uses: "networktocode/gh-action-setup-poetry-environment@v2" + uses: "networktocode/gh-action-setup-poetry-environment@v4" + - name: "Set up Docker Buildx" + id: "buildx" + uses: "docker/setup-buildx-action@v3" + - name: "Build" + uses: "docker/build-push-action@v5" with: - python-version: "3.10" + builder: "${{ steps.buildx.outputs.name }}" + context: "./" + push: false + load: true + tags: "${{ env.PLUGIN_NAME }}/nautobot:${{ matrix.nautobot-version }}-py${{ matrix.python-version }}" + file: "./development/Dockerfile" + cache-from: "type=gha,scope=${{ matrix.nautobot-version }}-py${{ matrix.python-version }}" + cache-to: "type=gha,scope=${{ matrix.nautobot-version }}-py${{ matrix.python-version }}" + build-args: | + NAUTOBOT_VER=${{ matrix.nautobot-version }} + PYTHON_VER=${{ matrix.python-version }} - name: "Copy credentials" run: "cp development/creds.example.env development/creds.env" - - name: "Linting: Pylint" + - name: "Linting: pylint" run: "poetry run invoke pylint" + check-migrations: needs: - "bandit" - "pydocstyle" - "flake8" + - "poetry" - "yamllint" - unittest: + - "black" + runs-on: "ubuntu-22.04" strategy: fail-fast: true matrix: - python-version: ["3.8"] - db-backend: ["postgresql", "mysql"] + python-version: ["3.11"] nautobot-version: ["2.0.0"] - # The include is a method to limit the amount of jobs ran. This essentially - # means that in addition to standard postgres and stable, also the lowest - # supported version and with mysql + env: + INVOKE_NAUTOBOT_CHATOPS_PYTHON_VER: "${{ matrix.python-version }}" + INVOKE_NAUTOBOT_CHATOPS_NAUTOBOT_VER: "${{ matrix.nautobot-version }}" + steps: + - name: "Check out repository code" + uses: "actions/checkout@v4" + - name: "Setup environment" + uses: "networktocode/gh-action-setup-poetry-environment@v4" + - name: "Set up Docker Buildx" + id: "buildx" + uses: "docker/setup-buildx-action@v3" + - name: "Build" + uses: "docker/build-push-action@v5" + with: + builder: "${{ steps.buildx.outputs.name }}" + context: "./" + push: false + load: true + tags: "${{ env.PLUGIN_NAME }}/nautobot:${{ matrix.nautobot-version }}-py${{ matrix.python-version }}" + file: "./development/Dockerfile" + cache-from: "type=gha,scope=${{ matrix.nautobot-version }}-py${{ matrix.python-version }}" + cache-to: "type=gha,scope=${{ matrix.nautobot-version }}-py${{ matrix.python-version }}" + build-args: | + NAUTOBOT_VER=${{ matrix.nautobot-version }} + PYTHON_VER=${{ matrix.python-version }} + - name: "Copy credentials" + run: "cp development/creds.example.env development/creds.env" + - name: "Checking: migrations" + run: "poetry run invoke check-migrations" + unittest: + needs: + - "pylint" + - "check-migrations" + strategy: + fail-fast: true + matrix: + python-version: ["3.8", "3.11"] + db-backend: ["postgresql"] + nautobot-version: ["stable"] include: - python-version: "3.11" db-backend: "postgresql" nautobot-version: "2.0.0" - - python-version: "3.11" - db-backend: "postgresql" - nautobot-version: "stable" - python-version: "3.11" db-backend: "mysql" nautobot-version: "stable" - runs-on: "ubuntu-20.04" + runs-on: "ubuntu-22.04" env: INVOKE_NAUTOBOT_CHATOPS_PYTHON_VER: "${{ matrix.python-version }}" INVOKE_NAUTOBOT_CHATOPS_NAUTOBOT_VER: "${{ matrix.nautobot-version }}" steps: - name: "Check out repository code" - uses: "actions/checkout@v2" + uses: "actions/checkout@v4" - name: "Setup environment" - uses: "networktocode/gh-action-setup-poetry-environment@v2" + uses: "networktocode/gh-action-setup-poetry-environment@v4" + - name: "Set up Docker Buildx" + id: "buildx" + uses: "docker/setup-buildx-action@v3" + - name: "Build" + uses: "docker/build-push-action@v5" with: - python-version: "${{ matrix.python-version }}" + builder: "${{ steps.buildx.outputs.name }}" + context: "./" + push: false + load: true + tags: "${{ env.PLUGIN_NAME }}/nautobot:${{ matrix.nautobot-version }}-py${{ matrix.python-version }}" + file: "./development/Dockerfile" + cache-from: "type=gha,scope=${{ matrix.nautobot-version }}-py${{ matrix.python-version }}" + cache-to: "type=gha,scope=${{ matrix.nautobot-version }}-py${{ matrix.python-version }}" + build-args: | + NAUTOBOT_VER=${{ matrix.nautobot-version }} + PYTHON_VER=${{ matrix.python-version }} - name: "Copy credentials" run: "cp development/creds.example.env development/creds.env" - - name: "Build Container" - run: "poetry run invoke build" + - name: "Use Mysql invoke settings when needed" + run: "cp invoke.mysql.yml invoke.yml" + if: "matrix.db-backend == 'mysql'" - name: "Run Tests" run: "poetry run invoke unittest" - needs: - - "pylint" publish_gh: + needs: + - "unittest" name: "Publish to GitHub" - runs-on: "ubuntu-20.04" + runs-on: "ubuntu-22.04" if: "startsWith(github.ref, 'refs/tags/v')" steps: - name: "Check out repository code" - uses: "actions/checkout@v2" + uses: "actions/checkout@v4" - name: "Set up Python" - uses: "actions/setup-python@v2" + uses: "actions/setup-python@v4" with: - python-version: "3.9" + python-version: "3.11" - name: "Install Python Packages" run: "pip install poetry" - name: "Set env" run: "echo RELEASE_VERSION=${GITHUB_REF:10} >> $GITHUB_ENV" - name: "Run Poetry Version" run: "poetry version $RELEASE_VERSION" - - name: "Install Dependencies (needed for mkdocs)" - run: "poetry install --no-root" - - name: "Build Documentation" - run: "poetry run mkdocs build --no-directory-urls --strict" - name: "Run Poetry Build" run: "poetry build" - name: "Upload binaries to release" uses: "svenstaro/upload-release-action@v2" with: - repo_token: "${{ secrets.GH_NAUTOBOT_BOT_TOKEN }}" + repo_token: "${{ secrets.NTC_GITHUB_TOKEN }}" # use GH_NAUTOBOT_BOT_TOKEN for Nautobot Org repos. file: "dist/*" tag: "${{ github.ref }}" overwrite: true file_glob: true + publish_pypi: needs: - "unittest" - publish_pypi: name: "Push Package to PyPI" - runs-on: "ubuntu-20.04" + runs-on: "ubuntu-22.04" if: "startsWith(github.ref, 'refs/tags/v')" steps: - name: "Check out repository code" - uses: "actions/checkout@v2" + uses: "actions/checkout@v4" - name: "Set up Python" - uses: "actions/setup-python@v2" + uses: "actions/setup-python@v4" with: - python-version: "3.9" + python-version: "3.11" - name: "Install Python Packages" run: "pip install poetry" - name: "Set env" run: "echo RELEASE_VERSION=${GITHUB_REF:10} >> $GITHUB_ENV" - name: "Run Poetry Version" run: "poetry version $RELEASE_VERSION" - - name: "Install Dependencies (needed for mkdocs)" - run: "poetry install --no-root" - - name: "Build Documentation" - run: "poetry run mkdocs build --no-directory-urls --strict" - name: "Run Poetry Build" run: "poetry build" - name: "Push to PyPI" @@ -199,20 +273,38 @@ jobs: with: user: "__token__" password: "${{ secrets.PYPI_API_TOKEN }}" + slack-notify: needs: - - "unittest" - - changelog: - if: github.base_ref == 'develop' || github.base_ref == 'next' - runs-on: "ubuntu-20.04" + - "publish_gh" + - "publish_pypi" + runs-on: "ubuntu-22.04" + env: + SLACK_WEBHOOK_URL: "${{ secrets.SLACK_WEBHOOK_URL }}" + SLACK_MESSAGE: >- + *NOTIFICATION: NEW-RELEASE-PUBLISHED*\n + Repository: <${{ github.server_url }}/${{ github.repository }}|${{ github.repository }}>\n + Release: <${{ github.server_url }}/${{ github.repository }}/releases/tag/${{ github.ref_name }}|${{ github.ref_name }}>\n + Published by: <${{ github.server_url }}/${{ github.actor }}|${{ github.actor }}> steps: - - name: "Check out repository code" - uses: "actions/checkout@v2" + - name: "Send a notification to Slack" + # ENVs cannot be used directly in job.if. This is a workaround to check + # if SLACK_WEBHOOK_URL is present. + if: "env.SLACK_WEBHOOK_URL != ''" + uses: "slackapi/slack-github-action@v1" with: - fetch-depth: "0" - - name: "Setup environment" - uses: "networktocode/gh-action-setup-poetry-environment@v2" - - name: "Check for changelog entry" - run: | - git fetch --no-tags origin +refs/heads/${{ github.base_ref }}:refs/remotes/origin/${{ github.base_ref }} - poetry run towncrier check --compare-with origin/${{ github.base_ref }} + payload: | + { + "text": "${{ env.SLACK_MESSAGE }}", + "blocks": [ + { + "type": "section", + "text": { + "type": "mrkdwn", + "text": "${{ env.SLACK_MESSAGE }}" + } + } + ] + } + env: + SLACK_WEBHOOK_URL: "${{ secrets.SLACK_WEBHOOK_URL }}" + SLACK_WEBHOOK_TYPE: "INCOMING_WEBHOOK" diff --git a/.github/workflows/rebake.yml b/.github/workflows/rebake.yml new file mode 100644 index 00000000..13d1e3a0 --- /dev/null +++ b/.github/workflows/rebake.yml @@ -0,0 +1,118 @@ +--- +name: "Rebake Cookie" +on: # yamllint disable-line rule:truthy + workflow_call: + inputs: + cookie: + description: "The cookie to rebake" + type: "string" + default: "" + draft: + description: "Whether to create the pull request as a draft" + type: "string" + default: "" + pull-request: + description: "The pull request strategy" + type: "string" + default: "" + template: + description: "The template repository URL" + type: "string" + default: "" + template-dir: + description: "The directory within the template repository to use as the template" + type: "string" + default: "" + template-ref: + description: "The branch or tag to use for the template" + type: "string" + default: "" + drift-manager-tag: + description: "The drift manager Docker image tag to use" + type: "string" + default: "latest" + workflow_dispatch: + inputs: + cookie: + description: "The cookie to rebake" + type: "string" + default: "" + draft: + description: "Whether to create the pull request as a draft" + type: "string" + default: "" + pull-request: + description: "The pull request strategy" + type: "string" + default: "" + template: + description: "The template repository URL" + type: "string" + default: "" + template-dir: + description: "The directory within the template repository to use as the template" + type: "string" + default: "" + template-ref: + description: "The branch or tag to use for the template" + type: "string" + default: "" + drift-manager-tag: + description: "The drift manager Docker image tag to use" + type: "string" + default: "latest" +jobs: + rebake: + runs-on: "ubuntu-22.04" + permissions: + actions: "write" + contents: "write" + packages: "read" + pull-requests: "write" + container: "ghcr.io/nautobot/cookiecutter-nautobot-app-drift-manager/prod:${{ github.event.inputs.drift-manager-tag }}" + env: + GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}" + steps: + - name: "Configure Rebake Arguments" + id: "config" + shell: "bash" + run: | + ARGS='--push' + + if [[ '${{ github.event.inputs.draft }}' == 'true' ]]; then + ARGS="$ARGS --draft" + elif [[ '${{ github.event.inputs.draft }}' == 'false' ]]; then + ARGS="$ARGS --no-draft" + elif [[ '${{ github.event.inputs.draft }}' == '' ]]; then + echo "Using repo default value for --draft" + else + echo "ERROR: Invalid value for draft: '${{ github.event.inputs.draft }}'" + exit 1 + fi + + if [[ '${{ github.event.inputs.pull-request }}' != '' ]]; then + ARGS="$ARGS --pull-request='${{ github.event.inputs.pull-request }}'" + fi + + if [[ '${{ github.event.inputs.template }}' != '' ]]; then + ARGS="$ARGS --template='${{ github.event.inputs.template }}'" + fi + + if [[ '${{ github.event.inputs.template-dir }}' != '' ]]; then + ARGS="$ARGS --template-dir='${{ github.event.inputs.template-dir }}'" + fi + + if [[ '${{ github.event.inputs.template-ref }}' != '' ]]; then + ARGS="$ARGS --template-ref='${{ github.event.inputs.template-ref }}'" + fi + + if [[ '${{ github.event.inputs.cookie }}' == '' ]]; then + ARGS="$ARGS '${{ github.repositoryUrl }}'" + else + ARGS="$ARGS '${{ github.event.inputs.cookie }}'" + fi + + echo "args=$ARGS" >> $GITHUB_OUTPUT + - name: "Rebake" + run: | + python -m ntc_cookie_drift_manager rebake ${{ steps.config.outputs.args }} diff --git a/.github/workflows/upstream_testing.yml b/.github/workflows/upstream_testing.yml index f6177d89..b23adc45 100644 --- a/.github/workflows/upstream_testing.yml +++ b/.github/workflows/upstream_testing.yml @@ -1,5 +1,5 @@ --- -name: "Nautobot Upstream Testing" +name: "Nautobot Upstream Monitor" on: # yamllint disable-line rule:truthy rule:comments schedule: @@ -10,4 +10,4 @@ jobs: uses: "nautobot/nautobot/.github/workflows/plugin_upstream_testing_base.yml@develop" with: # Below could potentially be collapsed into a single argument if a concrete relationship between both is enforced invoke_context_name: "NAUTOBOT_CHATOPS" - plugin_name: "nautobot-chatops-plugin" + plugin_name: "nautobot-plugin-chatops" diff --git a/.gitignore b/.gitignore index d1cbef39..ccca6f0a 100644 --- a/.gitignore +++ b/.gitignore @@ -171,7 +171,6 @@ ehthumbs_vista.db # Dump file *.stackdump -dumps/ # Folder config file [Dd]esktop.ini @@ -193,8 +192,28 @@ $RECYCLE.BIN/ # Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider # Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839 -# Jetbrains IDE configs -.idea/ +# User-specific stuff +.idea/**/workspace.xml +.idea/**/tasks.xml +.idea/**/usage.statistics.xml +.idea/**/dictionaries +.idea/**/shelf + +# Generated files +.idea/**/contentModel.xml + +# Sensitive or high-churn files +.idea/**/dataSources/ +.idea/**/dataSources.ids +.idea/**/dataSources.local.xml +.idea/**/sqlDataSources.xml +.idea/**/dynamic.xml +.idea/**/uiDesigner.xml +.idea/**/dbnavigator.xml + +# Gradle +.idea/**/gradle.xml +.idea/**/libraries # Gradle and Maven with auto-import # When using Gradle or Maven with auto-import, you should exclude module files, @@ -278,11 +297,13 @@ fabric.properties # Rando creds.env +development/*.txt # Invoke overrides invoke.yml -# Static docs -/nautobot_chatops/static/nautobot_chatops/docs/ +# Docs +public /compose.yaml /dump.sql +/nautobot_chatops/static/nautobot_chatops/docs diff --git a/.readthedocs.yaml b/.readthedocs.yaml index 882d19e9..9a0a64c7 100644 --- a/.readthedocs.yaml +++ b/.readthedocs.yaml @@ -8,14 +8,13 @@ version: 2 # Set the version of Python in the build environment. build: - os: "ubuntu-20.04" + os: "ubuntu-22.04" tools: - python: "3.9" + python: "3.10" -# MKDocs configuration file mkdocs: configuration: "mkdocs.yml" - # fail_on_warning: true + fail_on_warning: true # Use our docs/requirements.txt during installation. python: diff --git a/.yamllint.yml b/.yamllint.yml index 1cc1bcec..8cc3e9a9 100644 --- a/.yamllint.yml +++ b/.yamllint.yml @@ -1,13 +1,13 @@ --- extends: "default" -ignore: | - setup_files/ - compose.yaml rules: comments: "enable" - empty-values: "enable" + empty-values: "disable" indentation: indent-sequences: "consistent" line-length: "disable" quoted-strings: quote-type: "double" +ignore: | + .venv/ + compose.yaml diff --git a/LICENSE b/LICENSE index 2a07d287..d46cc975 100644 --- a/LICENSE +++ b/LICENSE @@ -1,15 +1,15 @@ -Copyright 2020 Network to Code -Network to Code, LLC +Apache Software License 2.0 + +Copyright (c) 2023, Network to Code, LLC Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. - You may obtain a copy of the License at - http://www.apache.org/licenses/LICENSE-2.0 +http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and -limitations under the License. \ No newline at end of file +limitations under the License. diff --git a/README.md b/README.md index 36c0a150..d25078f1 100644 --- a/README.md +++ b/README.md @@ -1,128 +1,66 @@ -# Nautobot ChatOps +# Nautobot ChatOps App + +

- +
- +
- A multi-platform ChatOps bot App for Nautobot. + An App for Nautobot.

-- Support for multiple chat platforms: - - Mattermost - - Microsoft Teams - - Slack - - Cisco Webex -- Support for multiple integrations: - - Cisco ACI - - AWX / Ansible Tower - - Arista CloudVision - - Grafana - - IPFabric - - Cisco Meraki - - Palo Alto Panorama -- Write a command once and run it on every supported platform, including rich content formatting. -- Extensible - other Nautobot plugins can provide additional commands which will be dynamically discovered. -- Automatic generation of basic help menus (accessed via `help`, `/command help`, or `/command sub-command help`). -- Metrics of command usage via the `nautobot_capacity_metrics` plugin. +## Overview -## Documentation +> 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. -Full web-based HTML documentation for this app can be found over on the [Nautobot Docs](https://docs.nautobot.com/projects/chatops/en/latest/) website: +### Screenshots -- [User Guide](https://docs.nautobot.com/projects/chatops/en/latest/user/app_overview/) - Overview, Using the App, Getting Started -- [Administrator Guide](https://docs.nautobot.com/projects/chatops/en/latest/admin/install/) - How to Install, Configure, Upgrade, or Uninstall the App. -- [Developer Guide](https://docs.nautobot.com/projects/chatops/en/latest/dev/contributing/) - Extending the App, Code Reference, Contribution Guide. -- [Release Notes / Changelog](https://docs.nautobot.com/projects/chatops/en/latest/admin/release_notes/) -- [Frequently Asked Questions](https://docs.nautobot.com/projects/chatops/en/latest/user/app_faq/) -- [Glossary](https://docs.nautobot.com/projects/chatops/en/latest/glossary/) +> 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-plugin-chatops/develop/docs/images/plugin-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. -## Try it Out +More screenshots can be found in the [Using the App](https://docs.nautobot.com/projects/chatops/en/latest/user/app_use_cases/) page in the documentation. Here's a quick overview of some of the plugin's added functionality: -Interested to see Nautobot ChatOps in action? It's currently setup on the [Demo Instance](https://demo.nautobot.com/) and integrated into [NTC Slack](https://slack.networktocode.com). You can sign up for that Slack workspace and join the `#nautobot-chat` channel to understand what this bot can do and try it for yourself. You can try these exact chat commands and many more: +![](https://raw.githubusercontent.com/nautobot/nautobot-plugin-chatops/develop/docs/images/placeholder.png) -### Command: `/nautobot` +## Try it out! -![image](https://user-images.githubusercontent.com/6332586/118281576-5db4e980-b49b-11eb-8574-1332ed4b9757.png) +> 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/)! + +> 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/). + +## Documentation + +Full documentation for this App can be found over on the [Nautobot Docs](https://docs.nautobot.com) website: + +- [User Guide](https://docs.nautobot.com/projects/chatops/en/latest/user/app_overview/) - Overview, Using the App, Getting Started. +- [Administrator Guide](https://docs.nautobot.com/projects/chatops/en/latest/admin/install/) - How to Install, Configure, Upgrade, or Uninstall the App. +- [Developer Guide](https://docs.nautobot.com/projects/chatops/en/latest/dev/contributing/) - Extending the App, Code Reference, Contribution Guide. +- [Release Notes / Changelog](https://docs.nautobot.com/projects/chatops/en/latest/admin/release_notes/). +- [Frequently Asked Questions](https://docs.nautobot.com/projects/chatops/en/latest/user/faq/). -### Command: `/nautobot get-devices` +### Contributing to the Documentation -![image](https://user-images.githubusercontent.com/6332586/118281772-95239600-b49b-11eb-9c79-e2040dc4a982.png) +You can find all the Markdown source for the App documentation under the [`docs`](https://github.com/nautobot/nautobot-plugin-chatops//tree/develop/docs) folder in this repository. For simple edits, a Markdown capable editor is sufficient: clone the repository and edit away. -### Command: `/nautobot get-interface-connections` +If you need to view the fully-generated documentation site, you can build it with [MkDocs](https://www.mkdocs.org/). A container hosting the documentation can be started using the `invoke` commands (details in the [Development Environment Guide](https://docs.nautobot.com/projects/chatops/en/latest/dev/dev_environment/#docker-development-environment)) on [http://localhost:8001](http://localhost:8001). Using this container, as your changes to the documentation are saved, they will be automatically rebuilt and any pages currently being viewed will be reloaded in your browser. -![image](https://user-images.githubusercontent.com/6332586/118281976-ca2fe880-b49b-11eb-87ad-2a41eaa168ed.png) +Any PRs with fixes or improvements are very welcome! ## Questions -For any questions or comments, please check the [FAQ](https://docs.nautobot.com/projects/chatops/en/latest/user/app_faq/) first and feel free to swing by the [Network to Code slack channel](https://networktocode.slack.com/) (channel #nautobot). -Sign up [here](https://slack.networktocode.com/) - -## Acknowledgements - -This project includes code originally written in separate plugins, which have been merged into this project: - -- [nautobot-plugin-chatops-aci](https://github.com/nautobot/nautobot-plugin-chatops-aci): - Thanks - [@mamullen13316](https://github.com/mamullen13316), - [@smk4664](https://github.com/smk4664), - [@ubajze](https://github.com/ubajze), - [@whitej6](https://github.com/whitej6), -- [nautobot-plugin-chatops-ansible](https://github.com/nautobot/nautobot-plugin-chatops-ansible): - Thanks - [@chipn](https://github.com/chipn), - [@dgjustice](https://github.com/dgjustice), - [@jeffkala](https://github.com/jeffkala), - [@jvanderaa](https://github.com/jvanderaa), - [@matt852](https://github.com/matt852), - [@smk4664](https://github.com/smk4664), - [@ubajze](https://github.com/ubajze), - [@whitej6](https://github.com/whitej6), -- [nautobot-plugin-chatops-arista-cloudvision](https://github.com/nautobot/nautobot-plugin-chatops-arista-cloudvision): - Thanks - [@qduk](https://github.com/qduk), - [@ubajze](https://github.com/ubajze), - [@whitej6](https://github.com/whitej6), -- [nautobot-plugin-chatops-grafana](https://github.com/nautobot/nautobot-plugin-chatops-grafana): - Thanks - [@jedelman8](https://github.com/jedelman8), - [@josh-silvas](https://github.com/josh-silvas), - [@nniehoff](https://github.com/nniehoff), - [@tim-fiola](https://github.com/tim-fiola), - [@ubajze](https://github.com/ubajze), - [@whitej6](https://github.com/whitej6), -- [nautobot-plugin-chatops-ipfabric](https://github.com/nautobot/nautobot-plugin-chatops-ipfabric): - Thanks - [@alhogan](https://github.com/alhogan), - [@chadell](https://github.com/chadell), - [@chipn](https://github.com/chipn), - [@justinjeffery-ipf](https://github.com/justinjeffery-ipf), - [@nniehoff](https://github.com/nniehoff), - [@pke11y](https://github.com/pke11y), - [@scetron](https://github.com/scetron), - [@smk4664](https://github.com/smk4664), - [@ubajze](https://github.com/ubajze), - [@whitej6](https://github.com/whitej6), -- [nautobot-plugin-chatops-meraki](https://github.com/nautobot/nautobot-plugin-chatops-meraki): - Thanks - [@jedelman8](https://github.com/jedelman8), - [@jeffkala](https://github.com/jeffkala), - [@qduk](https://github.com/qduk), - [@tim-fiola](https://github.com/tim-fiola), - [@ubajze](https://github.com/ubajze), - [@whitej6](https://github.com/whitej6), -- [nautobot-plugin-chatops-panorama](https://github.com/nautobot/nautobot-plugin-chatops-panorama): - Thanks - [@FragmentedPacket](https://github.com/FragmentedPacket), - [@PhillSimonds](https://github.com/PhillSimonds), - [@armartirosyan](https://github.com/armartirosyan), - [@itdependsnetworks](https://github.com/itdependsnetworks), - [@jamesholland-uk](https://github.com/jamesholland-uk), - [@jdrew82](https://github.com/jdrew82), - [@matt852](https://github.com/matt852), - [@qduk](https://github.com/qduk), - [@ubajze](https://github.com/ubajze), - [@whitej6](https://github.com/whitej6), +For any questions or comments, please check the [FAQ](https://docs.nautobot.com/projects/chatops/en/latest/user/faq/) first. Feel free to also swing by the [Network to Code Slack](https://networktocode.slack.com/) (channel `#nautobot`), sign up [here](http://slack.networktocode.com/) if you don't have an account. diff --git a/development/Dockerfile b/development/Dockerfile index a5931cf7..de25f815 100644 --- a/development/Dockerfile +++ b/development/Dockerfile @@ -6,11 +6,11 @@ # ------------------------------------------------------------------------------------- # !!! USE CAUTION WHEN MODIFYING LINES BELOW -# Accepts a desired Nautobot version as build argument, default to 1.5.4 -ARG NAUTOBOT_VER="1.5.4" +# Accepts a desired Nautobot version as build argument, default to 2.0.0 +ARG NAUTOBOT_VER="2.0.0" -# Accepts a desired Python version as build argument, default to 3.8 -ARG PYTHON_VER="3.8" +# Accepts a desired Python version as build argument, default to 3.11 +ARG PYTHON_VER="3.11" # Retrieve published development image of Nautobot base which should include most CI dependencies FROM ghcr.io/nautobot/nautobot-dev:${NAUTOBOT_VER}-py${PYTHON_VER} @@ -19,20 +19,21 @@ FROM ghcr.io/nautobot/nautobot-dev:${NAUTOBOT_VER}-py${PYTHON_VER} ARG NAUTOBOT_ROOT=/opt/nautobot ENV prometheus_multiproc_dir=/prom_cache -ENV NAUTOBOT_ROOT ${NAUTOBOT_ROOT} +ENV NAUTOBOT_ROOT=${NAUTOBOT_ROOT} +ENV INVOKE_NAUTOBOT_CHATOPS_LOCAL=true # Install Poetry manually via its installer script; # We might be using an older version of Nautobot that includes an older version of Poetry # and CI and local development may have a newer version of Poetry # Since this is only used for development and we don't ship this container, pinning Poetry back is not expressly necessary # We also don't need virtual environments in container -RUN curl -sSL https://install.python-poetry.org | python3 - && \ +RUN which poetry || curl -sSL https://install.python-poetry.org | python3 - && \ poetry config virtualenvs.create false # !!! USE CAUTION WHEN MODIFYING LINES ABOVE # ------------------------------------------------------------------------------------- # App-specifc system build/test dependencies. -# +# # Example: LDAP requires `libldap2-dev` to be apt-installed before the Python package. # ------------------------------------------------------------------------------------- # --> Start safe to modify section @@ -68,11 +69,13 @@ RUN sort poetry_freeze_base.txt poetry_freeze_all.txt | uniq -u > poetry_freeze_ # Install all local project as editable, constrained on Nautobot version, to get any additional # direct dependencies of the app -RUN pip install -c constraints.txt -e .[all] +RUN --mount=type=cache,target="/root/.cache/pip",sharing=locked \ + pip install -c constraints.txt -e .[all] # Install any dev dependencies frozen from Poetry # Can be improved in Poetry 1.2 which allows `poetry install --only dev` -RUN pip install -c constraints.txt -r poetry_freeze_dev.txt +RUN --mount=type=cache,target="/root/.cache/pip",sharing=locked \ + pip install -c constraints.txt -r poetry_freeze_dev.txt COPY development/nautobot_config.py ${NAUTOBOT_ROOT}/nautobot_config.py # !!! USE CAUTION WHEN MODIFYING LINES ABOVE diff --git a/development/creds.example.env b/development/creds.example.env index 34f27de1..26e24fad 100644 --- a/development/creds.example.env +++ b/development/creds.example.env @@ -25,55 +25,3 @@ MYSQL_PASSWORD=${NAUTOBOT_DB_PASSWORD} # NAUTOBOT_DB_HOST=localhost # NAUTOBOT_REDIS_HOST=localhost # NAUTOBOT_CONFIG=development/nautobot_config.py - -# = Chat Platforms =================== - -# - Mattermost ----------------------- -MATTERMOST_API_TOKEN="5qsffxoapt883qfdygbdgf17jy" - -# - Microsoft Teams ------------------ -# MICROSOFT_APP_ID="changeme" -# MICROSOFT_APP_PASSWORD="changeme" - -# - Slack ---------------------------- -# SLACK_API_TOKEN="xoxb-changeme" -# SLACK_APP_TOKEN="changeme" -# SLACK_SIGNING_SECRET="changeme" - -# - Cisco Webex ---------------------- -# WEBEX_ACCESS_TOKEN="changeme" -# WEBEX_SIGNING_SECRET="changeme" - -# = ChatOps Integrations ============= - -# - Cisco ACI ------------------------ -# First APIC -# APIC_USERNAME_NTCAPIC=admin -# APIC_PASSWORD_NTCAPIC="changeme" -# APIC_URI_NTCAPIC=https://aci.demo.networktocode.com -# APIC_VERIFY_NTCAPIC=false -# Second APIC -# APIC_USERNAME_LAB=admin -# APIC_PASSWORD_LAB="changeme" -# APIC_URI_LAB=https://10.100.1.10 -# APIC_VERIFY_LAB=false -# Repeat for as many as you need... - -# - AWX / Ansible Tower -------------- -NAUTOBOT_TOWER_PASSWORD="admin" - -# - Arista CloudVision --------------- -# ARISTACV_CVAAS_TOKEN="changeme" -# ARISTACV_CVP_PASSWORD="changeme" - -# - Grafana -------------------------- -# GRAFANA_API_KEY="changeme" - -# - IPFabric --------------------- -# IPFABRIC_API_TOKEN="changeme" - -# - Cisco Meraki --------------------- -# MERAKI_API_KEY="changeme" - -# - Palo Alto Panorama --------------- -# PANORAMA_PASSWORD="changeme" diff --git a/development/development.env b/development/development.env index b395947b..54f0b870 100644 --- a/development/development.env +++ b/development/development.env @@ -7,8 +7,6 @@ NAUTOBOT_BANNER_TOP="Local" NAUTOBOT_CHANGELOG_RETENTION=0 NAUTOBOT_DEBUG=True -NAUTOBOT_DJANGO_EXTENSIONS_ENABLED=True -NAUTOBOT_DJANGO_TOOLBAR_ENABLED=True NAUTOBOT_LOG_LEVEL=DEBUG NAUTOBOT_METRICS_ENABLED=True NAUTOBOT_NAPALM_TIMEOUT=5 @@ -38,61 +36,3 @@ POSTGRES_DB=${NAUTOBOT_DB_NAME} MYSQL_USER=${NAUTOBOT_DB_USER} MYSQL_DATABASE=${NAUTOBOT_DB_NAME} MYSQL_ROOT_HOST=% - -# = ChatOps Common Settings ========== -NAUTOBOT_CHATOPS_RESTRICT_HELP="False" -NAUTOBOT_CHATOPS_FALLBACK_CHATOPS_USER="chatbot" - -# = Chat Platforms =================== - -# - Mattermost ----------------------- -NAUTOBOT_CHATOPS_ENABLE_MATTERMOST="True" -MATTERMOST_URL="http://mattermost:8065" - -# - Microsoft Teams ------------------ -NAUTOBOT_CHATOPS_ENABLE_MS_TEAMS="False" - -# - Slack ---------------------------- -NAUTOBOT_CHATOPS_ENABLE_SLACK="False" -# SLACK_SLASH_COMMAND_PREFIX="/" - -# - Cisco Webex ---------------------- -NAUTOBOT_CHATOPS_ENABLE_WEBEX="False" -# WEBEX_MSG_CHAR_LIMIT=7439 - -# = ChatOps Integrations ============= - -# - Cisco ACI ------------------------ -NAUTOBOT_CHATOPS_ENABLE_ACI="False" - -# - AWX / Ansible Tower -------------- -NAUTOBOT_CHATOPS_ENABLE_ANSIBLE="False" -NAUTOBOT_TOWER_URI="https://awx:8043/" -NAUTOBOT_TOWER_USERNAME="awx" -NAUTOBOT_TOWER_VERIFY_SSL="False" - -# - Arista CloudVision --------------- -NAUTOBOT_CHATOPS_ENABLE_ARISTACV="False" -# ARISTACV_CVAAS_URL="https://cloudvision.arista.com" -# ARISTACV_CVP_HOST="cloudvision.arista" -ARISTACV_CVP_INSECURE="False" -# ARISTACV_CVP_USERNAME="arista" -ARISTACV_ON_PREM="False" - -# - Grafana -------------------------- -NAUTOBOT_CHATOPS_ENABLE_GRAFANA="False" -# GRAFANA_URL="http://grafana:3000" - -# - IPFabric --------------------- -NAUTOBOT_CHATOPS_ENABLE_IPFABRIC="False" -# IPFABRIC_HOST="https://ipfabric.example.com" -# IPFABRIC_TIMEOUT=15 -IPFABRIC_VERIFY="True" - -# - Cisco Meraki --------------------- -NAUTOBOT_CHATOPS_ENABLE_MERAKI="False" - -# - Palo Alto Panorama --------------- -NAUTOBOT_CHATOPS_ENABLE_PANORAMA="False" -PANORAMA_HOST="https://panorama.example.com" -PANORAMA_USER="admin" diff --git a/development/docker-compose.base.yml b/development/docker-compose.base.yml index 680e3786..36ec4b5e 100644 --- a/development/docker-compose.base.yml +++ b/development/docker-compose.base.yml @@ -7,7 +7,7 @@ x-nautobot-build: &nautobot-build context: "../" dockerfile: "development/Dockerfile" x-nautobot-base: &nautobot-base - image: "nautobot-chatops-plugin/nautobot:${NAUTOBOT_VER}-py${PYTHON_VER}" + image: "nautobot-chatops/nautobot:${NAUTOBOT_VER}-py${PYTHON_VER}" env_file: - "development.env" - "creds.env" @@ -28,7 +28,7 @@ services: entrypoint: - "sh" - "-c" # this is to evaluate the $NAUTOBOT_LOG_LEVEL from the env - - "watchmedo auto-restart --directory './' --pattern '*.py' --recursive -- nautobot-server celery worker -l $$NAUTOBOT_LOG_LEVEL --events" ## $$ because of docker-compose + - "nautobot-server celery worker -l $$NAUTOBOT_LOG_LEVEL --events" ## $$ because of docker-compose depends_on: - "nautobot" healthcheck: diff --git a/development/docker-compose.dev.yml b/development/docker-compose.dev.yml index 1c74cb19..be064971 100644 --- a/development/docker-compose.dev.yml +++ b/development/docker-compose.dev.yml @@ -12,21 +12,28 @@ services: volumes: - "./nautobot_config.py:/opt/nautobot/nautobot_config.py" - "../:/source" + healthcheck: + test: ["CMD", "true"] # Due to layering, disable: true won't work. Instead, change the test docs: entrypoint: "mkdocs serve -v -a 0.0.0.0:8080" ports: - "8001:8080" volumes: - - "../docs:/source/docs:ro" - - "../mkdocs.yml:/source/mkdocs.yml:ro" - image: "nautobot-chatops-plugin/nautobot:${NAUTOBOT_VER}-py${PYTHON_VER}" + - "../:/source" + image: "nautobot-chatops/nautobot:${NAUTOBOT_VER}-py${PYTHON_VER}" healthcheck: disable: true tty: true worker: + entrypoint: + - "sh" + - "-c" # this is to evaluate the $NAUTOBOT_LOG_LEVEL from the env + - "watchmedo auto-restart --directory './' --pattern '*.py' --recursive -- nautobot-server celery worker -l $$NAUTOBOT_LOG_LEVEL --events" ## $$ because of docker-compose volumes: - "./nautobot_config.py:/opt/nautobot/nautobot_config.py" - "../:/source" + healthcheck: + test: ["CMD", "true"] # Due to layering, disable: true won't work. Instead, change the test # To expose postgres or redis to the host uncomment the following # postgres: # ports: diff --git a/development/docker-compose.mysql.yml b/development/docker-compose.mysql.yml index 32f1f945..062ada94 100644 --- a/development/docker-compose.mysql.yml +++ b/development/docker-compose.mysql.yml @@ -20,7 +20,7 @@ services: image: "mysql:8" command: - "--default-authentication-plugin=mysql_native_password" - - "--max_connections=200" + - "--max_connections=1000" env_file: - "development.env" - "creds.env" diff --git a/development/docker-compose.postgres.yml b/development/docker-compose.postgres.yml index 8582412b..12d1de31 100644 --- a/development/docker-compose.postgres.yml +++ b/development/docker-compose.postgres.yml @@ -14,7 +14,6 @@ services: - "development.env" - "creds.env" volumes: - # - "./nautobot.sql:/tmp/nautobot.sql" - "postgres_data:/var/lib/postgresql/data" healthcheck: test: "pg_isready --username=$$POSTGRES_USER --dbname=$$POSTGRES_DB" diff --git a/development/nautobot_config.py b/development/nautobot_config.py index c913a18f..ba1b52ee 100644 --- a/development/nautobot_config.py +++ b/development/nautobot_config.py @@ -2,9 +2,24 @@ import os import sys -from nautobot.core.settings import * # noqa: F401,F403 pylint: disable=wildcard-import,unused-wildcard-import +from nautobot.core.settings import * # noqa: F403 # pylint: disable=wildcard-import,unused-wildcard-import from nautobot.core.settings_funcs import is_truthy, parse_redis_connection +# +# Debug +# + +DEBUG = is_truthy(os.getenv("NAUTOBOT_DEBUG", False)) +_TESTING = len(sys.argv) > 1 and sys.argv[1] == "test" + +if DEBUG and not _TESTING: + DEBUG_TOOLBAR_CONFIG = {"SHOW_TOOLBAR_CALLBACK": lambda _request: True} + + if "debug_toolbar" not in INSTALLED_APPS: # noqa: F405 + INSTALLED_APPS.append("debug_toolbar") # noqa: F405 + if "debug_toolbar.middleware.DebugToolbarMiddleware" not in MIDDLEWARE: # noqa: F405 + MIDDLEWARE.insert(0, "debug_toolbar.middleware.DebugToolbarMiddleware") # noqa: F405 + # # Misc. settings # @@ -12,6 +27,9 @@ ALLOWED_HOSTS = os.getenv("NAUTOBOT_ALLOWED_HOSTS", "").split(" ") SECRET_KEY = os.getenv("NAUTOBOT_SECRET_KEY", "") +# +# Database +# nautobot_db_engine = os.getenv("NAUTOBOT_DB_ENGINE", "django.db.backends.postgresql") default_db_settings = { @@ -41,18 +59,28 @@ DATABASES["default"]["OPTIONS"] = {"charset": "utf8mb4"} # -# Debug +# Redis # -DEBUG = True +# The django-redis cache is used to establish concurrent locks using Redis. +CACHES = { + "default": { + "BACKEND": "django_redis.cache.RedisCache", + "LOCATION": parse_redis_connection(redis_database=0), + "TIMEOUT": 300, + "OPTIONS": { + "CLIENT_CLASS": "django_redis.client.DefaultClient", + }, + } +} -# Django Debug Toolbar -DEBUG_TOOLBAR_CONFIG = {"SHOW_TOOLBAR_CALLBACK": lambda _request: DEBUG and not TESTING} +# Redis Cacheops +CACHEOPS_REDIS = parse_redis_connection(redis_database=1) -if DEBUG and "debug_toolbar" not in INSTALLED_APPS: # noqa: F405 - INSTALLED_APPS.append("debug_toolbar") # noqa: F405 -if DEBUG and "debug_toolbar.middleware.DebugToolbarMiddleware" not in MIDDLEWARE: # noqa: F405 - MIDDLEWARE.insert(0, "debug_toolbar.middleware.DebugToolbarMiddleware") # noqa: F405 +# +# Celery settings are not defined here because they can be overloaded with +# environment variables. By default they use `CACHES["default"]["LOCATION"]`. +# # # Logging @@ -60,10 +88,8 @@ LOG_LEVEL = "DEBUG" if DEBUG else "INFO" -TESTING = len(sys.argv) > 1 and sys.argv[1] == "test" - # Verbose logging during normal development operation, but quiet logging during unit test execution -if not TESTING: +if not _TESTING: LOGGING = { "version": 1, "disable_existing_loggers": False, @@ -99,117 +125,17 @@ } # -# Redis -# - -# The django-redis cache is used to establish concurrent locks using Redis. The -# django-rq settings will use the same instance/database by default. -# -# This "default" server is now used by RQ_QUEUES. -# >> See: nautobot.core.settings.RQ_QUEUES -CACHES = { - "default": { - "BACKEND": "django_redis.cache.RedisCache", - "LOCATION": parse_redis_connection(redis_database=0), - "TIMEOUT": 300, - "OPTIONS": { - "CLIENT_CLASS": "django_redis.client.DefaultClient", - }, - } -} - -# RQ_QUEUES is not set here because it just uses the default that gets imported -# up top via `from nautobot.core.settings import *`. - -# Redis Cacheops -CACHEOPS_REDIS = parse_redis_connection(redis_database=1) - -# -# Celery settings are not defined here because they can be overloaded with -# environment variables. By default they use `CACHES["default"]["LOCATION"]`. +# Apps # -# Enable installed plugins. Add the name of each plugin to the list. -PLUGINS = [ - "nautobot_capacity_metrics", - "nautobot_chatops", -] - -# Plugins configuration settings. These settings are used by various plugins that the user may have installed. -# Each key in the dictionary is the name of an installed plugin and its value is a dictionary of settings. -PLUGINS_CONFIG = { - "nautobot_chatops": { - # = Common Settings ================== - "restrict_help": is_truthy(os.getenv("NAUTOBOT_CHATOPS_RESTRICT_HELP")), - "fallback_chatops_user": os.environ.get("NAUTOBOT_CHATOPS_FALLBACK_CHATOPS_USER"), - # TODO: Add following settings - # | `delete_input_on_submission` | Removes the input prompt from the chat history after user input | No | `False` | - # | `send_all_messages_private` | Ensures only the person interacting with the bot sees the responses | No | `False` | - # | `session_cache_timeout` | Controls session cache | No | `86400` | - # = Chat Platforms =================== - # - Mattermost ----------------------- - "enable_mattermost": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_MATTERMOST")), - "mattermost_api_token": os.environ.get("MATTERMOST_API_TOKEN"), - "mattermost_url": os.environ.get("MATTERMOST_URL"), - # - Microsoft Teams ------------------ - "enable_ms_teams": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_MS_TEAMS")), - "microsoft_app_id": os.environ.get("MICROSOFT_APP_ID"), - "microsoft_app_password": os.environ.get("MICROSOFT_APP_PASSWORD"), - # - Slack ---------------------------- - "enable_slack": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_SLACK")), - "slack_api_token": os.environ.get("SLACK_API_TOKEN"), - "slack_app_token": os.environ.get("SLACK_APP_TOKEN"), - "slack_signing_secret": os.environ.get("SLACK_SIGNING_SECRET"), - "slack_slash_command_prefix": os.environ.get("SLACK_SLASH_COMMAND_PREFIX", "/"), - # - Cisco Webex ---------------------- - "enable_webex": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_WEBEX")), - "webex_msg_char_limit": int(os.getenv("WEBEX_MSG_CHAR_LIMIT", "7439")), - "webex_signing_secret": os.environ.get("WEBEX_SIGNING_SECRET"), - "webex_token": os.environ.get("WEBEX_ACCESS_TOKEN"), - # = Integrations ===================== - # - Cisco ACI ------------------------ - "enable_aci": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_ACI")), - "aci_creds": {x: os.environ[x] for x in os.environ if "APIC" in x}, - # - AWX / Ansible Tower -------------- - "enable_ansible": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_ANSIBLE")), - "tower_password": os.getenv("NAUTOBOT_TOWER_PASSWORD"), - "tower_uri": os.getenv("NAUTOBOT_TOWER_URI"), - "tower_username": os.getenv("NAUTOBOT_TOWER_USERNAME"), - "tower_verify_ssl": is_truthy(os.getenv("NAUTOBOT_TOWER_VERIFY_SSL", True)), - # - Arista CloudVision --------------- - "enable_aristacv": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_ARISTACV")), - "aristacv_cvaas_url": os.environ.get("ARISTACV_CVAAS_URL"), - "aristacv_cvaas_token": os.environ.get("ARISTACV_CVAAS_TOKEN"), - "aristacv_cvp_host": os.environ.get("ARISTACV_CVP_HOST"), - "aristacv_cvp_insecure": is_truthy(os.environ.get("ARISTACV_CVP_INSECURE")), - "aristacv_cvp_password": os.environ.get("ARISTACV_CVP_PASSWORD"), - "aristacv_cvp_username": os.environ.get("ARISTACV_CVP_USERNAME"), - "aristacv_on_prem": is_truthy(os.environ.get("ARISTACV_ON_PREM")), - # - Grafana -------------------------- - "enable_grafana": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_GRAFANA")), - "grafana_url": os.environ.get("GRAFANA_URL", ""), - "grafana_api_key": os.environ.get("GRAFANA_API_KEY", ""), - "grafana_default_width": 0, - "grafana_default_height": 0, - "grafana_default_theme": "dark", - "grafana_default_timespan": "0", - "grafana_org_id": 1, - "grafana_default_tz": "America/Denver", - # - IPFabric -------------------------- - "enable_ipfabric": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_IPFABRIC")), - "ipfabric_api_token": os.environ.get("IPFABRIC_API_TOKEN"), - "ipfabric_host": os.environ.get("IPFABRIC_HOST"), - "ipfabric_timeout": os.environ.get("IPFABRIC_TIMEOUT", 15), - "ipfabric_verify": is_truthy(os.environ.get("IPFABRIC_VERIFY", True)), - # - Cisco Meraki --------------------- - "enable_meraki": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_MERAKI")), - "meraki_dashboard_api_key": os.environ.get("MERAKI_API_KEY"), - # - Palo Alto Panorama --------------- - "enable_panorama": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_PANORAMA")), - "panorama_host": os.environ.get("PANORAMA_HOST"), - "panorama_password": os.environ.get("PANORAMA_PASSWORD"), - "panorama_user": os.environ.get("PANORAMA_USER"), - }, -} - -METRICS_ENABLED = is_truthy(os.getenv("NAUTOBOT_METRICS_ENABLED")) +# Enable installed Apps. Add the name of each App to the list. +PLUGINS = ["nautobot_chatops"] + +# Apps configuration settings. These settings are used by various Apps that the user may have installed. +# Each key in the dictionary is the name of an installed App and its value is a dictionary of settings. +# PLUGINS_CONFIG = { +# 'nautobot_chatops': { +# 'foo': 'bar', +# 'buzz': 'bazz' +# } +# } diff --git a/docs/admin/compatibility_matrix.md b/docs/admin/compatibility_matrix.md index bdea453b..2be4c56d 100644 --- a/docs/admin/compatibility_matrix.md +++ b/docs/admin/compatibility_matrix.md @@ -1,24 +1,8 @@ # Compatibility Matrix -Changes to the support of upstream Nautobot releases will be announced 1 minor or major version ahead. +!!! warning "Developer Note - Remove Me!" + Explain how the release models of the plugin and of Nautobot work together, how releases are supported, how features and older releases are deprecated etc. -The **deprecation policy** will be announced within the [release notes](release_notes/index.md), and updated in the table below. There will be a `stable-.` branch that will be minimally maintained. Any security enhancements or major bugs in that branch will be supported for a limited time. - -While that last supported version will not be strictly enforced via the `max_version` setting, any issues with an updated Nautobot supported version in a minor release will require raising a bug and fixing it in Nautobot core, with no fixes expected in this plugin. This allows the Chatops plugin the ability to quickly take advantage of the latest features in Nautobot. - -| Chatops Version | Nautobot First Support Version | Nautobot Last Support Version | -| --------------- | ------------------------------ | ----------------------------- | -| 1.0.X | 1.0.0 | 1.2.99 [Official] | -| 1.1.X | 1.0.0 | 1.2.99 [Official] | -| 1.2.X | 1.0.0 | 1.2.99 [Official] | -| 1.3.X | 1.0.0 | 1.2.99 [Official] | -| 1.4.X | 1.0.0 | 1.2.99 [Official] | -| 1.5.X | 1.0.0 | 1.2.99 [Official] | -| 1.6.X | 1.0.0 | 1.2.99 [Official] | -| 1.7.X | 1.0.0 | 1.2.99 [Official] | -| 1.8.X | 1.1.0 | 1.4.99 [Official] | -| 1.9.X | 1.2.0 | 1.5.99 [Official] | -| 1.10.X | 1.3.0 | 1.5.99 [Official] | -| 2.0.X | 1.5.4 | 1.6.99 [Official] | -| 2.1.X | 1.6.2 | 1.6.99 [Official] | -| 3.0.X | 2.0.0 | 2.2.99 [Official] | +| Nautobot ChatOps App Version | Nautobot First Support Version | Nautobot Last Support Version | +| ------------- | -------------------- | ------------- | +| 1.0.X | 2.0.0 | 1.99.99 | diff --git a/docs/admin/install.md b/docs/admin/install.md new file mode 100644 index 00000000..c3463adf --- /dev/null +++ b/docs/admin/install.md @@ -0,0 +1,81 @@ +# Installing the App in Nautobot + +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 plugin is compatible with Nautobot 2.0.0 and higher. +- Databases supported: PostgreSQL, MySQL + +!!! note + Please check the [dedicated page](compatibility_matrix.md) for a full compatibility matrix and the deprecation policy. + +### Access Requirements + +!!! warning "Developer Note - Remove Me!" + What external systems (if any) it needs access to in order to work. + +## Install Guide + +!!! note + Plugins can be installed manually or using Python's `pip`. See the [nautobot documentation](https://nautobot.readthedocs.io/en/latest/plugins/#install-the-package) for more details. The pip package name for this plugin is [`nautobot-chatops`](https://pypi.org/project/nautobot-chatops/). + +The plugin is available as a Python package via PyPI and can be installed with `pip`: + +```shell +pip install nautobot-chatops +``` + +To ensure Nautobot ChatOps App is automatically re-installed during future upgrades, create a file named `local_requirements.txt` (if not already existing) in the Nautobot root directory (alongside `requirements.txt`) and list the `nautobot-chatops` package: + +```shell +echo nautobot-chatops >> local_requirements.txt +``` + +Once installed, the plugin needs to be enabled in your Nautobot configuration. The following block of code below shows the additional configuration required to be added to your `nautobot_config.py` file: + +- Append `"nautobot_chatops"` to the `PLUGINS` list. +- Append the `"nautobot_chatops"` dictionary to the `PLUGINS_CONFIG` dictionary and override any defaults. + +```python +# In your nautobot_config.py +PLUGINS = ["nautobot_chatops"] + +# PLUGINS_CONFIG = { +# "nautobot_chatops": { +# ADD YOUR SETTINGS HERE +# } +# } +``` + +Once the Nautobot configuration is updated, run the Post Upgrade command (`nautobot-server post_upgrade`) to run migrations and clear any cache: + +```shell +nautobot-server post_upgrade +``` + +Then restart (if necessary) the Nautobot services which may include: + +- Nautobot +- Nautobot Workers +- Nautobot Scheduler + +```shell +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 plugin behavior can be controlled with the following list of settings: + +| Key | Example | Default | Description | +| ------- | ------ | -------- | ------------------------------------- | +| `enable_backup` | `True` | `True` | A boolean to represent whether or not to run backup configurations within the plugin. | +| `platform_slug_map` | `{"cisco_wlc": "cisco_aireos"}` | `None` | A dictionary in which the key is the platform slug and the value is what netutils uses in any "network_os" parameter. | +| `per_feature_bar_width` | `0.15` | `0.15` | The width of the table bar within the overview report | diff --git a/docs/admin/release_notes/version_1.0.md b/docs/admin/release_notes/version_1.0.md new file mode 100644 index 00000000..5bdc1a9e --- /dev/null +++ b/docs/admin/release_notes/version_1.0.md @@ -0,0 +1,48 @@ +# 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 + +- Major features or milestones +- Achieved in this `x.y` release +- Changes to compatibility with Nautobot and/or other plugins, libraries etc. + +## [v1.0.1] - 2021-09-08 + +### Added + +### Changed + +### Fixed + +- [#123](https://github.com/nautobot/nautobot-plugin-chatops//issues/123) Fixed Tag filtering not working in job launch form + +## [v1.0.0] - 2021-08-03 + +### Added + +### Changed + +### Fixed diff --git a/docs/admin/uninstall.md b/docs/admin/uninstall.md index d1a18925..7ba42875 100644 --- a/docs/admin/uninstall.md +++ b/docs/admin/uninstall.md @@ -1,18 +1,18 @@ # Uninstall the App from Nautobot -## Uninstall Guide +Here you will find any steps necessary to cleanly remove the App from your Nautobot environment. -1. Remove Database migrations for ChatOps: +## Database Cleanup - ```bash - nautobot-server migrate nautobot-chatops zero - ``` +Prior to removing the plugin from the `nautobot_config.py`, run the following command to roll back any migration specific to this plugin. -2. Remove the configuration you added in `nautobot_config.py` from `PLUGINS` & `PLUGINS_CONFIG`. -3. Run Nautobot-server post_upgrade +```shell +nautobot-server migrate nautobot_plugin_chatops zero +``` - ```bash - nautobot-server post_ugprade - ``` +!!! 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? -4. Restart Nautobot Services +## Remove App configuration + +Remove the configuration you added in `nautobot_config.py` from `PLUGINS` & `PLUGINS_CONFIG`. diff --git a/docs/admin/upgrade.md b/docs/admin/upgrade.md index 31dde8bb..858c34d8 100644 --- a/docs/admin/upgrade.md +++ b/docs/admin/upgrade.md @@ -1,9 +1,10 @@ # Upgrading the App -## Upgrade Guide +Here you will find any steps necessary to upgrade the App in your Nautobot environment. -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 plugin. Execute the command `nautobot-server post_upgrade` from the Nautobot install nautobot/ directory after updating the package. +## Upgrade Guide -### Upgrading to ChatOps 3.0 +!!! 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). -Introduced in 3.0.0 is [Account Linking](../models/chatopsaccountlink.md), users will now need to link their Chat Platform User with their Nautobot User. Until this is done, the `fallback_chatops_user` setting controls the default Nautobot User and should have proper Nautobot Permissions applied. +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 plugin. Execute the command `nautobot-server post-upgrade` within the runtime environment of your Nautobot installation after updating the `nautobot-chatops` package via `pip`. diff --git a/docs/assets/extra.css b/docs/assets/extra.css index ce9ea9c8..dfe2e4b1 100644 --- a/docs/assets/extra.css +++ b/docs/assets/extra.css @@ -18,6 +18,15 @@ font-size: 0.7rem; } +/* +* The default max-width is 61rem which does not provide nearly enough space to present code examples or larger tables +*/ +.md-grid { + margin-left: auto; + margin-right: auto; + max-width: 95%; +} + .md-tabs__link { font-size: 0.8rem; } @@ -38,13 +47,8 @@ font-size: 1.2rem; } -/* Keep images in tables at 50px */ -.md-typeset table:not([class]) :is(img) { - height: 50px; -} - img.logo { - height: 100px; + height: 200px; } img.copyright-logo { @@ -91,7 +95,67 @@ a.autorefs-external:hover::after { background-color: var(--md-accent-fg-color); } -/* Do not wrap code blocks in markdown tables. */ -div.md-typeset__table>table>tbody>tr>td>code { - white-space: nowrap; + +/* Customization for mkdocs-version-annotations */ +:root { + /* Icon for "version-added" admonition: Material Design Icons "plus-box-outline" */ + --md-admonition-icon--version-added: url('data:image/svg+xml;charset=utf-8,'); + /* Icon for "version-changed" admonition: Material Design Icons "delta" */ + --md-admonition-icon--version-changed: url('data:image/svg+xml;charset=utf-8,'); + /* Icon for "version-removed" admonition: Material Design Icons "minus-circle-outline" */ + --md-admonition-icon--version-removed: url('data:image/svg+xml;charset=utf-8,'); +} + +/* "version-added" admonition in green */ +.md-typeset .admonition.version-added, +.md-typeset details.version-added { + border-color: rgb(0, 200, 83); +} + +.md-typeset .version-added>.admonition-title, +.md-typeset .version-added>summary { + background-color: rgba(0, 200, 83, .1); +} + +.md-typeset .version-added>.admonition-title::before, +.md-typeset .version-added>summary::before { + background-color: rgb(0, 200, 83); + -webkit-mask-image: var(--md-admonition-icon--version-added); + mask-image: var(--md-admonition-icon--version-added); +} + +/* "version-changed" admonition in orange */ +.md-typeset .admonition.version-changed, +.md-typeset details.version-changed { + border-color: rgb(255, 145, 0); +} + +.md-typeset .version-changed>.admonition-title, +.md-typeset .version-changed>summary { + background-color: rgba(255, 145, 0, .1); +} + +.md-typeset .version-changed>.admonition-title::before, +.md-typeset .version-changed>summary::before { + background-color: rgb(255, 145, 0); + -webkit-mask-image: var(--md-admonition-icon--version-changed); + mask-image: var(--md-admonition-icon--version-changed); +} + +/* "version-removed" admonition in red */ +.md-typeset .admonition.version-removed, +.md-typeset details.version-removed { + border-color: rgb(255, 82, 82); +} + +.md-typeset .version-removed>.admonition-title, +.md-typeset .version-removed>summary { + background-color: rgba(255, 82, 82, .1); +} + +.md-typeset .version-removed>.admonition-title::before, +.md-typeset .version-removed>summary::before { + background-color: rgb(255, 82, 82); + -webkit-mask-image: var(--md-admonition-icon--version-removed); + mask-image: var(--md-admonition-icon--version-removed); } diff --git a/docs/assets/overrides/partials/copyright.html b/docs/assets/overrides/partials/copyright.html index e2c55d12..b92cf5e3 100644 --- a/docs/assets/overrides/partials/copyright.html +++ b/docs/assets/overrides/partials/copyright.html @@ -1,9 +1,10 @@ + @@ -17,4 +18,5 @@ -
\ No newline at end of file +
+ diff --git a/docs/dev/arch_decision.md b/docs/dev/arch_decision.md new file mode 100644 index 00000000..e7bcbbe4 --- /dev/null +++ b/docs/dev/arch_decision.md @@ -0,0 +1,7 @@ +# 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) and [nautobot-plugin-reservation](https://github.com/networktocode/nautobot-plugin-reservation/blob/develop/docs/dev/dev_adr.md). diff --git a/docs/dev/code_reference/api.md b/docs/dev/code_reference/api.md index 01e7ce0a..f2bdd255 100644 --- a/docs/dev/code_reference/api.md +++ b/docs/dev/code_reference/api.md @@ -1,4 +1,4 @@ -# Nautobot Plugin ChatOps API Package +# Nautobot ChatOps App API Package ::: nautobot_chatops.api options: diff --git a/docs/dev/code_reference/index.md b/docs/dev/code_reference/index.md index 473f2c40..ebe9ff7d 100644 --- a/docs/dev/code_reference/index.md +++ b/docs/dev/code_reference/index.md @@ -1,3 +1,6 @@ # 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. diff --git a/docs/dev/code_reference/package.md b/docs/dev/code_reference/package.md new file mode 100644 index 00000000..664696ae --- /dev/null +++ b/docs/dev/code_reference/package.md @@ -0,0 +1 @@ +::: nautobot_chatops diff --git a/docs/dev/contributing.md b/docs/dev/contributing.md index 57cd6cb3..2337f740 100644 --- a/docs/dev/contributing.md +++ b/docs/dev/contributing.md @@ -1,4 +1,7 @@ -# Contributing to Nautobot ChatOps +# Contributing to the App + +!!! warning "Developer Note - Remove Me!" + Information on how to contribute fixes, functionality, or documentation changes back to the project. The project is packaged with a light [development environment](dev_environment.md) based on `docker-compose` to help with the local development of the project and to run tests. @@ -8,207 +11,14 @@ The project is following Network to Code software development guidelines and is - YAML linting is done with `yamllint`. - Django unit test to ensure the plugin is working properly. -Documentation is built using [mkdocs](https://www.mkdocs.org/). -The [Docker based development environment](dev_environment.md#docker-development-environment) automatically starts a container hosting a live version of the documentation website on [http://localhost:8001](http://localhost:8001) that auto-refreshes when you make any changes to your local files. - -## Creating Changelog Fragments - -All pull requests to `next` or `develop` must include a changelog fragment file in the `./changes` directory. To create a fragment, use your GitHub issue number and fragment type as the filename. For example, `2362.added`. Valid fragment types are `added`, `changed`, `deprecated`, `fixed`, `removed`, and `security`. The change summary is added to the file in plain text. Change summaries should be complete sentences, starting with a capital letter and ending with a period, and be in past tense. Each line of the change fragment will generate a single change entry in the release notes. Use multiple lines in the same file if your change needs to generate multiple release notes in the same category. If the change needs to create multiple entries in separate categories, create multiple files. - -!!! example - - **Wrong** - ```plaintext title="changes/1234.fixed" - fix critical bug in documentation - ``` - - **Right** - ```plaintext title="changes/1234.fixed" - Fixed critical bug in documentation. - ``` - -!!! example "Multiple Entry Example" - - This will generate 2 entries in the `fixed` category and one entry in the `changed` category. - - ```plaintext title="changes/1234.fixed" - Fixed critical bug in documentation. - Fixed release notes generation. - ``` - - ```plaintext title="changes/1234.changed" - Changed release notes generation. - ``` - -## Adding a new top-level command - -First, you should be familiar with the design goals and constraints involved in Nautobot (`design.md`). -Be sure that this is really what you want to do, versus adding a sub-command instead. - -We recommend that each command exist as its own submodule under `nautobot_chatops/workers/` (or, as a separate package -entirely, such as `nautobot_chatops_mycommand/worker.py`, using the `entrypoint/plugin` capability described in `design.md`) -to keep code files to a reasonable size and complexity. This submodule or package should implement a -`celery` worker function(s). In general this worker function shouldn't need to do much more than call -the `handle_subcommands` helper function provided: - -```python -# nautobot_chatops/workers/mycommand.py - -from nautobot_chatops.workers import handle_subcommands, subcommand_of - - -def mycommand(subcommand, **kwargs) - """Perform mycommand and its subcommands.""" - return handle_subcommands("mycommand", subcommand, **kwargs) -``` - -By using `handle_subcommands`, the top-level command worker will automatically recognize the sub-command "help", -as well as any sub-commands registered using the `@subcommand_of` decorator. - -You shouldn't need to make any changes to the `views` or `dispatchers` modules in this scenario. - -For usability, you should use the App Studio app in the Microsoft Teams client to update the bot settings -(`Nautobot_ms_teams.zip`) to include this new top-level command as a documented command supported by the bot. -You will probably then need to delete the bot deployment from your team and re-deploy it for the new command to appear. - -You will also need to log in to api.slack.com and add the new slash-command to your bot's configuration. - -## Adding a new sub-command - -First, you should be familiar with the design goals and constraints involved in Nautobot (`design.md`). - -To register a sub-command, write a function whose name matches the sub-command's name (any `_` in the function name -will be automatically converted to `-` for the sub-command name), and decorate it with the `@subcommand_of` decorator. -This function must take `dispatcher` (an instance of any `Dispatcher` subclass) as its first argument; any additional -positional arguments become arguments in the chat app UI. The docstring of this function will become the help text -displayed for this sub-command when a user invokes ` help`, so it should be concise and to the point. - -```python -from nautobot_chatops.workers import subcommand_of - -# ... - -@subcommand_of("mycommand") -def do_something(dispatcher, first_arg, second_arg): - """Do something with two arguments.""" - # ... -``` - -With the above code, the command `mycommand do_something [first_arg] [second_arg]` will now be available. - -You shouldn't need to make any changes to the `views` or `dispatchers` modules in this scenario. - -A sub-command worker function should always return one of the following: - -### `return False` - -This indicates that the function did not do anything meaningful, and it so should not be logged in Nautobot's -command log. Typically, this is only returned when not all required parameters have been provided by the user -and so the function needs to prompt the user for additional inputs, for example: - -```python -@subcommand_of("nautobot") -def get_rack(dispatcher, site_key, rack_id): - """Get information about a specific rack from Nautobot.""" - site_lt = LocationType.objects.get(name="Site") - if not site_key: - site_options = [(site.name, site.composite_key) for site in Location.objects.filter(location_type=site_lt)] - dispatcher.prompt_from_menu("nautobot get-rack", "Select a site (location)", site_options) - return False # command did not run to completion and therefore should not be logged - ... -``` - -### `return CommandStatusChoices.STATUS_SUCCEEDED` - -This indicates that the command was successful, and no further details are necessary in the logging. -You *could* return another status code besides `STATUS_SUCCEEDED` in this pattern, but in general any other status -code should be accompanied by an explanatory message: - -### `return (CommandStatusChoices.STATUS_FAILED, details_str)` - -This indicates that the command failed for some reason, which is provided for logging purposes. -You could also use other status codes (including `STATUS_SUCCEEDED`) for any other outcome that also requires -explanation. - -The provided `details_str` will be stored in the Nautobot command log history. - -## Adding support for a new chat platform (Webhooks) - -First, you should be familiar with the design goals and constraints involved in Nautobot (`design.md`). - -You'll need to add a new `nautobot_chatops.views.` submodule that provides any necessary API endpoints. - -You'll also need to add a new `nautobot_chatops.dispatchers.` submodule that implements an appropriate -subclass of `Dispatcher`. This new dispatcher class will need to implement any abstract methods of the base class -and override any other methods where platform-specific behavior is required (which will probably be most of them). - -You shouldn't need to make any changes to the `workers` module in this scenario. - -## Adding support for a new chat platform (WebSockets) - -First, you should be familiar with the design goals and constraints involved in Nautobot (`design.md`). - -You'll need to add a new `nautobot_chatops.sockets.` submodule that provides the necessary WebSockets connection to the Platform. - -You'll also need to add a new `nautobot_chatops.dispatchers.` submodule that implements an appropriate -subclass of `Dispatcher`. This new dispatcher class will need to implement any abstract methods of the base class -and override any other methods where platform-specific behavior is required (which will probably be most of them). - -Finally, you will need to add a new `nautobot_chatops.management.start__socket` management command that will start the WebSockets asynchronous loop. -In 2.0 these will likely be condensed to use a single base command with arguments to select the platform. - -You shouldn't need to make any changes to the `workers` module in this scenario. - -## Submitting Pull Requests - -- It is recommended to open an issue **before** starting work on a pull request, and discuss your idea with the Nautobot maintainers before beginning work. This will help prevent wasting time on something that we might not be able to implement. When suggesting a new feature, also make sure it won't conflict with any work that's already in progress. - -- Once you've opened or identified an issue you'd like to work on, ask that it - be assigned to you so that others are aware it's being worked on. A maintainer - will then mark the issue as "accepted." - -- If you followed the project guidelines, have ample tests, code quality, you will first be acknowledged for your work. So, thank you in advance! After that, the PR will be quickly reviewed to ensure that it makes sense as a contribution to the project, and to gauge the work effort or issues with merging into *current*. If the effort required by the core team isn’t trivial, it’ll likely still be a few weeks before it gets thoroughly reviewed and merged, thus it won't be uncommon to move it to *near term* with a `near-term` label. It will just depend on the current backlog. - -- All code submissions should meet the following criteria (CI will enforce -these checks): - - Python syntax is valid - - All unit tests pass successfully - - PEP 8 compliance is enforced, with the exception that lines may be - greater than 80 characters in length - - At least one [changelog fragment](#creating-changelog-fragments) has - been included in the feature branch +Documentation is built using [mkdocs](https://www.mkdocs.org/). The [Docker based development environment](dev_environment.md#docker-development-environment) automatically starts a container hosting a live version of the documentation website on [http://localhost:8001](http://localhost:8001) that auto-refreshes when you make any changes to your local files. ## Branching Policy -The branching policy includes the following tenets: - -- The `develop` branch is the primary branch to develop off of. -- PRs intended to add new features should be sourced from the `develop` branch. -- PRs intended to address bug fixes and security patches should be sourced from the `develop` branch. -- PRs intended to add new features that break backward compatibility should be discussed before a PR is created. - -Nautobot ChatOps app will observe semantic versioning, as of 1.0. This may result in a quick turn around in minor versions to keep pace with an ever-growing feature set. +!!! warning "Developer Note - Remove Me!" + What branching policy is used for this project and where contributions should be made. ## Release Policy -Nautobot ChatOps currently has no intended scheduled release schedule, and will release new features in minor versions. - -When a new release of any kind (e.g. from `develop` to `main`, or a release of a `stable-.`) is created the following should happen. - -- A release PR is created: - - Add and/or update to the changelog in `docs/admin/release_notes/version_..md` file to reflect the changes. - - Update the mkdocs.yml file to include updates when adding a new release_notes version file. - - Change the version from `..-beta` to `..` in `pyproject.toml`. - - Set the PR to the proper branch, e.g. either `main` or `stable-.`. -- Ensure the tests for the PR pass. -- Merge the PR. -- Create a new tag: - - The tag should be in the form of `v..`. - - The title should be in the form of `v..`. - - The description should be the changes that were added to the `version_..md` document. -- If merged into `main`, then push from `main` to `develop`, in order to retain the merge commit created when the PR was merged. -- If there is a new `.`, create a `stable-.` for the **previous** version, so that security updates to old versions may be applied more easily. -- A post release PR is created: - - Change the version from `..` to `..-beta` in `pyproject.toml`. - - Set the PR to the proper branch, e.g. either `develop` or `stable-.`. - - Once tests pass, merge. +!!! warning "Developer Note - Remove Me!" + How new versions are released. diff --git a/docs/dev/dev_environment.md b/docs/dev/dev_environment.md index 73f88702..2e1300e1 100644 --- a/docs/dev/dev_environment.md +++ b/docs/dev/dev_environment.md @@ -4,7 +4,7 @@ The development environment can be used in two ways: -1. **(Recommended)** All services, including Nautobot, are spun up using Docker containers and a volume mount, so you can develop locally. +1. **(Recommended)** All services, including Nautobot, are spun up using Docker containers and a volume mount so you can develop locally. 2. With a local Poetry environment if you wish to develop outside of Docker, with the caveat of using external services provided by Docker for the database (PostgreSQL by default, MySQL optionally) and Redis services. This is a quick reference guide if you're already familiar with the development environment provided, which you can read more about later in this document. @@ -13,9 +13,9 @@ This is a quick reference guide if you're already familiar with the development The [Invoke](http://www.pyinvoke.org/) library is used to provide some helper commands based on the environment. There are a few configuration parameters which can be passed to Invoke to override the default configuration: -- `nautobot_ver`: the version of Nautobot to use as a base for any built docker containers (default: latest) -- `project_name`: the default docker compose project name (default: `nautobot_chatops`) -- `python_ver`: the version of Python to use as a base for any built docker containers (default: 3.8) +- `nautobot_ver`: the version of Nautobot to use as a base for any built docker containers (default: 2.0.0) +- `project_name`: the default docker compose project name (default: `nautobot-chatops`) +- `python_ver`: the version of Python to use as a base for any built docker containers (default: 3.11) - `local`: a boolean flag indicating if invoke tasks should be run on the host or inside the docker containers (default: False, commands will be run in docker containers) - `compose_dir`: the full path to a directory containing the project compose files - `compose_files`: a list of compose files applied in order (see [Multiple Compose files](https://docs.docker.com/compose/extends/#multiple-compose-files) for more information) @@ -27,7 +27,7 @@ Using **Invoke** these configuration options can be overridden using [several me !!! tip This is the recommended option for development. -This project is managed by [Python Poetry](https://python-poetry.org/) and has a few requirements to set up your development environment: +This project is managed by [Python Poetry](https://python-poetry.org/) and has a few requirements to setup your development environment: 1. Install Poetry, see the [Poetry Documentation](https://python-poetry.org/docs/#installation) for your operating system. 2. Install Docker, see the [Docker documentation](https://docs.docker.com/get-docker/) for your operating system. @@ -35,21 +35,11 @@ This project is managed by [Python Poetry](https://python-poetry.org/) and has a Once you have Poetry and Docker installed you can run the following commands (in the root of the repository) to install all other development dependencies in an isolated Python virtual environment: ```shell -git clone git@github.com:nautobot/nautobot-plugin-chatops.git -cd nautobot-plugin-chatops poetry shell poetry install cp development/creds.example.env development/creds.env invoke build invoke start - -# Nautobot available as http://127.0.0.1:8080 admin / admin -# Mattermost available at http://127.0.0.1:8065 admin / admin - -# To allow Mattermost integration run the following after Nautobot starts: -invoke bootstrap-mattermost -``` - ``` The Nautobot server can now be accessed at [http://localhost:8080](http://localhost:8080) and the live documentation at [http://localhost:8001](http://localhost:8001). @@ -67,8 +57,6 @@ To either stop or destroy the development environment use the following options. --- nautobot_chatops: local: true - compose_files: - - "docker-compose.requirements.yml" ``` Run the following commands: @@ -76,7 +64,7 @@ Run the following commands: ```shell poetry shell poetry install --extras nautobot -export $(cat development/dev.env | xargs) +export $(cat development/development.env | xargs) export $(cat development/creds.env | xargs) invoke start && sleep 5 nautobot-server migrate @@ -93,7 +81,7 @@ nautobot-server runserver 0.0.0.0:8080 --insecure Nautobot server can now be accessed at [http://localhost:8080](http://localhost:8080). -It is typically recommended to launch the Nautobot `runserver` command in a separate shell, so you can keep developing and manage the web server separately. +It is typically recommended to launch the Nautobot **runserver** command in a separate shell so you can keep developing and manage the webserver separately. ### Updating the Documentation @@ -103,7 +91,7 @@ If you need to update any of the documentation dependencies to a newer version, ### CLI Helper Commands -The project features a CLI helper based on [Invoke](https://www.pyinvoke.org/) to help set up the development environment. The commands are listed below in 3 categories: +The project features a CLI helper based on [Invoke](https://www.pyinvoke.org/) to help setup the development environment. The commands are listed below in 3 categories: - `dev environment` - `utility` @@ -111,9 +99,6 @@ The project features a CLI helper based on [Invoke](https://www.pyinvoke.org/) t Each command can be executed with `invoke `. All commands support the arguments `--nautobot-ver` and `--python-ver` if you want to manually define the version of Python and Nautobot to use. Each command also has its own help `invoke --help` -!!! note - To run the MySQL (MariaDB) development environment, set the environment variable as such `export NAUTOBOT_USE_MYSQL=1`. - #### Local Development Environment ``` @@ -146,10 +131,9 @@ Each command can be executed with `invoke `. All commands support the a unittest Run Django unit tests for the plugin. ``` - ## Project Overview -This project provides the ability to develop and manage the Nautobot server locally (with supporting services being dockerized) or by using only Docker containers to manage Nautobot. The main difference between the two environments is the ability to debug and use **pdb** when developing locally. Debugging with **pdb** within the Docker container is more complicated, but can still be accomplished by either entering into the container (via `docker exec`) or attaching your IDE to the container and running the Nautobot service manually within the container. +This project provides the ability to develop and manage the Nautobot server locally (with supporting services being *Dockerized*) or by using only Docker containers to manage Nautobot. The main difference between the two environments is the ability to debug and use **pdb** when developing locally. Debugging with **pdb** within the Docker container is more complicated, but can still be accomplished by either entering into the container (via `docker exec`) or attaching your IDE to the container and running the Nautobot service manually within the container. The upside to having the Nautobot service handled by Docker rather than locally is that you do not have to manage the Nautobot server. The [Docker logs](#docker-logs) provide the majority of the information you will need to help troubleshoot, while getting started quickly and not requiring you to perform several manual steps and remembering to have the Nautobot server running in a separate terminal while you develop. @@ -160,14 +144,14 @@ Follow the directions below for the specific development environment that you ch ## Poetry -Poetry is used in lieu of the `virtualenv` commands and is leveraged in both environments. The virtual environment will provide all the Python packages required to manage the development environment such as **Invoke**. See the [Local Development Environment](#local-poetry-development-environment) section to see how to install Nautobot if you're going to be developing locally (i.e. not using the Docker container). +Poetry is used in lieu of the "virtualenv" commands and is leveraged in both environments. The virtual environment will provide all of the Python packages required to manage the development environment such as **Invoke**. See the [Local Development Environment](#local-poetry-development-environment) section to see how to install Nautobot if you're going to be developing locally (i.e. not using the Docker container). -The `pyproject.toml` file outlines all the relevant dependencies for the project: +The `pyproject.toml` file outlines all of the relevant dependencies for the project: - `tool.poetry.dependencies` - the main list of dependencies. -- `tool.poetry.dev-dependencies` - development dependencies, to facilitate linting, testing, and documentation building. +- `tool.poetry.group.dev.dependencies` - development dependencies, to facilitate linting, testing, and documentation building. -The `poetry shell` command is used to create and enable a virtual environment managed by Poetry, so all commands ran going forward are executed within the virtual environment. This is similar to running the `source venv/bin/activate` command with `virtualenv`. To install project dependencies in the virtual environment, you should run `poetry install` - this will install **both** project and development dependencies. +The `poetry shell` command is used to create and enable a virtual environment managed by Poetry, so all commands ran going forward are executed within the virtual environment. This is similar to running the `source venv/bin/activate` command with virtualenvs. To install project dependencies in the virtual environment, you should run `poetry install` - this will install **both** project and development dependencies. For more details about Poetry and its commands please check out its [online documentation](https://python-poetry.org/docs/). @@ -195,7 +179,7 @@ The first thing you need to do is build the necessary Docker image for Nautobot #14 exporting layers #14 exporting layers 1.2s done #14 writing image sha256:2d524bc1665327faa0d34001b0a9d2ccf450612bf8feeb969312e96a2d3e3503 done -#14 naming to docker.io/nautobot-chatops/nautobot:latest-py3.7 done +#14 naming to docker.io/nautobot-chatops/nautobot:2.0.0-py3.11 done ``` ### Invoke - Starting the Development Environment @@ -221,14 +205,14 @@ Creating nautobot_chatops_worker_1 ... done Docker Compose is now in the Docker CLI, try `docker compose up` ``` -This will start all containers used for hosting Nautobot. You should see the following containers running after `invoke start` is finished. +This will start all of the Docker containers used for hosting Nautobot. You should see the following containers running after `invoke start` is finished. ```bash ➜ docker ps ****CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES -ee90fbfabd77 nautobot-chatops/nautobot:latest-py3.7 "nautobot-server rqw…" 16 seconds ago Up 13 seconds nautobot_chatops_worker_1 -b8adb781d013 nautobot-chatops/nautobot:latest-py3.7 "/docker-entrypoint.…" 20 seconds ago Up 15 seconds 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp nautobot_chatops_nautobot_1 -d64ebd60675d nautobot-chatops/nautobot:latest-py3.7 "mkdocs serve -v -a …" 25 seconds ago Up 18 seconds 0.0.0.0:8001->8080/tcp, :::8001->8080/tcp nautobot_chatops_docs_1 +ee90fbfabd77 nautobot-chatops/nautobot:2.0.0-py3.11 "nautobot-server rqw…" 16 seconds ago Up 13 seconds nautobot_chatops_worker_1 +b8adb781d013 nautobot-chatops/nautobot:2.0.0-py3.11 "/docker-entrypoint.…" 20 seconds ago Up 15 seconds 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp nautobot_chatops_nautobot_1 +d64ebd60675d nautobot-chatops/nautobot:2.0.0-py3.11 "mkdocs serve -v -a …" 25 seconds ago Up 18 seconds 0.0.0.0:8001->8080/tcp, :::8001->8080/tcp nautobot_chatops_docs_1 e72d63129b36 postgres:13-alpine "docker-entrypoint.s…" 25 seconds ago Up 19 seconds 0.0.0.0:5432->5432/tcp, :::5432->5432/tcp nautobot_chatops_postgres_1 96c6ff66997c redis:6-alpine "docker-entrypoint.s…" 25 seconds ago Up 21 seconds 0.0.0.0:6379->6379/tcp, :::6379->6379/tcp nautobot_chatops_redis_1 ``` @@ -243,14 +227,14 @@ Once the containers are fully up, you should be able to open up a web browser, a ### Invoke - Creating a Superuser -The Nautobot development image will automatically provision a super-user when specifying the following variables within `creds.env` which is the default when copying `creds.example.env` to `creds.env`. +The Nautobot development image will automatically provision a super user when specifying the following variables within `creds.env` which is the default when copying `creds.example.env` to `creds.env`. - `NAUTOBOT_CREATE_SUPERUSER=true` - `NAUTOBOT_SUPERUSER_API_TOKEN=0123456789abcdef0123456789abcdef01234567` - `NAUTOBOT_SUPERUSER_PASSWORD=admin` !!! note - The default username is **admin**, but can be overridden by specifying `NAUTOBOT_SUPERUSER_USERNAME`. + The default username is **admin**, but can be overridden by specifying **NAUTOBOT_SUPERUSER_USERNAME**. If you need to create additional superusers, run the follow commands. @@ -313,7 +297,7 @@ The magic here is the root directory is mounted inside your Docker containers wh !!! warning There are a few exceptions to this, as outlined in the section [To Rebuild or Not To Rebuild](#to-rebuild-or-not-to-rebuild). -The back-end Django process is set up to automatically reload itself (it only takes a couple of seconds) every time a file is updated (saved). So for example, if you were to update one of the files like `tables.py`, then save it, the changes will be visible right away in the web browser! +The back-end Django process is setup to automatically reload itself (it only takes a couple of seconds) every time a file is updated (saved). So for example, if you were to update one of the files like `tables.py`, then save it, the changes will be visible right away in the web browser! !!! note You may get connection refused while Django reloads, but it should be refreshed fairly quickly. @@ -323,13 +307,16 @@ The back-end Django process is set up to automatically reload itself (it only ta When trying to debug an issue, one helpful thing you can look at are the logs within the Docker containers. ```bash -➜ invoke logs --follow +➜ docker logs -f ``` !!! note - The `--follow` tag will keep the logs open, and output them in real-time as they are generated. + The `-f` tag will keep the logs open, and output them in realtime as they are generated. + +!!! info + Want to limit the log output even further? Use the `--tail <#>` command line argument in conjunction with `-f`. -So for example, `invoke logs --service nautobot --follow` will follow logs from `nautobot` docker compose service. You can find all running services via `invoke ps`. +So for example, our plugin is named `nautobot-chatops`, the command would most likely be `docker logs nautobot_chatops_nautobot_1 -f`. You can find the name of all running containers via `docker ps`. If you want to view the logs specific to the worker container, simply use the name of that container instead. @@ -337,13 +324,13 @@ If you want to view the logs specific to the worker container, simply use the na Most of the time, you will not need to rebuild your images. Simply running `invoke start` and `invoke stop` is enough to keep your environment going. -However, there are a couple of instances when you will want to. +However there are a couple of instances when you will want to. ### Updating Environment Variables To add environment variables to your containers, thus allowing Nautobot to use them, you will update/add them in the `development/development.env` file. However, doing so is considered updating the underlying container shell, instead of Django (which auto restarts itself on changes). -To get new environment variables to take effect, you will need to stop any running images, rebuild the images, then restart them. This can easily be done with 3 commands: +To get new environment variables to take effect, you will need stop any running images, rebuild the images, then restart them. This can easily be done with 3 commands: ```bash ➜ invoke stop @@ -372,7 +359,7 @@ Once the dependencies are resolved, stop the existing containers, rebuild the Do ### Installing Additional Nautobot Plugins -Let's say for example you want the new plugin you're creating to integrate into Nautobot ChatOps. To do this, you will want to integrate into the existing Nautobot ChatOps Plugin. +Let's say for example you want the new plugin you're creating to integrate into Slack. To do this, you will want to integrate into the existing Nautobot ChatOps Plugin. ```bash ➜ poetry shell @@ -392,7 +379,7 @@ Before you continue, you'll need to update the file `development/nautobot_config Once the containers are up and running, you should now see the new plugin installed in your Nautobot instance. !!! note - You can even launch `ngrok` service locally on your laptop, pointing to port 8080 (such as for ChatOps development), and it will point traffic directly to your Docker images. + You can even launch an `ngrok` service locally on your laptop, pointing to port 8080 (such as for chatops development), and it will point traffic directly to your Docker images. ### Updating Python Version @@ -404,14 +391,14 @@ namespace.configure( { "nautobot_chatops": { ... - "python_ver": "3.7", + "python_ver": "3.11", ... } } ) ``` -Or set the `INVOKE_NAUTOBOT_GOLDEN_CONFIG_PYTHON_VER` variable. +Or set the `INVOKE_NAUTOBOT_CHATOPS_PYTHON_VER` variable. ### Updating Nautobot Version @@ -423,7 +410,7 @@ namespace.configure( { "nautobot_chatops": { ... - "nautobot_ver": "1.0.2", + "nautobot_ver": "2.0.0", ... } } @@ -466,7 +453,7 @@ This is the same as running: ### Tests -To run tests against your code, you can run all the tests that GitHub CI runs against any new PR with: +To run tests against your code, you can run all of the tests that TravisCI runs against any new PR with: ```bash ➜ invoke tests diff --git a/docs/dev/extending.md b/docs/dev/extending.md new file mode 100644 index 00000000..49b89f46 --- /dev/null +++ b/docs/dev/extending.md @@ -0,0 +1,6 @@ +# Extending the App + +!!! warning "Developer Note - Remove Me!" + Information on how to extend the App functionality. + +Extending the application is welcome, however it is best to open an issue first, to ensure that a PR would be accepted and makes sense in terms of features and design. diff --git a/docs/images/icon-nautobot-chatops.png b/docs/images/icon-nautobot-chatops.png new file mode 100644 index 0000000000000000000000000000000000000000..7e00cf6ae0ee76324adab30d68d64206678a85e1 GIT binary patch literal 74601 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
@5hb{hC=~cCz;d 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 literal 0 HcmV?d00001 diff --git a/docs/index.md b/docs/index.md index f8e5c92f..f32fd72b 100644 --- a/docs/index.md +++ b/docs/index.md @@ -3,4 +3,4 @@ hide: - navigation --- ---8<-- "README.md" \ No newline at end of file +--8<-- "README.md" diff --git a/docs/requirements.txt b/docs/requirements.txt index 0da7e270..d168c88f 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -1,8 +1,5 @@ -griffe==0.30.1 -mkdocs==1.3.1 -mkdocs-material==8.4.2 +mkdocs==1.5.2 +mkdocs-material==9.1.15 mkdocs-version-annotations==1.0.0 +mkdocstrings-python==1.5.2 mkdocstrings==0.22.0 -mkdocstrings-python==1.1.2 -Jinja2==3.0.3 -mkdocs-include-markdown-plugin==3.6.1 \ No newline at end of file diff --git a/docs/user/app_getting_started.md b/docs/user/app_getting_started.md index c2da634b..24ea0099 100644 --- a/docs/user/app_getting_started.md +++ b/docs/user/app_getting_started.md @@ -1,61 +1,19 @@ # Getting Started with the App -A step-by-step tutorial on how to get the App going and how to use it. +This document provides a step-by-step tutorial on how to get the App going and how to use it. ## Install the App -To install the App, please follow the instructions detailed in the [Administrator Guide](../admin/install/index.md). +To install the App, please follow the instructions detailed in the [Installation Guide](../admin/install.md). -## Link Nautobot Account +## First steps with the App -+++3.0.0 +!!! warning "Developer Note - Remove Me!" + What (with screenshots preferably) does it look like to perform the simplest workflow within the App once installed? -Nautobot ChatOps now uses the built-in Nautobot permissions for Nautobot Objects (Devices, Locations, Racks, etc.). Each user will need to link their Nautobot Account with their Chat Platform User Account. Login to Nautobot then access the Link ChatOps Account within the Plugins menu. Here you can provide your email address and select the ChatOps Platform you are using, then click the Look up User ID from Email to get your Chat User ID. +## What are the next steps? -![Link Accounts](../images/account_link.png) +!!! warning "Developer Note - Remove Me!" + After taking the first steps, what else could the users look at doing. -## Built-in Commands - -Each command can be invoked with `help` sub-command to display all sub-commands with the description. - -### `/clear` Command - -Scroll the chat history out of view. This command has no sub-commands. - -### `/nautobot` Command - -Interact with Nautobot by utilizing the following sub-commands: - -| Command | Arguments | Description | -| ------- | --------- | ----------- | -| `about` || Provide a link for more information on Nautobot Apps. | -| `change-device-status` | `[device-name]` `[status]` | Set the status of a device in Nautobot. | -| `get-circuit-connections` | `[provider-slug]` `[circuit-id]` | For a given circuit, find the objects the circuit connects to. | -| `get-circuit-providers` || Get a list of circuit providers. | -| `get-circuits` | `[filter-type]` `[filter-value]` | Get a filtered list of circuits from Nautobot. | -| `get-device-facts` | `[device-name]` | Get detailed facts about a device from Nautobot in YAML format. | -| `get-device-status` | `[device-name]` | Get the status of a device in Nautobot. | -| `get-devices` | `[filter-type]` `[filter-value]` | Get a filtered list of devices from Nautobot. | -| `get-interface-connections` | `[filter-type]` `[filter-value-1]` `[filter-value-2]` | Return a filtered list of interface connections based on filter type, `filter_value_1` and/or `filter_value_2`. | -| `get-manufacturer-summary` || Provides a summary of each manufacturer and how many devices have that manufacturer. | -| `get-rack` | `[site-slug]` `[rack-id]` | Get information about a specific rack from Nautobot. | -| `get-vlans` | `[filter-type]` `[filter-value-1]` | Return a filtered list of VLANs based on filter type and/or `filter_value_1`. | - -!!! note - All sub-commands are intended to be used with the `nautobot` prefix. For example, to retrieve a filtered list of VLANs, use the command `/nautobot get-vlans`. - -+/- 3.0.0 - Due to the removal of slug in Nautobot 2.0, the command shortcuts will use the PK value of an object. This will be - changed to the Natural Key or PK in an upcoming release. - -### Integrations Commands - -The `nautobot-chatops` package includes multiple integrations. Each integration adds chat commands described here: - -- [Cisco ACI](./aci_commands.md) -- [AWX / Ansible Tower](./ansible_commands.md) -- [Arista CloudVision](./aristacv_commands.md) -- [Grafana](./grafana_commands.md) -- [IPFabric](./ipfabric_commands.md) -- [Cisco Meraki](./meraki_commands.md) -- [Palo Alto Panorama](./panorama_commands.md) +You can check out the [Use Cases](app_use_cases.md) section for more examples. diff --git a/docs/user/app_overview.md b/docs/user/app_overview.md index b2af3cca..06ff5d32 100644 --- a/docs/user/app_overview.md +++ b/docs/user/app_overview.md @@ -1,26 +1,30 @@ # App Overview -The ChatOps plugin is a Nautobot Plugin that provides a Chatbot framework for Nautobot. +This document provides an overview of the App including critical information and import considerations when applying it to your Nautobot environment. -## Description/Overview +!!! note + Throughout this documentation, the terms "app" and "plugin" will be used interchangeably. -The ChatOps framework provides Network Engineers power to query Nautobot or their Network (through ChatOps plugins) while staying within their preferred Chat application. The goal of ChatOps is to bring people, processes and Automation together. +## Description -{% - include-markdown '../glossary.md' - heading-offset=1 -%} ## Audience (User Personas) - Who should use this App? -- Network Engineers -- Network Automation Engineers -- Site Reliability Engineers -- Network Operations +!!! warning "Developer Note - Remove Me!" + Who is this meant for/ who is the common user of this app? ## Authors and Maintainers -- Glenn Matthews (@glennmatthews) -- Josh VanDeraa (@jvanderaa) -- Jeremy White (@whitej6) -- Stephen Kiely (@smk4664) +!!! 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 Plugins 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? diff --git a/docs/user/app_use_cases.md b/docs/user/app_use_cases.md new file mode 100644 index 00000000..dc06944f --- /dev/null +++ b/docs/user/app_use_cases.md @@ -0,0 +1,12 @@ +# Using the App + +This document describes common use-cases and scenarios for this App. + +## General Usage + +## Use-cases and common workflows + +## Screenshots + +!!! warning "Developer Note - Remove Me!" + Ideally captures every view exposed by the App. Should include a relevant dataset. diff --git a/docs/user/external_interactions.md b/docs/user/external_interactions.md new file mode 100644 index 00000000..eaba5b56 --- /dev/null +++ b/docs/user/external_interactions.md @@ -0,0 +1,17 @@ +# External Interactions + +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. diff --git a/docs/user/faq.md b/docs/user/faq.md new file mode 100644 index 00000000..318b08dc --- /dev/null +++ b/docs/user/faq.md @@ -0,0 +1 @@ +# Frequently Asked Questions diff --git a/invoke.example.yml b/invoke.example.yml index 90872991..df0a8ebc 100644 --- a/invoke.example.yml +++ b/invoke.example.yml @@ -1,14 +1,12 @@ --- nautobot_chatops: project_name: "nautobot-chatops" - nautobot_ver: "1.5.4" + nautobot_ver: "2.0.0" local: false - python_ver: "3.8" + python_ver: "3.11" compose_dir: "development" compose_files: - "docker-compose.base.yml" - "docker-compose.redis.yml" - "docker-compose.postgres.yml" - - "mattermost/docker-compose.yml" - - "ansible/docker-compose.yml" - "docker-compose.dev.yml" diff --git a/invoke.mysql.yml b/invoke.mysql.yml index 20cebb59..e7372544 100644 --- a/invoke.mysql.yml +++ b/invoke.mysql.yml @@ -1,14 +1,12 @@ --- nautobot_chatops: project_name: "nautobot-chatops" - nautobot_ver: "1.5.4" + nautobot_ver: "2.0.0" local: false - python_ver: "3.8" + python_ver: "3.11" compose_dir: "development" compose_files: - "docker-compose.base.yml" - "docker-compose.redis.yml" - "docker-compose.mysql.yml" - - "mattermost/docker-compose.yml" - - "ansible/docker-compose.yml" - "docker-compose.dev.yml" diff --git a/mkdocs.yml b/mkdocs.yml index 0f8d2034..b0cf8820 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -1,11 +1,11 @@ --- dev_addr: "127.0.0.1:8001" -edit_uri: "edit/develop/docs" +edit_uri: "edit/main/nautobot-plugin-chatops/docs" site_dir: "nautobot_chatops/static/nautobot_chatops/docs" -site_name: "Nautobot ChatOps Documentation" -site_url: "https://docs.nautobot.com/projects/chatops/en/stable/" -repo_url: "https://github.com/nautobot/nautobot-plugin-chatops" -copyright: "Copyright © 2020 Network to Code" +site_name: "Nautobot ChatOps App Documentation" +site_url: "https://docs.nautobot.com/projects/chatops/en/latest/" +repo_url: "https://github.com/nautobot/nautobot-plugin-chatops/" +copyright: "Copyright © The Authors" theme: name: "material" navigation_depth: 4 @@ -14,16 +14,17 @@ theme: - "django" - "yaml" features: - - "navigation.tracking" + - "content.action.edit" + - "content.action.view" + - "content.code.copy" + - "navigation.footer" + - "navigation.indexes" - "navigation.tabs" - "navigation.tabs.sticky" - - "navigation.footer" - - "search.suggest" + - "navigation.tracking" - "search.highlight" - "search.share" - - "navigation.indexes" - - "content.action.edit" - - "content.action.view" + - "search.suggest" favicon: "assets/favicon.ico" logo: "assets/nautobot_logo.svg" palette: @@ -84,7 +85,6 @@ markdown_extensions: - "footnotes" plugins: - "search" - - "include-markdown" - "mkdocs-version-annotations" - "mkdocstrings": default_handler: "python" @@ -101,64 +101,24 @@ nav: - User Guide: - App Overview: "user/app_overview.md" - Getting Started: "user/app_getting_started.md" - - Frequently Asked Questions: "user/app_faq.md" - - Integrations: - - "user/aci_commands.md" - - "user/ansible_commands.md" - - "user/aristacv_commands.md" - - "user/grafana_commands.md" - - "user/ipfabric_commands.md" - - "user/meraki_commands.md" - - "user/panorama_commands.md" + - Using the App: "user/app_use_cases.md" + - Frequently Asked Questions: "user/faq.md" + - External Interactions: "user/external_interactions.md" - Administrator Guide: - - Install and Configure: - - "admin/install/index.md" - - "admin/install/slack_setup.md" - - "admin/install/mattermost_setup.md" - - "admin/install/webex_setup.md" - - "admin/install/microsoft_teams_setup.md" - - "admin/install/aci_setup.md" - - "admin/install/ansible_setup.md" - - "admin/install/aristacv_setup.md" - - "admin/install/grafana_setup.md" - - "admin/install/ipfabric_setup.md" - - "admin/install/meraki_setup.md" - - "admin/install/panorama_setup.md" + - Install and Configure: "admin/install.md" - Upgrade: "admin/upgrade.md" - Uninstall: "admin/uninstall.md" - Compatibility Matrix: "admin/compatibility_matrix.md" - Release Notes: - "admin/release_notes/index.md" - - v3.0: "admin/release_notes/version_3.0.md" - - v2.1: "admin/release_notes/version_2.1.md" - - v2.0: "admin/release_notes/version_2.0.md" - - v1.11: "admin/release_notes/version_1.11.md" - - v1.10: "admin/release_notes/version_1.10.md" - - v1.9: "admin/release_notes/version_1.9.md" - - v1.8: "admin/release_notes/version_1.8.md" - - v1.7: "admin/release_notes/version_1.7.md" - - v1.6: "admin/release_notes/version_1.6.md" - - v1.5: "admin/release_notes/version_1.5.md" - - v1.4: "admin/release_notes/version_1.4.md" - - v1.3: "admin/release_notes/version_1.3.md" - - v1.2: "admin/release_notes/version_1.2.md" - - 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" - Contributing to the App: "dev/contributing.md" - - Design Documentation: "dev/design.md" - Development Environment: "dev/dev_environment.md" - - Release Checklist: "dev/release_checklist.md" - - Glossary: "glossary.md" + - Architecture Decision Records: "dev/arch_decision.md" - Code Reference: - "dev/code_reference/index.md" - - Models: "dev/code_reference/models.md" + - Package: "dev/code_reference/package.md" - API: "dev/code_reference/api.md" - - Dispatchers: - - "dev/code_reference/base.md" - - "dev/code_reference/slack.md" - - "dev/code_reference/webex.md" - - "dev/code_reference/ms_teams.md" - - "dev/code_reference/mattermost.md" - - "models/accessgrant.md" - - "models/commandtoken.md" - Nautobot Docs Home ↗︎: "https://docs.nautobot.com" diff --git a/nautobot_chatops/__init__.py b/nautobot_chatops/__init__.py index dd1c8c6f..0ef2d619 100644 --- a/nautobot_chatops/__init__.py +++ b/nautobot_chatops/__init__.py @@ -1,162 +1,26 @@ -"""Nautobot plugin implementing a chatbot.""" -try: - from importlib import metadata -except ImportError: - # Python version < 3.8 - import importlib_metadata as metadata +"""Plugin declaration for nautobot_chatops.""" +# Metadata is inherited from Nautobot. If not including Nautobot in the environment, this should be added +from importlib import metadata __version__ = metadata.version(__name__) -from django.conf import settings -from nautobot.apps import ConstanceConfigItem, NautobotAppConfig +from nautobot.extras.plugins import NautobotAppConfig -_CONFLICTING_APP_NAMES = [ - # App names that conflict with nautobot_chatops - "nautobot_plugin_chatops_aci", - "nautobot_plugin_chatops_ansible", - "nautobot_plugin_chatops_aristacv", - "nautobot_plugin_chatops_grafana", - "nautobot_plugin_chatops_ipfabric", - "nautobot_plugin_chatops_meraki", - "nautobot_plugin_chatops_panorama", -] - - -def _check_for_conflicting_apps(): - intersection = set(_CONFLICTING_APP_NAMES).intersection(set(settings.PLUGINS)) - if intersection: - raise RuntimeError( - f"The following apps are installed and conflict with `nautobot-chatops`: {', '.join(intersection)}." - ) - - -_check_for_conflicting_apps() - - -class NautobotChatOpsConfig(NautobotAppConfig): +class NautobotChatOpsPluginConfig(NautobotAppConfig): """Plugin configuration for the nautobot_chatops plugin.""" name = "nautobot_chatops" - verbose_name = "Nautobot ChatOps" + verbose_name = "Nautobot ChatOps App" version = __version__ - author = "Network to Code" - author_email = "opensource@networktocode.com" - description = """ - Nautobot App that is a multi-platform chatbot supporting Slack, MS Teams, Cisco Webex, - and Mattermost that simplifies creating chat commands with pre-defined design patterns. - Includes the 'nautobot' command that simplifies fetching and updating data in Nautobot. - """ + author = "Network to Code, LLC" + description = "Nautobot ChatOps App." base_url = "chatops" required_settings = [] - default_settings = { - # = Common Settings ================== - # Should menus, text input fields, etc. be deleted from the chat history after the user makes a selection? - "delete_input_on_submission": False, - "restrict_help": False, - # As requested on https://github.com/nautobot/nautobot-plugin-chatops/issues/114 this setting is used for - # sending all messages as an ephemeral message, meaning only the person interacting with the bot will see the - # responses. - "send_all_messages_private": False, - # Session Cache - "session_cache_timeout": 86400, - # = Chat Platforms =================== - # - Mattermost ----------------------- - "mattermost_api_token": "", - "mattermost_url": "", - # - Microsoft Teams ------------------ - "microsoft_app_id": "", - "microsoft_app_password": "", - # - Slack ---------------------------- - "slack_api_token": "", # for example, "xoxb-123456" - "slack_signing_secret": "", - "slack_ephemeral_message_size_limit": 3000, - # Any prefix that's prepended to all slash-commands for this bot and should be stripped away - # in order to identify the actual command name to be invoked, eg "/nautobot-" - "slack_slash_command_prefix": "/", - # Since Slack Socket is meant keep Nautobot server out of public access, slack needs to know - # where to find Static images. If Django Storages is configured with an External server like S3, - # this can be ignored. - # If neither option is provided, then no static images (like Nautobot Logo) will be shown. - "slack_socket_static_host": "", - # - Cisco Webex ---------------------- - "webex_token": "", - "webex_signing_secret": "", - "webex_msg_char_limit": 7439, - # = Integrations ===================== - # - Cisco ACI ------------------------ - "aci_creds": "", - # - AWX / Ansible Tower -------------- - "tower_password": "", - "tower_uri": "", - "tower_username": "", - "tower_verify_ssl": True, - # - Arista CloudVision --------------- - "aristacv_cvaas_url": "www.arista.io:443", - "aristacv_cvaas_token": "", - "aristacv_cvp_host": "", - "aristacv_cvp_insecure": False, - "aristacv_cvp_password": "", - "aristacv_cvp_username": "", - "aristacv_on_prem": False, - # - Grafana -------------------------- - "grafana_url": "", - "grafana_api_key": "", - "grafana_default_width": 0, - "grafana_default_height": 0, - "grafana_default_theme": "dark", - "grafana_default_timespan": "", - "grafana_org_id": 1, - "grafana_default_tz": "", - # - IPFabric --------------------- - "ipfabric_api_token": "", - "ipfabric_host": "", - "ipfabric_timeout": "", - "ipfabric_verify": False, - # - Cisco Meraki --------------------- - "meraki_dashboard_api_key": "", - # - Palo Alto Panorama --------------- - "panorama_host": "", - "panorama_password": "", - "panorama_user": "", - } - constance_config = { - "fallback_chatops_user": ConstanceConfigItem(default="chatbot", help_text="Enable Mattermost Chat Platform."), - "enable_mattermost": ConstanceConfigItem( - default=False, help_text="Enable Mattermost Chat Platform.", field_type=bool - ), - "enable_ms_teams": ConstanceConfigItem( - default=False, help_text="Enable Microsoft Teams Chat Platform.", field_type=bool - ), - "enable_slack": ConstanceConfigItem(default=False, help_text="Enable Slack Chat Platform.", field_type=bool), - "enable_webex": ConstanceConfigItem(default=False, help_text="Enable Webex Chat Platform.", field_type=bool), - "enable_aci": ConstanceConfigItem(default=False, help_text="Enable Cisco ACI Integration.", field_type=bool), - "enable_ansible": ConstanceConfigItem(default=False, help_text="Enable Ansible Integration.", field_type=bool), - "enable_aristacv": ConstanceConfigItem( - default=False, help_text="Enable Arista CloudVision Integration.", field_type=bool - ), - "enable_grafana": ConstanceConfigItem(default=False, help_text="Enable Grafana Integration.", field_type=bool), - "enable_ipfabric": ConstanceConfigItem( - default=False, help_text="Enable IP Fabric Integration.", field_type=bool - ), - "enable_meraki": ConstanceConfigItem( - default=False, help_text="Enable Cisco Meraki Integration.", field_type=bool - ), - "enable_panorama": ConstanceConfigItem( - default=False, help_text="Enable Panorama Integration.", field_type=bool - ), - } - + min_version = "2.0.0" + max_version = "2.9999" + default_settings = {} caching_config = {} - def ready(self): - """Function invoked after all plugins have been loaded.""" - super().ready() - # pylint: disable=import-outside-toplevel - from nautobot_capacity_metrics import register_metric_func - from .metrics_app import metric_commands - - register_metric_func(metric_commands) - -config = NautobotChatOpsConfig # pylint:disable=invalid-name +config = NautobotChatOpsPluginConfig # pylint:disable=invalid-name diff --git a/nautobot_chatops/api/__init__.py b/nautobot_chatops/api/__init__.py index e69de29b..81763b58 100644 --- a/nautobot_chatops/api/__init__.py +++ b/nautobot_chatops/api/__init__.py @@ -0,0 +1 @@ +"""REST API module for nautobot_chatops plugin.""" diff --git a/nautobot_chatops/tests/__init__.py b/nautobot_chatops/tests/__init__.py index 90a42e97..102ef4fd 100644 --- a/nautobot_chatops/tests/__init__.py +++ b/nautobot_chatops/tests/__init__.py @@ -1 +1 @@ -"""Test for the nautobot_chatops plugin.""" +"""Unit tests for nautobot_chatops plugin.""" diff --git a/nautobot_chatops/tests/test_api.py b/nautobot_chatops/tests/test_api.py index eb319a70..4c3e56ad 100644 --- a/nautobot_chatops/tests/test_api.py +++ b/nautobot_chatops/tests/test_api.py @@ -1,84 +1,28 @@ -"""Test cases for Nautobot Chatops API.""" -try: - from importlib import metadata -except ImportError: - # Python version < 3.8 - import importlib_metadata as metadata - +"""Unit tests for nautobot_chatops.""" +from django.contrib.auth import get_user_model +from django.test import TestCase from django.urls import reverse +from rest_framework import status +from rest_framework.test import APIClient -from nautobot.core.testing import APITestCase, APIViewTestCases -from nautobot_chatops.models import AccessGrant, CommandToken - - -nautobot_version = metadata.version("nautobot") - - -class AppTest(APITestCase): # pylint: disable=too-many-ancestors - """Test cases for the Nautobot_chatops App.""" - - def test_root(self): - """Validate the root for Nautobot Chatops API.""" - url = reverse("plugins-api:nautobot_chatops-api:api-root") - response = self.client.get(f"{url}?format=api", **self.header) - - self.assertEqual(response.status_code, 200) - - -class CommandTokenTest(APIViewTestCases.APIViewTestCase): # pylint: disable=too-many-ancestors - """Tests for the CommandToken Endpoint.""" - - model = CommandToken - brief_fields = ["comment", "display", "id", "platform", "token", "url"] - # Nautobot 1.4.0 added created/last_updated to builtin serializers. - if nautobot_version >= "1.4.0": - brief_fields = ["comment", "created", "display", "id", "last_updated", "platform", "token", "url"] - create_data = [ - {"comment": "Test 4", "platform": "mattermost", "token": "token4"}, - {"comment": "Test 5", "platform": "mattermost", "token": "token5"}, - {"comment": "Test 6", "platform": "mattermost", "token": "token6"}, - ] - bulk_update_data = {"comment": "Testing"} - choices_fields = ["platform"] +from nautobot.users.models import Token - @classmethod - def setUpTestData(cls): - """Generate test data for the CommandToken Endpoint.""" - CommandToken.objects.create(comment="Test 1", platform="mattermost", token="token1") - CommandToken.objects.create(comment="Test 2", platform="mattermost", token="token2") - CommandToken.objects.create(comment="Test 3", platform="mattermost", token="token3") +User = get_user_model() -class AccessGrantTest(APIViewTestCases.APIViewTestCase): # pylint: disable=too-many-ancestors - """Tests for the AccessGrant Endpoint.""" +class PlaceholderAPITest(TestCase): + """Test the NautobotChatOpsPlugin API.""" - model = AccessGrant - brief_fields = ["command", "display", "grant_type", "id", "name", "subcommand", "url", "value"] - # Nautobot 1.4.0 added created/last_updated to builtin serializers. - if nautobot_version >= "1.4.0": - brief_fields = [ - "command", - "created", - "display", - "grant_type", - "id", - "last_updated", - "name", - "subcommand", - "url", - "value", - ] - create_data = [ - {"command": "*", "subcommand": "*", "grant_type": "organization", "name": "test4", "value": "*"}, - {"command": "*", "subcommand": "*", "grant_type": "channel", "name": "test5", "value": "*"}, - {"command": "*", "subcommand": "*", "grant_type": "user", "name": "test6", "value": "*"}, - ] - bulk_update_data = {"command": "nautobot"} - choices_fields = ["grant_type"] + def setUp(self): + """Create a superuser and token for API calls.""" + self.user = User.objects.create(username="testuser", is_superuser=True) + self.token = Token.objects.create(user=self.user) + self.client = APIClient() + self.client.credentials(HTTP_AUTHORIZATION=f"Token {self.token.key}") - @classmethod - def setUpTestData(cls): - """Generate test data for the AccessGrant Endpoint.""" - AccessGrant.objects.create(command="*", subcommand="*", grant_type="organization", name="test1", value="test1") - AccessGrant.objects.create(command="*", subcommand="*", grant_type="channel", name="test2", value="test2") - AccessGrant.objects.create(command="*", subcommand="*", grant_type="user", name="test3", value="test3") + def test_placeholder(self): + """Verify that devices can be listed.""" + url = reverse("dcim-api:device-list") + response = self.client.get(url) + self.assertEqual(response.status_code, status.HTTP_200_OK) + self.assertEqual(response.data["count"], 0) diff --git a/nautobot_chatops/tests/test_basic.py b/nautobot_chatops/tests/test_basic.py new file mode 100644 index 00000000..9a096567 --- /dev/null +++ b/nautobot_chatops/tests/test_basic.py @@ -0,0 +1,34 @@ +"""Basic tests that do not require Django.""" +import unittest +import os +import toml + +from nautobot_chatops import __version__ as project_version + + +class TestVersion(unittest.TestCase): + """Test Version is the same.""" + + def test_version(self): + """Verify that pyproject.toml version is same as version specified in the package.""" + parent_path = os.path.dirname(os.path.dirname(os.path.dirname(os.path.realpath(__file__)))) + poetry_version = toml.load(os.path.join(parent_path, "pyproject.toml"))["tool"]["poetry"]["version"] + self.assertEqual(project_version, poetry_version) + + +class TestDocsPackaging(unittest.TestCase): + """Test Version in doc requirements is the same pyproject.""" + + def test_version(self): + """Verify that pyproject.toml dev dependencies have the same versions as in the docs requirements.txt.""" + parent_path = os.path.dirname(os.path.dirname(os.path.dirname(os.path.realpath(__file__)))) + poetry_path = os.path.join(parent_path, "pyproject.toml") + poetry_details = toml.load(poetry_path)["tool"]["poetry"]["group"]["dev"]["dependencies"] + with open(f"{parent_path}/docs/requirements.txt", "r", encoding="utf-8") as file: + requirements = [line for line in file.read().splitlines() if (len(line) > 0 and not line.startswith("#"))] + for pkg in requirements: + if len(pkg.split("==")) == 2: + pkg, version = pkg.split("==") + else: + version = "*" + self.assertEqual(poetry_details[pkg], version) diff --git a/pyproject.toml b/pyproject.toml index 1cf5dde0..8e294a3e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,157 +1,63 @@ [tool.poetry] name = "nautobot-chatops" -version = "3.0.1" -description = "A plugin providing chatbot capabilities for Nautobot" +version = "0.1.0" +description = "Nautobot ChatOps App" authors = ["Network to Code, LLC "] +license = "Apache-2.0" readme = "README.md" -homepage = "https://github.com/nautobot/nautobot-plugin-chatops" -repository = "https://github.com/nautobot/nautobot-plugin-chatops" -documentation = "https://docs.nautobot.com/projects/chatops/en/stable/" +homepage = "https://github.com/nautobot/nautobot-plugin-chatops/" +repository = "https://github.com/nautobot/nautobot-plugin-chatops/" keywords = ["nautobot", "nautobot-plugin"] +classifiers = [ + "Intended Audience :: Developers", + "Development Status :: 5 - Production/Stable", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.8", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", +] include = [ "LICENSE", "README.md", - # Poetry by default will exclude files that are in .gitignore - "nautobot_chatops/static/nautobot_chatops/docs/**/*", ] - -[tool.poetry.plugins."nautobot.workers"] -"aci" = "nautobot_chatops.integrations.aci.worker:aci" -"ansible" = "nautobot_chatops.integrations.ansible.worker:ansible" -"clear" = "nautobot_chatops.workers.clear:clear" -"cloudvision" = "nautobot_chatops.integrations.aristacv.worker:cloudvision" -"grafana" = "nautobot_chatops.integrations.grafana.worker:grafana" -"ipfabric" = "nautobot_chatops.integrations.ipfabric.worker:ipfabric" -"meraki" = "nautobot_chatops.integrations.meraki.worker:cisco_meraki" -"nautobot" = "nautobot_chatops.workers.nautobot:nautobot" -"panorama" = "nautobot_chatops.integrations.panorama.worker:panorama" +packages = [ + { include = "nautobot_chatops" }, +] [tool.poetry.dependencies] -Markdown = "!=3.3.5" -PyJWT = "^2.1.0" -PyYAML = { version = "^6.0", optional = true } -aiodns = "^1.0" -aiohttp = "^3.7.3" -asgiref = "^3.4.1" -certifi = { version = ">=2021.5.30", optional = true } -cloudvision = { version = "^1.1", optional = true } -cvprac = { version = "^1.0.6", optional = true } -defusedxml = { version = "^0.7.1", optional = true } -diffsync = { version = "^1.3.0", optional = true } -ipaddr = { version = "^2.2.0", optional = true } -ipfabric = { version = "~6.0.9", optional = true } -ipfabric-diagrams = { version = "~6.0.2", optional = true } -isodate = { version = "^0.6.1", optional = true } -meraki = { version = "^1.7.2", optional = true } -nautobot = "^2.0.0" -nautobot-capacity-metrics = "^3.0.0" -netmiko = { version = "^4.0.0", optional = true } -netutils = { version = "^1.1.0", optional = true } -pan-os-python = { version = "^1.3.0", optional = true } -prettytable = { version = "^2.1.0", optional = true } -protobuf = { version = "^3.17", optional = true } -pydantic = { version = "^1.8.2", optional = true } python = ">=3.8,<3.12" -requests = ">=2.25.1" -schema-enforcer = { version = "^1.2.1", optional = true } -slack-sdk = "^3.4.2" -termcolor = { version = "1.1.0", optional = true } -texttable = "^1.6.2" -webexteamssdk = "^1.3" +# Used for local development +nautobot = "^2.0.0" -[tool.poetry.dev-dependencies] -black = "*" -yamllint = "*" +[tool.poetry.group.dev.dependencies] bandit = "*" -# Pinning older pylint due to https://github.com/pylint-dev/pylint/issues/7381 -pylint = "2.13.9" -pylint-django = "*" -pydocstyle = "*" -prybar = "*" +black = "*" +coverage = "*" +django-debug-toolbar = "*" +flake8 = "*" invoke = "*" -flake8 = "^3.9.2" -griffe = "0.30.1" +ipython = "*" +pydocstyle = "*" +pylint = "*" +pylint-django = "*" +pylint-nautobot = "*" +yamllint = "*" +toml = "*" +Markdown = "*" # Rendering docs to HTML -mkdocs = "1.3.1" -# Material for mkdocs theme -mkdocs-material = "8.4.2" +mkdocs = "1.5.2" +# Material for MkDocs theme +mkdocs-material = "9.1.15" +# Render custom markdown for version added/changed/remove notes +mkdocs-version-annotations = "1.0.0" # Automatic documentation from sources, for MkDocs mkdocstrings = "0.22.0" -mkdocstrings-python = "1.1.2" -# Render custom markdown for version added/changed/remove notes -mkdocs-version-annotations = "~1.0.0" -# Allow Markdown files to include other files -mkdocs-include-markdown-plugin = "~3.6.1" -python-dotenv = "^0.21.1" -# Change log management and generation -towncrier = "~22.8.0" -coverage = "~5.4" -requests-mock = "^1.9.3" - -[tool.poetry.extras] -all = [ - "PyYAML", - "certifi", - "cloudvision", - "cvprac", - "defusedxml", - "diffsync", - "ipaddr", - "ipfabric", - "ipfabric-diagrams", - "isodate", - "meraki", - "netmiko", - "netutils", - "pan-os-python", - "prettytable", - "protobuf", - "pydantic", - "schema-enforcer", - "termcolor", -] -aci = [ - "prettytable", -] -aristacv = [ - "certifi", - "cloudvision", - "cvprac", - "protobuf" -] -ansible = [ - "PyYAML", -] -grafana = [ - "diffsync", - "isodate", - "pydantic", - "schema-enforcer", - "termcolor", -] -ipfabric = [ - "ipfabric", - "ipfabric-diagrams", - "netutils", -] -meraki = [ - "meraki", -] -panorama = [ - "defusedxml", - "ipaddr", - "netmiko", - "netutils", - "pan-os-python", -] -nautobot = ["nautobot"] - -[tool.poetry.group.dev.dependencies] -pylint-nautobot = "^0.2.0" +mkdocstrings-python = "1.5.2" [tool.black] line-length = 120 -target-version = ['py36'] +target-version = ['py38', 'py39', 'py310', 'py311'] include = '\.pyi?$' exclude = ''' ( @@ -173,53 +79,45 @@ exclude = ''' ''' [tool.pylint.master] -# Including the pylint_django plugin -load-plugins=["pylint_nautobot", "pylint_django"] - -[tool.pylint.message_control] -disable=""", - django-not-configured, - too-few-public-methods, - too-many-lines, - too-many-ancestors, - nb-incorrect-base-class, +# Include the pylint_django plugin to avoid spurious warnings about Django patterns +load-plugins="pylint_django, pylint_nautobot" +ignore=".venv" + +[tool.pylint.basic] +# No docstrings required for private methods (Pylint default), or for test_ functions, or for inner Meta classes. +no-docstring-rgx="^(_|test_|Meta$)" + +[tool.pylint.messages_control] +# Line length is enforced by Black, so pylint doesn't need to check it. +# Pylint and Black disagree about how to format multi-line arrays; Black wins. +disable = """, + line-too-long """ [tool.pylint.miscellaneous] -notes=""", +# Don't flag TODO as a failure, let us commit with things that still need to be done in the code +notes = """, FIXME, XXX, """ -[tool.pylint.design] -max-args=6 -max-public-methods=22 - -[tool.pylint.similarities] -ignore-imports= true -min-similarity-lines=0 - -[tool.pylint.format] -max-line-length=120 - [tool.pylint-nautobot] -supported_nautobot_versions = ["2",] +supported_nautobot_versions = [ + "2.0.0" +] + +[tool.pydocstyle] +convention = "google" +inherit = false +match = "(?!__init__).*\\.py" +match-dir = "(?!tests|migrations|development)[^\\.].*" +# D212 is enabled by default in google convention, and complains if we have a docstring like: +# """ +# My docstring is on the line after the opening quotes instead of on the same line as them. +# """ +# We've discussed and concluded that we consider this to be a valid style choice. +add_ignore = "D212" [build-system] -requires = ["poetry-core>=1.0.0"] +requires = ["poetry_core>=1.0.0"] build-backend = "poetry.core.masonry.api" - -[tool.towncrier] -package = "nautobot_chatops" -directory = "changes" -filename = "docs/admin/release_notes/version_3.0.md" -template = "development/towncrier_template.j2" -start_string = "" -issue_format = "[#{issue}](https://github.com/nautobot/nautobot-plugin-chatops/issues/{issue})" - -[tool.towncrier.fragment.added] -[tool.towncrier.fragment.changed] -[tool.towncrier.fragment.deprecated] -[tool.towncrier.fragment.fixed] -[tool.towncrier.fragment.removed] -[tool.towncrier.fragment.security] diff --git a/tasks.py b/tasks.py index e8674a6a..2a786b44 100644 --- a/tasks.py +++ b/tasks.py @@ -1,6 +1,6 @@ """Tasks for use with Invoke. -(c) 2020-2021 Network To Code +Copyright (c) 2023, Network to Code, LLC Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at @@ -12,16 +12,10 @@ limitations under the License. """ -from distutils.util import strtobool -from invoke import Collection, task as invoke_task import os -from dotenv import load_dotenv - - -def _load_dotenv(): - load_dotenv("./development/development.env") - load_dotenv("./development/creds.env") +from invoke.collection import Collection +from invoke.tasks import task as invoke_task def is_truthy(arg): @@ -36,7 +30,14 @@ def is_truthy(arg): """ if isinstance(arg, bool): return arg - return bool(strtobool(arg)) + + val = str(arg).lower() + if val in ("y", "yes", "t", "true", "on", "1"): + return True + elif val in ("n", "no", "f", "false", "off", "0"): + return False + else: + raise ValueError(f"Invalid truthy value: `{arg}`") # Use pyinvoke configuration for default values, see http://docs.pyinvoke.org/en/stable/concepts/configuration.html @@ -47,15 +48,13 @@ def is_truthy(arg): "nautobot_chatops": { "nautobot_ver": "2.0.0", "project_name": "nautobot-chatops", - "python_ver": "3.10", + "python_ver": "3.11", "local": False, "compose_dir": os.path.join(os.path.dirname(__file__), "development"), "compose_files": [ "docker-compose.base.yml", "docker-compose.redis.yml", "docker-compose.postgres.yml", - "mattermost/docker-compose.yml", - "ansible/docker-compose.yml", "docker-compose.dev.yml", ], "compose_http_timeout": "86400", @@ -64,6 +63,10 @@ def is_truthy(arg): ) +def _is_compose_included(context, name): + return f"docker-compose.{name}.yml" in context.nautobot_chatops.compose_files + + def task(function=None, *args, **kwargs): """Task decorator to override the default Invoke task decorator and add each task to the invoke namespace.""" @@ -169,10 +172,17 @@ def generate_packages(context): run_command(context, command) -@task -def lock(context): +@task( + help={ + "check": ( + "If enabled, check for outdated dependencies in the poetry.lock file, " + "instead of generating a new one. (default: disabled)" + ) + } +) +def lock(context, check=False): """Generate poetry.lock inside the Nautobot container.""" - run_command(context, "poetry lock --no-update") + run_command(context, f"poetry {'check' if check else 'lock --no-update'}") # ------------------------------------------------------------------------------ @@ -360,160 +370,166 @@ def exec(context, service="nautobot", command="bash", file=""): @task( help={ + "db-name": "Database name (default: Nautobot database)", + "input-file": "SQL file to execute and quit (default: empty, start interactive CLI)", + "output-file": "Ouput file, overwrite if exists (default: empty, output to stdout)", "query": "SQL command to execute and quit (default: empty)", - "input": "SQL file to execute and quit (default: empty)", - "output": "Ouput file, overwrite if exists (default: empty)", } ) -def dbshell(context, query="", input="", output=""): +def dbshell(context, db_name="", input_file="", output_file="", query=""): """Start database CLI inside the running `db` container. Doesn't use `nautobot-server dbshell`, using started `db` service container only. """ - if input and query: - raise ValueError("Cannot specify both, `input` and `query` arguments") - if output and not (input or query): - raise ValueError("`output` argument requires `input` or `query` argument") + if input_file and query: + raise ValueError("Cannot specify both, `input_file` and `query` arguments") + if output_file and not (input_file or query): + raise ValueError("`output_file` argument requires `input_file` or `query` argument") - _load_dotenv() + env = {} + if query: + env["_SQL_QUERY"] = query - service = "db" - env_vars = {} - command = ["exec"] + command = [ + "exec", + "--env=_SQL_QUERY" if query else "", + "-- db sh -c '", + ] - if "docker-compose.mysql.yml" in context.nautobot_chatops.compose_files: - env_vars["MYSQL_PWD"] = os.getenv("MYSQL_PASSWORD") + if _is_compose_included(context, "mysql"): command += [ - "--env=MYSQL_PWD", - "--", - service, "mysql", - f"--user='{os.getenv('MYSQL_USER')}'", - f"--database='{os.getenv('MYSQL_DATABASE')}'", + "--user=$MYSQL_USER", + "--password=$MYSQL_PASSWORD", + f"--database={db_name or '$MYSQL_DATABASE'}", ] - if query: - command += [f"--execute='{query}'"] - elif "docker-compose.postgres.yml" in context.nautobot_chatops.compose_files: + elif _is_compose_included(context, "postgres"): command += [ - "--", - service, "psql", - f"--username='{os.getenv('POSTGRES_USER')}'", - f"--dbname='{os.getenv('POSTGRES_DB')}'", + "--username=$POSTGRES_USER", + f"--dbname={db_name or '$POSTGRES_DB'}", ] - if query: - command += [f"--command='{query}'"] else: raise ValueError("Unsupported database backend.") - if input: - command += [f"< '{input}'"] - if output: - command += [f"> '{output}'"] + command += [ + "'", + '<<<"$_SQL_QUERY"' if query else "", + f"< '{input_file}'" if input_file else "", + f"> '{output_file}'" if output_file else "", + ] - docker_compose(context, " ".join(command), env=env_vars, pty=not (input or output or query)) + docker_compose(context, " ".join(command), env=env, pty=not (input_file or output_file or query)) @task( help={ - "input": "SQL dump file to replace the existing database with. This can be generated using `invoke backup-db` (default: `dump.sql`).", + "input-file": "SQL dump file to replace the existing database with. This can be generated using `invoke backup-db` (default: `dump.sql`).", } ) -def import_db(context, input="dump.sql"): +def import_db(context, input_file="dump.sql"): """Stop Nautobot containers and replace the current database with the dump into the running `db` container.""" docker_compose(context, "stop -- nautobot worker") - _load_dotenv() + command = ["exec -- db sh -c '"] - service = "db" - env_vars = {} - command = ["exec"] - - if "docker-compose.mysql.yml" in context.nautobot_chatops.compose_files: - env_vars["MYSQL_PWD"] = os.getenv("MYSQL_PASSWORD") + if _is_compose_included(context, "mysql"): command += [ - "--env=MYSQL_PWD", - "--", - service, "mysql", - f"--user='{os.getenv('MYSQL_USER')}'", - f"--database='{os.getenv('MYSQL_DATABASE')}'", + "--database=$MYSQL_DATABASE", + "--user=$MYSQL_USER", + "--password=$MYSQL_PASSWORD", ] - elif "docker-compose.postgres.yml" in context.nautobot_chatops.compose_files: + elif _is_compose_included(context, "postgres"): command += [ - "--", - service, "psql", - f"--username='{os.getenv('POSTGRES_USER')}'", + "--username=$POSTGRES_USER", "postgres", ] else: raise ValueError("Unsupported database backend.") - command += [f"< '{input}'"] + command += [ + "'", + f"< '{input_file}'", + ] - docker_compose(context, " ".join(command), env=env_vars, pty=False) + docker_compose(context, " ".join(command), pty=False) print("Database import complete, you can start Nautobot now: `invoke start`") @task( help={ - "output": "Ouput file, overwrite if exists (default: `dump.sql`)", + "db-name": "Database name to backup (default: Nautobot database)", + "output-file": "Ouput file, overwrite if exists (default: `dump.sql`)", "readable": "Flag to dump database data in more readable format (default: `True`)", } ) -def backup_db(context, output="dump.sql", readable=True): - """Dump database into `output` file from running `db` container.""" - _load_dotenv() +def backup_db(context, db_name="", output_file="dump.sql", readable=True): + """Dump database into `output_file` file from running `db` container.""" + command = ["exec -- db sh -c '"] - service = "db" - env_vars = {} - command = ["exec"] - - if "docker-compose.mysql.yml" in context.nautobot_chatops.compose_files: - env_vars["MYSQL_PWD"] = os.getenv("MYSQL_ROOT_PASSWORD") + if _is_compose_included(context, "mysql"): command += [ - "--env=MYSQL_PWD", - "--", - service, "mysqldump", "--user=root", + "--password=$MYSQL_ROOT_PASSWORD", "--add-drop-database", "--skip-extended-insert" if readable else "", "--databases", - os.getenv("MYSQL_DATABASE", ""), + db_name if db_name else "$MYSQL_DATABASE", ] - elif "docker-compose.postgres.yml" in context.nautobot_chatops.compose_files: + elif _is_compose_included(context, "postgres"): command += [ - "--", - service, "pg_dump", "--clean", "--create", "--if-exists", - f"--username='{os.getenv('POSTGRES_USER')}'", - f"--dbname='{os.getenv('POSTGRES_DB')}'", + "--username=$POSTGRES_USER", + f"--dbname={db_name or '$POSTGRES_DB'}", + "--inserts" if readable else "", ] - - if readable: - command += ["--inserts"] else: raise ValueError("Unsupported database backend.") - if output: - command += [f"> '{output}'"] + command += [ + "'", + f"> '{output_file}'", + ] - docker_compose(context, " ".join(command), env=env_vars, pty=False) + docker_compose(context, " ".join(command), pty=False) print(50 * "=") - print("The database backup has been successfully completed and saved to the file:") - print(output) - print("If you want to import this database backup, please execute the following command:") - print(f"invoke import-db --input '{output}'") + print("The database backup has been successfully completed and saved to the following file:") + print(output_file) + print("You can import this database backup with the following command:") + print(f"invoke import-db --input-file '{output_file}'") print(50 * "=") +# ------------------------------------------------------------------------------ +# DOCS +# ------------------------------------------------------------------------------ +@task +def docs(context): + """Build and serve docs locally for development.""" + command = "mkdocs serve -v" + + if is_truthy(context.nautobot_chatops.local): + print(">>> Serving Documentation at http://localhost:8001") + run_command(context, command) + else: + start(context, service="docs") + + +@task +def build_and_check_docs(context): + """Build documentation to be available within Nautobot.""" + command = "mkdocs build --no-directory-urls --strict" + run_command(context, command) + + @task(name="help") def help_task(context): """Print the help of available tasks.""" @@ -571,7 +587,7 @@ def pylint(context): def pydocstyle(context): """Run pydocstyle to validate docstring formatting adheres to NTC defined standards.""" # We exclude the /migrations/ directory since it is autogenerated code - command = 'pydocstyle --config=.pydocstyle.ini --match-dir="^(?!migrations).*"' + command = "pydocstyle ." run_command(context, command) @@ -584,7 +600,7 @@ def bandit(context): @task def yamllint(context): - """Run yamllint to validate formating adheres to NTC defined YAML standards. + """Run yamllint to validate formatting adheres to NTC defined YAML standards. Args: context (obj): Used to run specific commands @@ -596,18 +612,11 @@ def yamllint(context): @task def check_migrations(context): """Check for missing migrations.""" - command = "nautobot-server --config=nautobot/core/tests/nautobot_config.py makemigrations --dry-run --check" + command = "nautobot-server makemigrations --dry-run --check" run_command(context, command) -@task() -def build_and_check_docs(context): - """Build docs for use within Nautobot.""" - command = "mkdocs build --no-directory-urls --strict" - run_command(context, command) - - @task( help={ "keepdb": "save and re-use test database between test runs for faster re-testing.", @@ -615,9 +624,18 @@ def build_and_check_docs(context): "failfast": "fail as soon as a single test fails don't run the entire test suite", "buffer": "Discard output from passing tests", "pattern": "Run specific test methods, classes, or modules instead of all tests", + "verbose": "Enable verbose test output.", } ) -def unittest(context, keepdb=False, label="nautobot_chatops", failfast=False, buffer=True, pattern=""): +def unittest( + context, + keepdb=False, + label="nautobot_chatops", + failfast=False, + buffer=True, + pattern="", + verbose=False, +): """Run Nautobot unit tests.""" command = f"coverage run --module nautobot.core.cli test {label}" @@ -629,6 +647,9 @@ def unittest(context, keepdb=False, label="nautobot_chatops", failfast=False, bu command += " --buffer" if pattern: command += f" -k='{pattern}'" + if verbose: + command += " --verbosity 2" + run_command(context, command) @@ -642,10 +663,12 @@ def unittest_coverage(context): @task( help={ - "failfast": "fail as soon as a single test fails don't run the entire test suite", + "failfast": "fail as soon as a single test fails don't run the entire test suite. (default: False)", + "keepdb": "Save and re-use test database between test runs for faster re-testing. (default: False)", + "lint-only": "Only run linters; unit tests will be excluded. (default: False)", } ) -def tests(context, failfast=False): +def tests(context, failfast=False, keepdb=False, lint_only=False): """Run all tests for this plugin.""" # If we are not running locally, start the docker containers so we don't have to for each test if not is_truthy(context.nautobot_chatops.local): @@ -662,98 +685,16 @@ def tests(context, failfast=False): pydocstyle(context) print("Running yamllint...") yamllint(context) + print("Running poetry check...") + lock(context, check=True) + print("Running migrations check...") + check_migrations(context) print("Running pylint...") pylint(context) - print("Building and checking docs...") + print("Running mkdocs...") build_and_check_docs(context) - print("Running unit tests...") - unittest(context, failfast=failfast) + if not lint_only: + print("Running unit tests...") + unittest(context, failfast=failfast, keepdb=keepdb) + unittest_coverage(context) print("All tests have passed!") - unittest_coverage(context) - - -# ------------------------------------------------------------------------------ -# APP CUSTOM -# ------------------------------------------------------------------------------ -@task -def bootstrap_mattermost(context): - """Bootstrap Nautobot data to be used with Mattermost.""" - nbshell(context, file="development/mattermost/nautobot_bootstrap.py") - - -@task -def backup_mattermost(context): - """Export Mattermost data to the SQL file. Certain tables are ignored.""" - output = "./development/mattermost/dump.sql" - - ignore_tables = [ - "Audits", - "ChannelMemberHistory", - "CommandWebhooks", - "Posts", - "PostsPriority", - "Sessions", - "UploadSessions", - ] - - base_command = [ - "exec", - "--env MYSQL_PWD=mostest", - "--", - "mattermost", - "mysqldump", - "--databases mattermost_test", - "--compact", - "-u root", - ] - - # Dump schema first - command = [ - *base_command, - "--add-drop-database", - "--no-data", - f"> {output}", - ] - docker_compose(context, " ".join(command)) - - # Dump data for all tables except ignored - command = [ - *base_command, - *(f"--ignore-table mattermost_test.{table}" for table in ignore_tables), - "--no-create-info", - "--skip-extended-insert", - f">> {output}", - ] - docker_compose(context, " ".join(command)) - - -@task -def connect_awx_container(context, container_name="tools_awx_1"): - """Connect nautobot and celery containers to awx container. - - Bridge network is defined in `development/ansible/docker-compose.yaml`. - - To run testing awx instance, follow [instructions] - (https://github.com/ansible/awx/tree/devel/tools/docker-compose#getting-started) - - Before running `make docker-compose` comment out `- 8080:8080` port mapping in file - `tools/docker-compose/ansible/roles/sources/templates/docker-compose.yml.j2` to avoid port conflict with nautobot. - - After setting up awx, cd back to chatops repo and run `invoke connect-awx-container`. - """ - bridge_network = f"{context.nautobot_chatops.project_name}_awx" - context.run(f"docker network connect --alias awx {bridge_network} {container_name}") - print(f"Container {container_name} connected to {bridge_network} network") - - -@task( - help={ - "version": "Version of Nautobot ChatOps to generate the release notes for.", - } -) -def generate_release_notes(context, version=""): - """Generate Release Notes using Towncrier.""" - command = "env DJANGO_SETTINGS_MODULE=nautobot.core.settings towncrier build" - if version: - command += f" --version {version}" - run_command(context, command) From a3b31d6d782856df72f01083a699203ebcd96edf Mon Sep 17 00:00:00 2001 From: Jan Snasel Date: Mon, 23 Oct 2023 12:14:45 +0000 Subject: [PATCH 18/93] chore: Manual fixes --- .bandit.yml | 5 +- .cookiecutter.json | 2 +- .flake8 | 2 + .github/CODEOWNERS | 4 +- .github/PULL_REQUEST_TEMPLATE.md | 31 -- .github/workflows/ci.yml | 10 +- .yamllint.yml | 1 + README.md | 148 +++++--- development/creds.example.env | 52 +++ development/development.env | 58 ++++ development/nautobot_config.py | 87 ++++- docs/admin/compatibility_matrix.md | 26 +- docs/admin/install.md | 81 ----- docs/admin/release_notes/version_1.0.md | 48 --- docs/admin/uninstall.md | 19 +- docs/admin/upgrade.md | 7 +- docs/dev/arch_decision.md | 7 - docs/dev/code_reference/index.md | 3 - docs/dev/contributing.md | 203 ++++++++++- docs/dev/dev_environment.md | 30 +- docs/dev/extending.md | 6 - docs/images/icon-nautobot-chatops.png | Bin 74601 -> 0 bytes docs/user/app_faq.md | 19 -- docs/user/app_getting_started.md | 58 +++- docs/user/app_overview.md | 29 +- docs/user/app_use_cases.md | 12 - docs/user/external_interactions.md | 17 - docs/user/faq.md | 18 + invoke.example.yml | 2 + invoke.mysql.yml | 2 + mkdocs.yml | 54 ++- nautobot_chatops/__init__.py | 151 ++++++++- nautobot_chatops/tests/test_api.py | 94 +++-- poetry.lock | 433 +++++++++++++++++++++--- pyproject.toml | 137 +++++++- tasks.py | 89 +++++ 36 files changed, 1514 insertions(+), 431 deletions(-) delete mode 100644 .github/PULL_REQUEST_TEMPLATE.md delete mode 100644 docs/admin/install.md delete mode 100644 docs/admin/release_notes/version_1.0.md delete mode 100644 docs/dev/arch_decision.md delete mode 100644 docs/dev/extending.md delete mode 100644 docs/images/icon-nautobot-chatops.png delete mode 100644 docs/user/app_faq.md delete mode 100644 docs/user/app_use_cases.md delete mode 100644 docs/user/external_interactions.md diff --git a/.bandit.yml b/.bandit.yml index 56f7a83b..d42f9460 100644 --- a/.bandit.yml +++ b/.bandit.yml @@ -1,6 +1,7 @@ --- -skips: [] +skips: + - "B404" # Ignore subprocess # No need to check for security issues in the test scripts! exclude_dirs: - - "./tests/" + - "./nautobot_chatops/tests/" - "./.venv/" diff --git a/.cookiecutter.json b/.cookiecutter.json index c67312da..0235408c 100644 --- a/.cookiecutter.json +++ b/.cookiecutter.json @@ -1,6 +1,6 @@ { "cookiecutter": { - "codeowner_github_usernames": "@nautobot/plugin-chatops", + "codeowner_github_usernames": "@glennmatthews @jvanderaa @smk4664 @whitej6", "full_name": "Network to Code, LLC", "email": "opensource@networktocode.com", "github_org": "nautobot", diff --git a/.flake8 b/.flake8 index c9f5e84d..696795e1 100644 --- a/.flake8 +++ b/.flake8 @@ -1,5 +1,7 @@ [flake8] ignore = + F401, # Module imported but unused + F811, # Redefinition of unused name from line N E501, # Line length is enforced by Black, so flake8 doesn't need to check it W503 # Black disagrees with this rule, as does PEP 8; Black wins exclude = diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 6592e35a..5f4290b0 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1,2 +1,2 @@ -# Default owner(s) of all files in this repository -* @nautobot/plugin-chatops +# Default owners for all files in this repository +* @glennmatthews @jvanderaa @smk4664 @whitej6 diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md deleted file mode 100644 index ca166fb8..00000000 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ /dev/null @@ -1,31 +0,0 @@ - -# Closes: # - -## What's Changed - - -## TODO - -- [ ] Explanation of Change(s) -- [ ] Added change log fragment(s) (for more information see [the documentation](https://docs.nautobot.com/projects/chatops/en/latest/dev/contributing/#creating-changelog-fragments)) -- [ ] Attached Screenshots, Payload Example -- [ ] Unit, Integration Tests -- [ ] Documentation Updates (when adding/changing features) -- [ ] Outline Remaining Work, Constraints from Design diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 03e02e6d..eeb536ab 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -237,12 +237,16 @@ jobs: run: "echo RELEASE_VERSION=${GITHUB_REF:10} >> $GITHUB_ENV" - name: "Run Poetry Version" run: "poetry version $RELEASE_VERSION" + - name: "Install Dependencies (needed for mkdocs)" + run: "poetry install --no-root" + - name: "Build Documentation" + run: "poetry run mkdocs build --no-directory-urls --strict" - name: "Run Poetry Build" run: "poetry build" - name: "Upload binaries to release" uses: "svenstaro/upload-release-action@v2" with: - repo_token: "${{ secrets.NTC_GITHUB_TOKEN }}" # use GH_NAUTOBOT_BOT_TOKEN for Nautobot Org repos. + repo_token: "${{ secrets.GH_NAUTOBOT_BOT_TOKEN }}" file: "dist/*" tag: "${{ github.ref }}" overwrite: true @@ -266,6 +270,10 @@ jobs: run: "echo RELEASE_VERSION=${GITHUB_REF:10} >> $GITHUB_ENV" - name: "Run Poetry Version" run: "poetry version $RELEASE_VERSION" + - name: "Install Dependencies (needed for mkdocs)" + run: "poetry install --no-root" + - name: "Build Documentation" + run: "poetry run mkdocs build --no-directory-urls --strict" - name: "Run Poetry Build" run: "poetry build" - name: "Push to PyPI" diff --git a/.yamllint.yml b/.yamllint.yml index 8cc3e9a9..3bcf4764 100644 --- a/.yamllint.yml +++ b/.yamllint.yml @@ -11,3 +11,4 @@ rules: ignore: | .venv/ compose.yaml + setup_files/ diff --git a/README.md b/README.md index d25078f1..36c0a150 100644 --- a/README.md +++ b/README.md @@ -1,66 +1,128 @@ -# Nautobot ChatOps App - - +# Nautobot ChatOps

- +
-
+
- An App for Nautobot. + A multi-platform ChatOps bot App for Nautobot.

-## 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. - -### 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-plugin-chatops/develop/docs/images/plugin-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. +- Support for multiple chat platforms: + - Mattermost + - Microsoft Teams + - Slack + - Cisco Webex +- Support for multiple integrations: + - Cisco ACI + - AWX / Ansible Tower + - Arista CloudVision + - Grafana + - IPFabric + - Cisco Meraki + - Palo Alto Panorama +- Write a command once and run it on every supported platform, including rich content formatting. +- Extensible - other Nautobot plugins can provide additional commands which will be dynamically discovered. +- Automatic generation of basic help menus (accessed via `help`, `/command help`, or `/command sub-command help`). +- Metrics of command usage via the `nautobot_capacity_metrics` plugin. -More screenshots can be found in the [Using the App](https://docs.nautobot.com/projects/chatops/en/latest/user/app_use_cases/) page in the documentation. Here's a quick overview of some of the plugin's added functionality: - -![](https://raw.githubusercontent.com/nautobot/nautobot-plugin-chatops/develop/docs/images/placeholder.png) - -## Try it out! +## Documentation -> Developer Note: Only keep this section if appropriate. Update link to correct sandbox. +Full web-based HTML documentation for this app can be found over on the [Nautobot Docs](https://docs.nautobot.com/projects/chatops/en/latest/) website: -This App is installed in the Nautobot Community Sandbox found over at [demo.nautobot.com](https://demo.nautobot.com/)! +- [User Guide](https://docs.nautobot.com/projects/chatops/en/latest/user/app_overview/) - Overview, Using the App, Getting Started +- [Administrator Guide](https://docs.nautobot.com/projects/chatops/en/latest/admin/install/) - How to Install, Configure, Upgrade, or Uninstall the App. +- [Developer Guide](https://docs.nautobot.com/projects/chatops/en/latest/dev/contributing/) - Extending the App, Code Reference, Contribution Guide. +- [Release Notes / Changelog](https://docs.nautobot.com/projects/chatops/en/latest/admin/release_notes/) +- [Frequently Asked Questions](https://docs.nautobot.com/projects/chatops/en/latest/user/app_faq/) +- [Glossary](https://docs.nautobot.com/projects/chatops/en/latest/glossary/) -> 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/). +## Try it Out -## Documentation +Interested to see Nautobot ChatOps in action? It's currently setup on the [Demo Instance](https://demo.nautobot.com/) and integrated into [NTC Slack](https://slack.networktocode.com). You can sign up for that Slack workspace and join the `#nautobot-chat` channel to understand what this bot can do and try it for yourself. You can try these exact chat commands and many more: -Full documentation for this App can be found over on the [Nautobot Docs](https://docs.nautobot.com) website: +### Command: `/nautobot` -- [User Guide](https://docs.nautobot.com/projects/chatops/en/latest/user/app_overview/) - Overview, Using the App, Getting Started. -- [Administrator Guide](https://docs.nautobot.com/projects/chatops/en/latest/admin/install/) - How to Install, Configure, Upgrade, or Uninstall the App. -- [Developer Guide](https://docs.nautobot.com/projects/chatops/en/latest/dev/contributing/) - Extending the App, Code Reference, Contribution Guide. -- [Release Notes / Changelog](https://docs.nautobot.com/projects/chatops/en/latest/admin/release_notes/). -- [Frequently Asked Questions](https://docs.nautobot.com/projects/chatops/en/latest/user/faq/). +![image](https://user-images.githubusercontent.com/6332586/118281576-5db4e980-b49b-11eb-8574-1332ed4b9757.png) -### Contributing to the Documentation +### Command: `/nautobot get-devices` -You can find all the Markdown source for the App documentation under the [`docs`](https://github.com/nautobot/nautobot-plugin-chatops//tree/develop/docs) folder in this repository. For simple edits, a Markdown capable editor is sufficient: clone the repository and edit away. +![image](https://user-images.githubusercontent.com/6332586/118281772-95239600-b49b-11eb-9c79-e2040dc4a982.png) -If you need to view the fully-generated documentation site, you can build it with [MkDocs](https://www.mkdocs.org/). A container hosting the documentation can be started using the `invoke` commands (details in the [Development Environment Guide](https://docs.nautobot.com/projects/chatops/en/latest/dev/dev_environment/#docker-development-environment)) on [http://localhost:8001](http://localhost:8001). Using this container, as your changes to the documentation are saved, they will be automatically rebuilt and any pages currently being viewed will be reloaded in your browser. +### Command: `/nautobot get-interface-connections` -Any PRs with fixes or improvements are very welcome! +![image](https://user-images.githubusercontent.com/6332586/118281976-ca2fe880-b49b-11eb-87ad-2a41eaa168ed.png) ## Questions -For any questions or comments, please check the [FAQ](https://docs.nautobot.com/projects/chatops/en/latest/user/faq/) first. Feel free to also swing by the [Network to Code Slack](https://networktocode.slack.com/) (channel `#nautobot`), sign up [here](http://slack.networktocode.com/) if you don't have an account. +For any questions or comments, please check the [FAQ](https://docs.nautobot.com/projects/chatops/en/latest/user/app_faq/) first and feel free to swing by the [Network to Code slack channel](https://networktocode.slack.com/) (channel #nautobot). +Sign up [here](https://slack.networktocode.com/) + +## Acknowledgements + +This project includes code originally written in separate plugins, which have been merged into this project: + +- [nautobot-plugin-chatops-aci](https://github.com/nautobot/nautobot-plugin-chatops-aci): + Thanks + [@mamullen13316](https://github.com/mamullen13316), + [@smk4664](https://github.com/smk4664), + [@ubajze](https://github.com/ubajze), + [@whitej6](https://github.com/whitej6), +- [nautobot-plugin-chatops-ansible](https://github.com/nautobot/nautobot-plugin-chatops-ansible): + Thanks + [@chipn](https://github.com/chipn), + [@dgjustice](https://github.com/dgjustice), + [@jeffkala](https://github.com/jeffkala), + [@jvanderaa](https://github.com/jvanderaa), + [@matt852](https://github.com/matt852), + [@smk4664](https://github.com/smk4664), + [@ubajze](https://github.com/ubajze), + [@whitej6](https://github.com/whitej6), +- [nautobot-plugin-chatops-arista-cloudvision](https://github.com/nautobot/nautobot-plugin-chatops-arista-cloudvision): + Thanks + [@qduk](https://github.com/qduk), + [@ubajze](https://github.com/ubajze), + [@whitej6](https://github.com/whitej6), +- [nautobot-plugin-chatops-grafana](https://github.com/nautobot/nautobot-plugin-chatops-grafana): + Thanks + [@jedelman8](https://github.com/jedelman8), + [@josh-silvas](https://github.com/josh-silvas), + [@nniehoff](https://github.com/nniehoff), + [@tim-fiola](https://github.com/tim-fiola), + [@ubajze](https://github.com/ubajze), + [@whitej6](https://github.com/whitej6), +- [nautobot-plugin-chatops-ipfabric](https://github.com/nautobot/nautobot-plugin-chatops-ipfabric): + Thanks + [@alhogan](https://github.com/alhogan), + [@chadell](https://github.com/chadell), + [@chipn](https://github.com/chipn), + [@justinjeffery-ipf](https://github.com/justinjeffery-ipf), + [@nniehoff](https://github.com/nniehoff), + [@pke11y](https://github.com/pke11y), + [@scetron](https://github.com/scetron), + [@smk4664](https://github.com/smk4664), + [@ubajze](https://github.com/ubajze), + [@whitej6](https://github.com/whitej6), +- [nautobot-plugin-chatops-meraki](https://github.com/nautobot/nautobot-plugin-chatops-meraki): + Thanks + [@jedelman8](https://github.com/jedelman8), + [@jeffkala](https://github.com/jeffkala), + [@qduk](https://github.com/qduk), + [@tim-fiola](https://github.com/tim-fiola), + [@ubajze](https://github.com/ubajze), + [@whitej6](https://github.com/whitej6), +- [nautobot-plugin-chatops-panorama](https://github.com/nautobot/nautobot-plugin-chatops-panorama): + Thanks + [@FragmentedPacket](https://github.com/FragmentedPacket), + [@PhillSimonds](https://github.com/PhillSimonds), + [@armartirosyan](https://github.com/armartirosyan), + [@itdependsnetworks](https://github.com/itdependsnetworks), + [@jamesholland-uk](https://github.com/jamesholland-uk), + [@jdrew82](https://github.com/jdrew82), + [@matt852](https://github.com/matt852), + [@qduk](https://github.com/qduk), + [@ubajze](https://github.com/ubajze), + [@whitej6](https://github.com/whitej6), diff --git a/development/creds.example.env b/development/creds.example.env index 26e24fad..34f27de1 100644 --- a/development/creds.example.env +++ b/development/creds.example.env @@ -25,3 +25,55 @@ MYSQL_PASSWORD=${NAUTOBOT_DB_PASSWORD} # NAUTOBOT_DB_HOST=localhost # NAUTOBOT_REDIS_HOST=localhost # NAUTOBOT_CONFIG=development/nautobot_config.py + +# = Chat Platforms =================== + +# - Mattermost ----------------------- +MATTERMOST_API_TOKEN="5qsffxoapt883qfdygbdgf17jy" + +# - Microsoft Teams ------------------ +# MICROSOFT_APP_ID="changeme" +# MICROSOFT_APP_PASSWORD="changeme" + +# - Slack ---------------------------- +# SLACK_API_TOKEN="xoxb-changeme" +# SLACK_APP_TOKEN="changeme" +# SLACK_SIGNING_SECRET="changeme" + +# - Cisco Webex ---------------------- +# WEBEX_ACCESS_TOKEN="changeme" +# WEBEX_SIGNING_SECRET="changeme" + +# = ChatOps Integrations ============= + +# - Cisco ACI ------------------------ +# First APIC +# APIC_USERNAME_NTCAPIC=admin +# APIC_PASSWORD_NTCAPIC="changeme" +# APIC_URI_NTCAPIC=https://aci.demo.networktocode.com +# APIC_VERIFY_NTCAPIC=false +# Second APIC +# APIC_USERNAME_LAB=admin +# APIC_PASSWORD_LAB="changeme" +# APIC_URI_LAB=https://10.100.1.10 +# APIC_VERIFY_LAB=false +# Repeat for as many as you need... + +# - AWX / Ansible Tower -------------- +NAUTOBOT_TOWER_PASSWORD="admin" + +# - Arista CloudVision --------------- +# ARISTACV_CVAAS_TOKEN="changeme" +# ARISTACV_CVP_PASSWORD="changeme" + +# - Grafana -------------------------- +# GRAFANA_API_KEY="changeme" + +# - IPFabric --------------------- +# IPFABRIC_API_TOKEN="changeme" + +# - Cisco Meraki --------------------- +# MERAKI_API_KEY="changeme" + +# - Palo Alto Panorama --------------- +# PANORAMA_PASSWORD="changeme" diff --git a/development/development.env b/development/development.env index 54f0b870..9d9b4636 100644 --- a/development/development.env +++ b/development/development.env @@ -36,3 +36,61 @@ POSTGRES_DB=${NAUTOBOT_DB_NAME} MYSQL_USER=${NAUTOBOT_DB_USER} MYSQL_DATABASE=${NAUTOBOT_DB_NAME} MYSQL_ROOT_HOST=% + +# = ChatOps Common Settings ========== +NAUTOBOT_CHATOPS_RESTRICT_HELP="False" +NAUTOBOT_CHATOPS_FALLBACK_CHATOPS_USER="chatbot" + +# = Chat Platforms =================== + +# - Mattermost ----------------------- +NAUTOBOT_CHATOPS_ENABLE_MATTERMOST="True" +MATTERMOST_URL="http://mattermost:8065" + +# - Microsoft Teams ------------------ +NAUTOBOT_CHATOPS_ENABLE_MS_TEAMS="False" + +# - Slack ---------------------------- +NAUTOBOT_CHATOPS_ENABLE_SLACK="False" +# SLACK_SLASH_COMMAND_PREFIX="/" + +# - Cisco Webex ---------------------- +NAUTOBOT_CHATOPS_ENABLE_WEBEX="False" +# WEBEX_MSG_CHAR_LIMIT=7439 + +# = ChatOps Integrations ============= + +# - Cisco ACI ------------------------ +NAUTOBOT_CHATOPS_ENABLE_ACI="False" + +# - AWX / Ansible Tower -------------- +NAUTOBOT_CHATOPS_ENABLE_ANSIBLE="False" +NAUTOBOT_TOWER_URI="https://awx:8043/" +NAUTOBOT_TOWER_USERNAME="awx" +NAUTOBOT_TOWER_VERIFY_SSL="False" + +# - Arista CloudVision --------------- +NAUTOBOT_CHATOPS_ENABLE_ARISTACV="False" +# ARISTACV_CVAAS_URL="https://cloudvision.arista.com" +# ARISTACV_CVP_HOST="cloudvision.arista" +ARISTACV_CVP_INSECURE="False" +# ARISTACV_CVP_USERNAME="arista" +ARISTACV_ON_PREM="False" + +# - Grafana -------------------------- +NAUTOBOT_CHATOPS_ENABLE_GRAFANA="False" +# GRAFANA_URL="http://grafana:3000" + +# - IPFabric --------------------- +NAUTOBOT_CHATOPS_ENABLE_IPFABRIC="False" +# IPFABRIC_HOST="https://ipfabric.example.com" +# IPFABRIC_TIMEOUT=15 +IPFABRIC_VERIFY="True" + +# - Cisco Meraki --------------------- +NAUTOBOT_CHATOPS_ENABLE_MERAKI="False" + +# - Palo Alto Panorama --------------- +NAUTOBOT_CHATOPS_ENABLE_PANORAMA="False" +PANORAMA_HOST="https://panorama.example.com" +PANORAMA_USER="admin" diff --git a/development/nautobot_config.py b/development/nautobot_config.py index ba1b52ee..8a613ccf 100644 --- a/development/nautobot_config.py +++ b/development/nautobot_config.py @@ -129,13 +129,86 @@ # # Enable installed Apps. Add the name of each App to the list. -PLUGINS = ["nautobot_chatops"] +PLUGINS = [ + "nautobot_capacity_metrics", + "nautobot_chatops", +] # Apps configuration settings. These settings are used by various Apps that the user may have installed. # Each key in the dictionary is the name of an installed App and its value is a dictionary of settings. -# PLUGINS_CONFIG = { -# 'nautobot_chatops': { -# 'foo': 'bar', -# 'buzz': 'bazz' -# } -# } +PLUGINS_CONFIG = { + "nautobot_chatops": { + # = Common Settings ================== + "restrict_help": is_truthy(os.getenv("NAUTOBOT_CHATOPS_RESTRICT_HELP")), + "fallback_chatops_user": os.environ.get("NAUTOBOT_CHATOPS_FALLBACK_CHATOPS_USER"), + # TODO: Add following settings + # | `delete_input_on_submission` | Removes the input prompt from the chat history after user input | No | `False` | + # | `send_all_messages_private` | Ensures only the person interacting with the bot sees the responses | No | `False` | + # | `session_cache_timeout` | Controls session cache | No | `86400` | + # = Chat Platforms =================== + # - Mattermost ----------------------- + "enable_mattermost": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_MATTERMOST")), + "mattermost_api_token": os.environ.get("MATTERMOST_API_TOKEN"), + "mattermost_url": os.environ.get("MATTERMOST_URL"), + # - Microsoft Teams ------------------ + "enable_ms_teams": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_MS_TEAMS")), + "microsoft_app_id": os.environ.get("MICROSOFT_APP_ID"), + "microsoft_app_password": os.environ.get("MICROSOFT_APP_PASSWORD"), + # - Slack ---------------------------- + "enable_slack": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_SLACK")), + "slack_api_token": os.environ.get("SLACK_API_TOKEN"), + "slack_app_token": os.environ.get("SLACK_APP_TOKEN"), + "slack_signing_secret": os.environ.get("SLACK_SIGNING_SECRET"), + "slack_slash_command_prefix": os.environ.get("SLACK_SLASH_COMMAND_PREFIX", "/"), + # - Cisco Webex ---------------------- + "enable_webex": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_WEBEX")), + "webex_msg_char_limit": int(os.getenv("WEBEX_MSG_CHAR_LIMIT", "7439")), + "webex_signing_secret": os.environ.get("WEBEX_SIGNING_SECRET"), + "webex_token": os.environ.get("WEBEX_ACCESS_TOKEN"), + # = Integrations ===================== + # - Cisco ACI ------------------------ + "enable_aci": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_ACI")), + "aci_creds": {x: os.environ[x] for x in os.environ if "APIC" in x}, + # - AWX / Ansible Tower -------------- + "enable_ansible": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_ANSIBLE")), + "tower_password": os.getenv("NAUTOBOT_TOWER_PASSWORD"), + "tower_uri": os.getenv("NAUTOBOT_TOWER_URI"), + "tower_username": os.getenv("NAUTOBOT_TOWER_USERNAME"), + "tower_verify_ssl": is_truthy(os.getenv("NAUTOBOT_TOWER_VERIFY_SSL", True)), + # - Arista CloudVision --------------- + "enable_aristacv": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_ARISTACV")), + "aristacv_cvaas_url": os.environ.get("ARISTACV_CVAAS_URL"), + "aristacv_cvaas_token": os.environ.get("ARISTACV_CVAAS_TOKEN"), + "aristacv_cvp_host": os.environ.get("ARISTACV_CVP_HOST"), + "aristacv_cvp_insecure": is_truthy(os.environ.get("ARISTACV_CVP_INSECURE")), + "aristacv_cvp_password": os.environ.get("ARISTACV_CVP_PASSWORD"), + "aristacv_cvp_username": os.environ.get("ARISTACV_CVP_USERNAME"), + "aristacv_on_prem": is_truthy(os.environ.get("ARISTACV_ON_PREM")), + # - Grafana -------------------------- + "enable_grafana": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_GRAFANA")), + "grafana_url": os.environ.get("GRAFANA_URL", ""), + "grafana_api_key": os.environ.get("GRAFANA_API_KEY", ""), + "grafana_default_width": 0, + "grafana_default_height": 0, + "grafana_default_theme": "dark", + "grafana_default_timespan": "0", + "grafana_org_id": 1, + "grafana_default_tz": "America/Denver", + # - IPFabric -------------------------- + "enable_ipfabric": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_IPFABRIC")), + "ipfabric_api_token": os.environ.get("IPFABRIC_API_TOKEN"), + "ipfabric_host": os.environ.get("IPFABRIC_HOST"), + "ipfabric_timeout": os.environ.get("IPFABRIC_TIMEOUT", 15), + "ipfabric_verify": is_truthy(os.environ.get("IPFABRIC_VERIFY", True)), + # - Cisco Meraki --------------------- + "enable_meraki": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_MERAKI")), + "meraki_dashboard_api_key": os.environ.get("MERAKI_API_KEY"), + # - Palo Alto Panorama --------------- + "enable_panorama": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_PANORAMA")), + "panorama_host": os.environ.get("PANORAMA_HOST"), + "panorama_password": os.environ.get("PANORAMA_PASSWORD"), + "panorama_user": os.environ.get("PANORAMA_USER"), + }, +} + +METRICS_ENABLED = is_truthy(os.getenv("NAUTOBOT_METRICS_ENABLED")) diff --git a/docs/admin/compatibility_matrix.md b/docs/admin/compatibility_matrix.md index 2be4c56d..bdea453b 100644 --- a/docs/admin/compatibility_matrix.md +++ b/docs/admin/compatibility_matrix.md @@ -1,8 +1,24 @@ # Compatibility Matrix -!!! warning "Developer Note - Remove Me!" - Explain how the release models of the plugin and of Nautobot work together, how releases are supported, how features and older releases are deprecated etc. +Changes to the support of upstream Nautobot releases will be announced 1 minor or major version ahead. -| Nautobot ChatOps App Version | Nautobot First Support Version | Nautobot Last Support Version | -| ------------- | -------------------- | ------------- | -| 1.0.X | 2.0.0 | 1.99.99 | +The **deprecation policy** will be announced within the [release notes](release_notes/index.md), and updated in the table below. There will be a `stable-.` branch that will be minimally maintained. Any security enhancements or major bugs in that branch will be supported for a limited time. + +While that last supported version will not be strictly enforced via the `max_version` setting, any issues with an updated Nautobot supported version in a minor release will require raising a bug and fixing it in Nautobot core, with no fixes expected in this plugin. This allows the Chatops plugin the ability to quickly take advantage of the latest features in Nautobot. + +| Chatops Version | Nautobot First Support Version | Nautobot Last Support Version | +| --------------- | ------------------------------ | ----------------------------- | +| 1.0.X | 1.0.0 | 1.2.99 [Official] | +| 1.1.X | 1.0.0 | 1.2.99 [Official] | +| 1.2.X | 1.0.0 | 1.2.99 [Official] | +| 1.3.X | 1.0.0 | 1.2.99 [Official] | +| 1.4.X | 1.0.0 | 1.2.99 [Official] | +| 1.5.X | 1.0.0 | 1.2.99 [Official] | +| 1.6.X | 1.0.0 | 1.2.99 [Official] | +| 1.7.X | 1.0.0 | 1.2.99 [Official] | +| 1.8.X | 1.1.0 | 1.4.99 [Official] | +| 1.9.X | 1.2.0 | 1.5.99 [Official] | +| 1.10.X | 1.3.0 | 1.5.99 [Official] | +| 2.0.X | 1.5.4 | 1.6.99 [Official] | +| 2.1.X | 1.6.2 | 1.6.99 [Official] | +| 3.0.X | 2.0.0 | 2.2.99 [Official] | diff --git a/docs/admin/install.md b/docs/admin/install.md deleted file mode 100644 index c3463adf..00000000 --- a/docs/admin/install.md +++ /dev/null @@ -1,81 +0,0 @@ -# Installing the App in Nautobot - -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 plugin is compatible with Nautobot 2.0.0 and higher. -- Databases supported: PostgreSQL, MySQL - -!!! note - Please check the [dedicated page](compatibility_matrix.md) for a full compatibility matrix and the deprecation policy. - -### Access Requirements - -!!! warning "Developer Note - Remove Me!" - What external systems (if any) it needs access to in order to work. - -## Install Guide - -!!! note - Plugins can be installed manually or using Python's `pip`. See the [nautobot documentation](https://nautobot.readthedocs.io/en/latest/plugins/#install-the-package) for more details. The pip package name for this plugin is [`nautobot-chatops`](https://pypi.org/project/nautobot-chatops/). - -The plugin is available as a Python package via PyPI and can be installed with `pip`: - -```shell -pip install nautobot-chatops -``` - -To ensure Nautobot ChatOps App is automatically re-installed during future upgrades, create a file named `local_requirements.txt` (if not already existing) in the Nautobot root directory (alongside `requirements.txt`) and list the `nautobot-chatops` package: - -```shell -echo nautobot-chatops >> local_requirements.txt -``` - -Once installed, the plugin needs to be enabled in your Nautobot configuration. The following block of code below shows the additional configuration required to be added to your `nautobot_config.py` file: - -- Append `"nautobot_chatops"` to the `PLUGINS` list. -- Append the `"nautobot_chatops"` dictionary to the `PLUGINS_CONFIG` dictionary and override any defaults. - -```python -# In your nautobot_config.py -PLUGINS = ["nautobot_chatops"] - -# PLUGINS_CONFIG = { -# "nautobot_chatops": { -# ADD YOUR SETTINGS HERE -# } -# } -``` - -Once the Nautobot configuration is updated, run the Post Upgrade command (`nautobot-server post_upgrade`) to run migrations and clear any cache: - -```shell -nautobot-server post_upgrade -``` - -Then restart (if necessary) the Nautobot services which may include: - -- Nautobot -- Nautobot Workers -- Nautobot Scheduler - -```shell -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 plugin behavior can be controlled with the following list of settings: - -| Key | Example | Default | Description | -| ------- | ------ | -------- | ------------------------------------- | -| `enable_backup` | `True` | `True` | A boolean to represent whether or not to run backup configurations within the plugin. | -| `platform_slug_map` | `{"cisco_wlc": "cisco_aireos"}` | `None` | A dictionary in which the key is the platform slug and the value is what netutils uses in any "network_os" parameter. | -| `per_feature_bar_width` | `0.15` | `0.15` | The width of the table bar within the overview report | diff --git a/docs/admin/release_notes/version_1.0.md b/docs/admin/release_notes/version_1.0.md deleted file mode 100644 index 5bdc1a9e..00000000 --- a/docs/admin/release_notes/version_1.0.md +++ /dev/null @@ -1,48 +0,0 @@ -# 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 - -- Major features or milestones -- Achieved in this `x.y` release -- Changes to compatibility with Nautobot and/or other plugins, libraries etc. - -## [v1.0.1] - 2021-09-08 - -### Added - -### Changed - -### Fixed - -- [#123](https://github.com/nautobot/nautobot-plugin-chatops//issues/123) Fixed Tag filtering not working in job launch form - -## [v1.0.0] - 2021-08-03 - -### Added - -### Changed - -### Fixed diff --git a/docs/admin/uninstall.md b/docs/admin/uninstall.md index 7ba42875..c97c2677 100644 --- a/docs/admin/uninstall.md +++ b/docs/admin/uninstall.md @@ -10,9 +10,22 @@ Prior to removing the plugin from the `nautobot_config.py`, run the following co nautobot-server migrate nautobot_plugin_chatops 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`. + +## Post Upgrade + +Run Nautobot-server post_upgrade: + +```bash +nautobot-server post_ugprade +``` + +## Restart Services + +Restart Nautobot Services: + +``` +invoke restart +``` diff --git a/docs/admin/upgrade.md b/docs/admin/upgrade.md index 858c34d8..277ec674 100644 --- a/docs/admin/upgrade.md +++ b/docs/admin/upgrade.md @@ -4,7 +4,8 @@ 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 plugin. Execute the command `nautobot-server post_upgrade` within the runtime environment of your Nautobot installation after updating the `nautobot-chatops` package via `pip`. -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 plugin. Execute the command `nautobot-server post-upgrade` within the runtime environment of your Nautobot installation after updating the `nautobot-chatops` package via `pip`. +### Upgrading to ChatOps 3.0 + +Introduced in 3.0.0 is [Account Linking](../models/chatopsaccountlink.md), users will now need to link their Chat Platform User with their Nautobot User. Until this is done, the `fallback_chatops_user` setting controls the default Nautobot User and should have proper Nautobot Permissions applied. diff --git a/docs/dev/arch_decision.md b/docs/dev/arch_decision.md deleted file mode 100644 index e7bcbbe4..00000000 --- a/docs/dev/arch_decision.md +++ /dev/null @@ -1,7 +0,0 @@ -# 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) and [nautobot-plugin-reservation](https://github.com/networktocode/nautobot-plugin-reservation/blob/develop/docs/dev/dev_adr.md). diff --git a/docs/dev/code_reference/index.md b/docs/dev/code_reference/index.md index ebe9ff7d..473f2c40 100644 --- a/docs/dev/code_reference/index.md +++ b/docs/dev/code_reference/index.md @@ -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. diff --git a/docs/dev/contributing.md b/docs/dev/contributing.md index 2337f740..ef84502f 100644 --- a/docs/dev/contributing.md +++ b/docs/dev/contributing.md @@ -1,8 +1,5 @@ # Contributing to the App -!!! warning "Developer Note - Remove Me!" - Information on how to contribute fixes, functionality, or documentation changes back to the project. - The project is packaged with a light [development environment](dev_environment.md) based on `docker-compose` to help with the local development of the project and to run tests. The project is following Network to Code software development guidelines and is leveraging the following: @@ -13,12 +10,204 @@ The project is following Network to Code software development guidelines and is Documentation is built using [mkdocs](https://www.mkdocs.org/). The [Docker based development environment](dev_environment.md#docker-development-environment) automatically starts a container hosting a live version of the documentation website on [http://localhost:8001](http://localhost:8001) that auto-refreshes when you make any changes to your local files. +## Creating Changelog Fragments + +All pull requests to `next` or `develop` must include a changelog fragment file in the `./changes` directory. To create a fragment, use your GitHub issue number and fragment type as the filename. For example, `2362.added`. Valid fragment types are `added`, `changed`, `deprecated`, `fixed`, `removed`, and `security`. The change summary is added to the file in plain text. Change summaries should be complete sentences, starting with a capital letter and ending with a period, and be in past tense. Each line of the change fragment will generate a single change entry in the release notes. Use multiple lines in the same file if your change needs to generate multiple release notes in the same category. If the change needs to create multiple entries in separate categories, create multiple files. + +!!! example + + **Wrong** + ```plaintext title="changes/1234.fixed" + fix critical bug in documentation + ``` + + **Right** + ```plaintext title="changes/1234.fixed" + Fixed critical bug in documentation. + ``` + +!!! example "Multiple Entry Example" + + This will generate 2 entries in the `fixed` category and one entry in the `changed` category. + + ```plaintext title="changes/1234.fixed" + Fixed critical bug in documentation. + Fixed release notes generation. + ``` + + ```plaintext title="changes/1234.changed" + Changed release notes generation. + ``` + +## Adding a new top-level command + +First, you should be familiar with the design goals and constraints involved in Nautobot (`design.md`). +Be sure that this is really what you want to do, versus adding a sub-command instead. + +We recommend that each command exist as its own submodule under `nautobot_chatops/workers/` (or, as a separate package +entirely, such as `nautobot_chatops_mycommand/worker.py`, using the `entrypoint/plugin` capability described in `design.md`) +to keep code files to a reasonable size and complexity. This submodule or package should implement a +`celery` worker function(s). In general this worker function shouldn't need to do much more than call +the `handle_subcommands` helper function provided: + +```python +# nautobot_chatops/workers/mycommand.py + +from nautobot_chatops.workers import handle_subcommands, subcommand_of + + +def mycommand(subcommand, **kwargs) + """Perform mycommand and its subcommands.""" + return handle_subcommands("mycommand", subcommand, **kwargs) +``` + +By using `handle_subcommands`, the top-level command worker will automatically recognize the sub-command "help", +as well as any sub-commands registered using the `@subcommand_of` decorator. + +You shouldn't need to make any changes to the `views` or `dispatchers` modules in this scenario. + +For usability, you should use the App Studio app in the Microsoft Teams client to update the bot settings +(`Nautobot_ms_teams.zip`) to include this new top-level command as a documented command supported by the bot. +You will probably then need to delete the bot deployment from your team and re-deploy it for the new command to appear. + +You will also need to log in to api.slack.com and add the new slash-command to your bot's configuration. + +## Adding a new sub-command + +First, you should be familiar with the design goals and constraints involved in Nautobot (`design.md`). + +To register a sub-command, write a function whose name matches the sub-command's name (any `_` in the function name +will be automatically converted to `-` for the sub-command name), and decorate it with the `@subcommand_of` decorator. +This function must take `dispatcher` (an instance of any `Dispatcher` subclass) as its first argument; any additional +positional arguments become arguments in the chat app UI. The docstring of this function will become the help text +displayed for this sub-command when a user invokes ` help`, so it should be concise and to the point. + +```python +from nautobot_chatops.workers import subcommand_of + +# ... + +@subcommand_of("mycommand") +def do_something(dispatcher, first_arg, second_arg): + """Do something with two arguments.""" + # ... +``` + +With the above code, the command `mycommand do_something [first_arg] [second_arg]` will now be available. + +You shouldn't need to make any changes to the `views` or `dispatchers` modules in this scenario. + +A sub-command worker function should always return one of the following: + +### `return False` + +This indicates that the function did not do anything meaningful, and it so should not be logged in Nautobot's +command log. Typically, this is only returned when not all required parameters have been provided by the user +and so the function needs to prompt the user for additional inputs, for example: + +```python +@subcommand_of("nautobot") +def get_rack(dispatcher, site_key, rack_id): + """Get information about a specific rack from Nautobot.""" + site_lt = LocationType.objects.get(name="Site") + if not site_key: + site_options = [(site.name, site.composite_key) for site in Location.objects.filter(location_type=site_lt)] + dispatcher.prompt_from_menu("nautobot get-rack", "Select a site (location)", site_options) + return False # command did not run to completion and therefore should not be logged + ... +``` + +### `return CommandStatusChoices.STATUS_SUCCEEDED` + +This indicates that the command was successful, and no further details are necessary in the logging. +You *could* return another status code besides `STATUS_SUCCEEDED` in this pattern, but in general any other status +code should be accompanied by an explanatory message: + +### `return (CommandStatusChoices.STATUS_FAILED, details_str)` + +This indicates that the command failed for some reason, which is provided for logging purposes. +You could also use other status codes (including `STATUS_SUCCEEDED`) for any other outcome that also requires +explanation. + +The provided `details_str` will be stored in the Nautobot command log history. + +## Adding support for a new chat platform (Webhooks) + +First, you should be familiar with the design goals and constraints involved in Nautobot (`design.md`). + +You'll need to add a new `nautobot_chatops.views.` submodule that provides any necessary API endpoints. + +You'll also need to add a new `nautobot_chatops.dispatchers.` submodule that implements an appropriate +subclass of `Dispatcher`. This new dispatcher class will need to implement any abstract methods of the base class +and override any other methods where platform-specific behavior is required (which will probably be most of them). + +You shouldn't need to make any changes to the `workers` module in this scenario. + +## Adding support for a new chat platform (WebSockets) + +First, you should be familiar with the design goals and constraints involved in Nautobot (`design.md`). + +You'll need to add a new `nautobot_chatops.sockets.` submodule that provides the necessary WebSockets connection to the Platform. + +You'll also need to add a new `nautobot_chatops.dispatchers.` submodule that implements an appropriate +subclass of `Dispatcher`. This new dispatcher class will need to implement any abstract methods of the base class +and override any other methods where platform-specific behavior is required (which will probably be most of them). + +Finally, you will need to add a new `nautobot_chatops.management.start__socket` management command that will start the WebSockets asynchronous loop. +In 2.0 these will likely be condensed to use a single base command with arguments to select the platform. + +You shouldn't need to make any changes to the `workers` module in this scenario. + +## Submitting Pull Requests + +- It is recommended to open an issue **before** starting work on a pull request, and discuss your idea with the Nautobot maintainers before beginning work. This will help prevent wasting time on something that we might not be able to implement. When suggesting a new feature, also make sure it won't conflict with any work that's already in progress. + +- Once you've opened or identified an issue you'd like to work on, ask that it + be assigned to you so that others are aware it's being worked on. A maintainer + will then mark the issue as "accepted." + +- If you followed the project guidelines, have ample tests, code quality, you will first be acknowledged for your work. So, thank you in advance! After that, the PR will be quickly reviewed to ensure that it makes sense as a contribution to the project, and to gauge the work effort or issues with merging into *current*. If the effort required by the core team isn’t trivial, it’ll likely still be a few weeks before it gets thoroughly reviewed and merged, thus it won't be uncommon to move it to *near term* with a `near-term` label. It will just depend on the current backlog. + +- All code submissions should meet the following criteria (CI will enforce +these checks): + - Python syntax is valid + - All unit tests pass successfully + - PEP 8 compliance is enforced, with the exception that lines may be + greater than 80 characters in length + - At least one [changelog fragment](#creating-changelog-fragments) has + been included in the feature branch + ## Branching Policy -!!! warning "Developer Note - Remove Me!" - What branching policy is used for this project and where contributions should be made. +The branching policy includes the following tenets: + +- The `develop` branch is the primary branch to develop off of. +- PRs intended to add new features should be sourced from the `develop` branch. +- PRs intended to address bug fixes and security patches should be sourced from the `develop` branch. +- PRs intended to add new features that break backward compatibility should be discussed before a PR is created. + +Nautobot ChatOps app will observe semantic versioning, as of 1.0. This may result in a quick turn around in minor versions to keep pace with an ever-growing feature set. ## Release Policy -!!! warning "Developer Note - Remove Me!" - How new versions are released. +Nautobot ChatOps currently has no intended scheduled release schedule, and will release new features in minor versions. + +When a new release of any kind (e.g. from `develop` to `main`, or a release of a `stable-.`) is created the following should happen. + +- A release PR is created: + - Add and/or update to the changelog in `docs/admin/release_notes/version_..md` file to reflect the changes. + - Update the mkdocs.yml file to include updates when adding a new release_notes version file. + - Change the version from `..-beta` to `..` in `pyproject.toml`. + - Set the PR to the proper branch, e.g. either `main` or `stable-.`. +- Ensure the tests for the PR pass. +- Merge the PR. +- Create a new tag: + - The tag should be in the form of `v..`. + - The title should be in the form of `v..`. + - The description should be the changes that were added to the `version_..md` document. +- If merged into `main`, then push from `main` to `develop`, in order to retain the merge commit created when the PR was merged. +- If there is a new `.`, create a `stable-.` for the **previous** version, so that security updates to old versions may be applied more easily. +- A post release PR is created: + - Change the version from `..` to `..-beta` in `pyproject.toml`. + - Set the PR to the proper branch, e.g. either `develop` or `stable-.`. + - Once tests pass, merge. diff --git a/docs/dev/dev_environment.md b/docs/dev/dev_environment.md index 2e1300e1..b5c9fd66 100644 --- a/docs/dev/dev_environment.md +++ b/docs/dev/dev_environment.md @@ -4,7 +4,7 @@ The development environment can be used in two ways: -1. **(Recommended)** All services, including Nautobot, are spun up using Docker containers and a volume mount so you can develop locally. +1. **(Recommended)** All services, including Nautobot, are spun up using Docker containers and a volume mount, so you can develop locally. 2. With a local Poetry environment if you wish to develop outside of Docker, with the caveat of using external services provided by Docker for the database (PostgreSQL by default, MySQL optionally) and Redis services. This is a quick reference guide if you're already familiar with the development environment provided, which you can read more about later in this document. @@ -27,7 +27,7 @@ Using **Invoke** these configuration options can be overridden using [several me !!! tip This is the recommended option for development. -This project is managed by [Python Poetry](https://python-poetry.org/) and has a few requirements to setup your development environment: +This project is managed by [Python Poetry](https://python-poetry.org/) and has a few requirements to set up your development environment: 1. Install Poetry, see the [Poetry Documentation](https://python-poetry.org/docs/#installation) for your operating system. 2. Install Docker, see the [Docker documentation](https://docs.docker.com/get-docker/) for your operating system. @@ -35,11 +35,19 @@ This project is managed by [Python Poetry](https://python-poetry.org/) and has a Once you have Poetry and Docker installed you can run the following commands (in the root of the repository) to install all other development dependencies in an isolated Python virtual environment: ```shell +git clone git@github.com:nautobot/nautobot-plugin-chatops.git +cd nautobot-plugin-chatops poetry shell poetry install cp development/creds.example.env development/creds.env invoke build invoke start + +# Nautobot available as http://127.0.0.1:8080 admin / admin +# Mattermost available at http://127.0.0.1:8065 admin / admin + +# To allow Mattermost integration run the following after Nautobot starts: +invoke bootstrap-mattermost ``` The Nautobot server can now be accessed at [http://localhost:8080](http://localhost:8080) and the live documentation at [http://localhost:8001](http://localhost:8001). @@ -91,7 +99,7 @@ If you need to update any of the documentation dependencies to a newer version, ### CLI Helper Commands -The project features a CLI helper based on [Invoke](https://www.pyinvoke.org/) to help setup the development environment. The commands are listed below in 3 categories: +The project features a CLI helper based on [Invoke](https://www.pyinvoke.org/) to help set up the development environment. The commands are listed below in 3 categories: - `dev environment` - `utility` @@ -307,16 +315,16 @@ The back-end Django process is setup to automatically reload itself (it only tak When trying to debug an issue, one helpful thing you can look at are the logs within the Docker containers. ```bash -➜ docker logs -f +➜ invoke logs --follow ``` !!! note - The `-f` tag will keep the logs open, and output them in realtime as they are generated. + The `--follow` argument will keep the logs open, and output them in real-time as they are generated. !!! info Want to limit the log output even further? Use the `--tail <#>` command line argument in conjunction with `-f`. -So for example, our plugin is named `nautobot-chatops`, the command would most likely be `docker logs nautobot_chatops_nautobot_1 -f`. You can find the name of all running containers via `docker ps`. +So for example, `invoke logs --service nautobot --follow` will follow logs from `nautobot` docker compose service. You can find all running services via `invoke ps`. If you want to view the logs specific to the worker container, simply use the name of that container instead. @@ -324,13 +332,13 @@ If you want to view the logs specific to the worker container, simply use the na Most of the time, you will not need to rebuild your images. Simply running `invoke start` and `invoke stop` is enough to keep your environment going. -However there are a couple of instances when you will want to. +However, there are a couple of instances when you will want to. ### Updating Environment Variables To add environment variables to your containers, thus allowing Nautobot to use them, you will update/add them in the `development/development.env` file. However, doing so is considered updating the underlying container shell, instead of Django (which auto restarts itself on changes). -To get new environment variables to take effect, you will need stop any running images, rebuild the images, then restart them. This can easily be done with 3 commands: +To get new environment variables to take effect, you will need to stop any running images, rebuild the images, then restart them. This can easily be done with 3 commands: ```bash ➜ invoke stop @@ -359,7 +367,7 @@ Once the dependencies are resolved, stop the existing containers, rebuild the Do ### Installing Additional Nautobot Plugins -Let's say for example you want the new plugin you're creating to integrate into Slack. To do this, you will want to integrate into the existing Nautobot ChatOps Plugin. +Let's say for example you want the new plugin you're creating to integrate into Nautobot ChatOps. To do this, you will want to integrate into the existing Nautobot ChatOps Plugin. ```bash ➜ poetry shell @@ -379,7 +387,7 @@ Before you continue, you'll need to update the file `development/nautobot_config Once the containers are up and running, you should now see the new plugin installed in your Nautobot instance. !!! note - You can even launch an `ngrok` service locally on your laptop, pointing to port 8080 (such as for chatops development), and it will point traffic directly to your Docker images. + You can even launch `ngrok` service locally on your laptop, pointing to port 8080 (such as for ChatOps development), and it will point traffic directly to your Docker images. ### Updating Python Version @@ -453,7 +461,7 @@ This is the same as running: ### Tests -To run tests against your code, you can run all of the tests that TravisCI runs against any new PR with: +To run tests against your code, you can run all the tests that GitHub CI runs against any new PR with: ```bash ➜ invoke tests diff --git a/docs/dev/extending.md b/docs/dev/extending.md deleted file mode 100644 index 49b89f46..00000000 --- a/docs/dev/extending.md +++ /dev/null @@ -1,6 +0,0 @@ -# Extending the App - -!!! warning "Developer Note - Remove Me!" - Information on how to extend the App functionality. - -Extending the application is welcome, however it is best to open an issue first, to ensure that a PR would be accepted and makes sense in terms of features and design. diff --git a/docs/images/icon-nautobot-chatops.png b/docs/images/icon-nautobot-chatops.png deleted file mode 100644 index 7e00cf6ae0ee76324adab30d68d64206678a85e1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 74601 zcmXt9RX`hEln(9=#oY_R-Jxi4x8hJ}ad!w5cXy|h7MJ1@+?^J8cXtV!{=3Udc*)G% zn{&?nY$DZEznm(y1O{eX9sQqV$%{`nzWMgRa* z00n7DEw7xDTu(p4zl)%J*M{n*T+y5a1cf0d`J9@^p0#=e1Evru!@D2&JxnOYYD{Xf ziuwo!1t)1zqpbDB2#heeRLcrE0xD#aEc)Ad=kYAn3rVc{b(YT}kH6?=I`%s?&P30B z*WBSzWpFQ2MqoFPsTT-`>5zBvR>aVMWgeyhxikt|+85Bu=(La@G(N6fv*DNkh*_JY z3f0^w6CGgiJ4jW3i74TXr7N#f#yG(xtpyk=Y*xIBqn_Nw+^@2)j;cINlPgqX(vUpQ z`$h1Dwp=SNEm-%$F$0DqZR?yRgc6NdqIqC#tyynOwORxAlRb**adIM?`0UvCyZdgR=rKwTAdMiez?$k*e!-`5&9;pwBmL^zCucKQ{V!}t2@l;a)Mg446+(jM-`{4B~TFj?_=8;Yk)c(GxSR)T1 zA_j}QLqMpYyT3le_stK!6%bv$!w|1kuz_!>8X#x0rN=NPG)vm~;P}x3!Z~ z{0W`-$nwBcm^N(TqM7&mZ?W~?KRhEXU!~v* zw_)4`+q-N{58_a%LV4;DxPpi%>!+n$sRcAmD*%zCX#+gvSX1-gPC^pbKvs?w!SOB>nZ`pLMh4(Zsl&n&NDXBd0Xz_TV1)8Up6Aw8F$0$Vl#$qXK?)>F&@S*HgH|04jhSU#k+dXU`=}Cy zFGG6ZtCc{1FFByXV6~5!(81~|1Ss4H)E!bycl4Tbwrr#EEmIbF;hk+6e5&7z|K$MwX0LOon09U4!StUAsm2W%aqP zNZ=*ZaS=73T|^;A42ViGhYzZz8`Z_!z4%rSqt`Y)InCwUay3wG|u`*64nu|*9?bSH;Eft#=r&Oxht&L-05`_yf7MCvHA;6cmNkkKz5}Rf9vkiCZle8xdeivI2*$rF>kSRxHj5esA~#1=TY zIQjNXa-IWL;rZy_Kx6rLvqK`|g?$0xbQ9CvL2WxU4r^KZ6QBV;uO5rn)B-=*v&l_p z_ub@&1C?X$UL@IB2aEF*9$@lHz=wCKRwGkVqv-zr62dYJ(^&oGVm?yW{IH|PcQq#b%ou1%4(}T#m!1=YfE6dIZ8pL&aI4dh znhmyLcd$otrD4-1USK60oouFpQ;X@`8s9;rp2x^PW_h@40Hy( z6&S#<&=jSQ_#&s6;Heh1)hb_=E4rOEn_&Y~!8Os|)^i2vzn8LP0Y6jJtgfoDkeqj@ z7vaApm5g?vlWmxuFv*R^9@-{(t?cFmHbgI1k#h3snsGYIUQlg_!C2*Ud}2*e zfs<25QM?C-*!)(bfOo+AdLMt#61n7@RtD>mO)%xdgyq?xibGo~=(YFkmGrF4e0u=U z8!o)y7?wOun~RU>q$cvaxU`^5XlVKTuj|C2`y2tI?M3YHQfx1==82`Dc0}PfKC^5F zC--3<9g2S);j8{{USARce!#DD4c{M!aRp!z8a5#j^EH!AH6Qr!&wtYDqo6fR1_V>v z@JQ|K>OnlHM}n}a3b03QoRFPDj$csDsSXf2d5PVB=FXo{c70R*dwG-JQ2>{n6`%BS z+yO)8ZNo;5M?(5xXYcp@G59q=R6GM5Js?9p(KgbHcW(fU2y8JG_7rz0AaviIhBgg! z>~#FZ2GKA-yl{N2ioGJKc{G4p2=*9DIX8YA=pl00anBlnry{~&L zE^-+E6V5>~yicdZ6nl}^I4sp#2}-I8S4AG8Uzgo9<$hg1 zB#qA)0=y0BS#*312ZWxc$UI)G=>mQD;u+7m7dmH;D4m`Z1QS*|VDX_ag7)7|309=7 zI2RI3-Xqc3@`qmdizLn9j%u42I$mvT3p3}`M$X2q_cy&^ayb09Vzpb@VKlZ*Ijcj5 zi7!s(cJCfJe*p&OdKD$N1s+>1?bwq&76bk27M5fePH}Srb*M+d#3Q3`6-cH7_*hiP zWn~i3A87Eu+rra5kJTJKmV`VzkcW(Z`L#!ATum?DlrvgghD3gYd;GcrJIXSpM@Tho zqg84xXzK2b9O&f;qNLmckzJ(Nv|n2#eA~0zPnd10F-!jYYJEh91r`tn@7@>&6mPHp zY6n2u*0C5JAk%~rM*5_*(0et{&jMNUNxrUH7|CSR-Ogc{8q_xeVDv`K#uJ&-ANkia z0EWI-wx04moEZ*Jd>w_&;2cIF*u)NY@WvE-;_9O4H}pCMvY;0>)YAP>b?)8U87lfW zoT8w^X?5T{nanc}Zdx{SjyHqMMHWHzwFIR@x|gDJHikjqS)QMNHTOf>pinm^bB8cbfd+1k0fxqYy$6|HbRO;04^$OF55~Z!(JGI8<=h=v`>RqlrYE7qwlXGs zqY{$1wI=_tx8KQ)HD>NVx6?XV=u212U3=79fR08l$$opURPhxGy9?K?>~R1Q`e1e1 zCOyXmgr}6aZrCP_u|pDZ;qtJcP(Br*rKDd!rx0yI=oYkcW1z)Z%!CChdghVPQ7H#L zzLfLYd5Qn=W?o$j#&i7HebH!QCVn|@q(<+|a2SWLR~0beR`rrS4bLI7z2n`s&@x&E zU$e-QQ9ODvD5zT2_=T^cd^F91Xy!&E7Pi;04oN^PR;o%WB=lvx@%kK zSk*I^Wv28`uXyAZa&DfT4oL5<6!nV$Jf!bY3!v-ffx<^Rg!E;NHCc;%u*a!@ zUW((tOSLS270hDu3^{L|hv+L(A@8%soN&s^zXS0)^&{wfSr-NaL5}8@gkRMhhtjS+ z-^BhMdh`E4`u8oTCDZR1v~<(Or)5n|8=iq>7QJaycHF`YXdZCYFmjLu$wTyVl<5_? zx=b%EjB>uPsZ|`6vXG?Vv}GFn;3LFeV;0bhm8xsz6g@W=d`{n;oSgit=T(BlHyF_- zYr z3wPwzzYwxFu4G?|39~V#Q8?2q-1<-E?9zn?)%XYXyEaO7*d0{lIt7BCPRd^OD&S(= zqGt`E6RhYNJtV&K!u3pl&LkSu&adGsvL=H=f5vxrwPt{9=5UmDF9-dK&$){68*2g? zZ5MlHZF=s#ScO%75-aM}sa+Xz&F6;h3>-c&y)}bnMi|FT%QXUrs!kh;(dPzt$p!o# zK?%Vj{8uC>NtDNXSwXiG(-|_QfZQIwV`hU5m{Odh4K39WKm@;6rnqJ!7@Yy?G8BIn zkZGEB>z-9@Qq5fVW#=!~!GcpZ)pF|uWz?ldf59^%(>e+xD)BLrnIv3!sp;NyE&t{C zdw|u@f#W_QR|KLe-kSOjv<~l>Ied%e4sko5@=%C2@h5%TlSY+sq_=I%DLvP0(1#xp zPl8-gqI}s4jW+Y$RHU+;HGSD7j577kG$wiY$eud*W6Sdx?O)N`ukaNxNPCB-B2DE; zg69PYg~f>{LibxaN0iWu{lEA>>Ks3G3@)3=;UbI>?4&L+vDT1%681o(*8MQwZEf%h z6Ff?P{$dUAToXWEc2Mme(KaT^k@m)qLhsXlA8tLKX7cfEfRQtHbMuMNClD@%Z=F`H zmOtp$@$+~ZC2Z~k%`^YMN=NCQU)L*a%H^dt_L==!rkUZmo!Az3(H})k#x)+-G}iaC zks%{jm=(@+gNjih*DY90=p(IRlg_21KLv=4Lq~pWH%ZuW;zwg=MlV)l66EWV)XVAk zQ`&5G%PQKp6eNjh&&!k%T6+j@b_uw>&!@DB?}~7p%6NL zT`~aiFAXpt7zDmGNY_TuaZ_#aQdG-i#@1#pVfgiK6!oWoG=h`$#=l?NxhA zdBIE@)9Xa&IW3vsc8w1lIlj7F{k^YfNcH}M^0M)@QCH#UHBVZ^D_Grlh)kA@I_+rfh)|;TVqjlwemojb!qn0daK!`eH@Rc_$x=*V5fq|d7yLp z2+m;|1KvNt%`5=F5ghok>{6ndwXv0Qy=wY#LI_H4{b?s(D#Nmb6u)7y)^R(3vXwt; zbEkdu8>TXTloLybNbe63dt4xYR`t9rA4RIEEX!!yv$hDJej&$lwmYr6|+fX8!a)!hI2p+4hxY52>^5TA`EU@W0;+o40b$pP!C&$X@j z@JM!|^H2XOKL!npBCTA!AB*F{&VKPEsrOE(Y+5@7h!fVcs%xG}&@7PAQG^#A#J~P) z`+>H6TCw#>4>_hz{X>wwk%(lWJn56&BQE4>_Nn^HF&Z&05iN#(YtKzFNd;QVi9Bvd z7om%F@X!PGim&#B#c}kp0ps-bnGNX_ik7D& zJ*qmrsIJ*u6Z2V!xTfY*9>bM>R(+|wHF;=zf5)`e(_%eex6_906B(9AcxG2e^3K@0 z5|aIrG#a3p{YMl9KT4^v0A&6`nsVjX4gYqO4U!-4en$A$z6ASj-NcOZHRW>}Jx!m4 zv5!J`$pLn-H!!dr(%<}s!Q#Jhkv=exLAFst7P?|IS(+U-J@ULev(D$A3y0j;#&a+Z*KWq+sqdlGh|0vqC zJf9|mfuq>H3&ycHa-rN}zgpozB~NVnefePke+Zg?V>@uw{5xL5in=u28ny(tZ0b&w zH${MFwzd-3Ei-)vmj%C|p=CRUiVA*>p4Pbyp8d5WjWSOU1CQ4xMUBlH(jXNlPLsZG zvf7VeJ^xM9JfF$wtIifB3q3w80tn6q_YWJTf00dZCgJ< z9&rra31qF>WSYZfB;+#_Q>PWPTQVOt%=#a`563JBF9&~&ygvSZSFYLgP5qsD|3~%` zdLg9qe2h?DWF)UBc-g#-LhGZ)MWcp4?0mJ#c+E>THmeA~Bj-u8={(0KY4`^<9@sml z0T#=)ZpAo5^AGp+y;C8)1g|HpryRz8zg`HU)`G+gDWU=`;#uC_!I3KrGqY87jDMJx zKvF5a^+WAC#;7$b&PSuXHfKeZXatE$Po{2W$r{hu>CZIlrQA*taHIYkT5${#*=5cP z-NKI^vB{!?tpe96ekA$4EgL6GcPyv1!QuH;CBLPu)e>V39j97un{*gD9l|H)^a?}t zBE19f7GSL3x<(-DpKvyYpZ!mD-eik!-;RwbM?g-38$HiuUe7HOWRZcWGS%BmimP`@ zFYDI9EuZS<&G;O^!to!lCK%X-eI7OmuT78du;2Vj)6g6$2N#$xPpCD{i{5$Ak-^_6 z!bu>6;xl*K!!e-V3H?eka!KO-DRUifn)6KI_5p#|i9Ed#nDYv~Q~bzKp3+_GcpchZsPfr}V?I$=s!4q%&b(r=Wcqri`5j+W^Wt1*nEOoGy9m~=AS^R#6EiTXSFB_#KRJM*&2MX5osf;(#GEqsY&l`vwh= zAgUEVPwmkWafK0+MeL}6*lBnKTD$hU(!!lxwy?oet8(bI*Q?ea%&Z3aHWa?E^U3{#-$TercSDC196!3o4pT)g^f1$NOhS~u zCC88VE+mYuul?LznYHygDEP`ISe?LGoZ|-pOP=u8<5~nmnRB)ED+7GGBBsE2_bI=@ zZdh#C@Xc`Q%X%i;SzB$wVX`6G+kEP?;B(ZeALQONysoP+5wM)hlOZ*IoB&`^hBP@d z$sjbU#6ND#BJPc^%RI_S+UCdFbuo7_7A_%SxRXI>k?vPN^{x4OoQ!gtVKF*_P5P$8 z&m`Vg8)>Lh0A!>?O#QiHEmj?PQCna3Zx;qq>)kSUF)o_n_g^?DndR#5^Hkn@8f1z? z^_luAKY?(idMShfpU7H$^ArUrAiNhz8E0h27~HP=5yB3>t2LYD5PLYTdAGZ6n(=Zs zof|{m5IU(FHdV^t`osa_!=S8CI3&?-l_V~b424+}(GTokZ{ctXJ()+$*`ppojRHdC z8`i04_$RL*-`0)QH-wD3c^$}|tbOS=883f$biiSETlqTMoMtfB4}6^3qwvvn#nA9E zWPnNbKO2Dl`YMz2FW%)s0g7TLhhAfkA`>=E_0%ww`WSFQgo}Ty?W~{AI}g~qU&KaQ zyVNO0!Ox(dU9eFKbNuRkkFOw`4+QssozE@fZQ%h%YHyp!b+>W0!;hZY&d=2(ttZZC zAEBzL_hqb9fR~hU_$0q02A9hM!wS8DhHh1l;89>~bbkdM=A!LCa75zJVOh+tP0fYk zWlLX?JSH;H{deEWbt7OAoiazy@*}KC)y36)AivWxEuvjQO;gPsle`dYPX8O%yXay~ z&Q_^JR*lbqiWHGMFABmO?WxWBz?Zf-ytpM|&no45oSLg=GbOU~ql-sDUAyf}e*c4( zVND}w&oI#xOjbPRshvJ(?G4L!9mDD98}(*vZ){$##;o;@r-
@5hb{hC=~cCz;d zjT^qOLh2&h9Jng5!qAv-4|2oll0yJ;m#VS!TfJ_GQh<;dx2iWrly)> zQY9BxzV4K&+lvMAUeGJU^5aSBCb^g)RA24nW=YN%oCRY5QsI9_!~xGyq#8U+u5g2$ zCPBC`$T4BqgeL0%VUn6LILZCSvPB^&PJvRC6Vbnux_s1|`J%3zp)~au{M}~aHJ)k^ z02E8ZE4lfae_T2Znl!{-+zt*SkG zfNA<2xoICeBPneHG>#0zmsmwC0kVBLUh6O7QiiI8hb1ap);jybhmh0!SPll~51;Tr zMW= zEK`tFqH$wa&aYg?c@ghwN<$BR$|-8K&RUB=fO6N0|A|^@8B9_TRE6Q>d>3uwo&QZ1j`--)a9iEUrhO>EstojOsKV|Od$7^I zV(ZESuj#R}DMH;lnbt*7*7=VvI{Q+U{2Fo4Ya8{nNwcQLiSFI5S7pL7=kN+Dx46y# zBc&1p=nM?DouED`=nb4s1ejKur5D< z`L~&9=eU=0hh(k=DUyNf{IC^QA2wNy_g-BV62fH6?OW+Jn7G0rM;IrrZC@7q`ViLKuzPmG1ECpQ4xfQw$I#eaXxAPJG&WID0CC z-QRWsH*3_McmHsA0JOIh<$rPB5#0|5N_23B0?=*_(793<9d?9UN~HSSs-Q$&dE@oC zJSjR}nR3im7z-JVW!QWEKkTLQB#TI+UuFhBq2L8UiAgD%JTaFnYPK?NS;>@EXoIPxVl!aEd({t zO@(T7Sjp&cR5rnZf;>e1mfl=)_C#XCDaCxX4y8(7v(*qg08}@XN?hDIEO9BDB8vOY z&m&HN>w(gpHXvh;u%X-}0aZb;y2MI_xIR9@9XNEu%#v03wxN(^(i=KT5Cc$U!Z!2h zOHsP%ALjGlhg5>P28`1kfiNAGw8+akWWD+5nJ>S-{94FxXu(IpUHi$6mw27Sf&AQU}uH|dnNXcb1)=_8MaX&<2qKAc3M zJpbZT#Q^Wa=zha{NN1E4GB%S*!DQNbsUb;d5g00AhSK=&96oCWDmo1=bXGoi$_0b{ zs>I|V{7@H}EBfzomY&I(Y7^0U!S3?^X8~Rjp@Tu5FVuxv999-?w9n6&0mbNM=aejd zxD)xS^L1KtSaqu~0}_WMML&vs6sTm2!T9tp!?_^cCmnY|tUd4_rQ=DRoZcUrkCEBh zaZ@ao7tekVt3=d>0jf;xCFYXaNWV< zu_sv`P(d0>>Q+C1#mQ7aFBaDmzH7u|zpcuq;Bh2o zu#p-h4-31%XyOq!l^@hwGAol#)U&OwbK-P1+zVNc!W^baCsNF%KNI_R>15D334+e) z&I3gxnBOQQUVEY(XdNwnvv+ADE5X;DD)NAlzz8DFn6Dv5aMZ}BVr;=`@?1u2J23)Q zqCz%YP4%3ivO{K~IDt``6V2Fs6k74dq&(r{Y|V_T=1e|$$^)1`3`J#ga^P%n4`+Gwx)4{(Xc&c%m5jfl*mEr=nbj3vcXK)&Gw?d z%_8<>yO_T(JQp44^J&8q@zw@YzAOx*#iPrhtt%amzQza+xjYN!ZkT+&f(*hvg5my* zfEoYU1jHE{um+Zu43$Q~9}>mRPg0!xjM2ieg{Um0e6bYqYGg=eXX1kKzt}APhGBgudK}R7n6a4o=Ve(zCrXkWWd}vsY=>^d>!edJcWMDwpR{1Oiw! zy3m?N9@-Ae>~F0xHk`0Rfsr9gyS(|cj~QGq-d|U?1f>?DG|UW%Bst#GL$#weB`)8X z0dG0M%dEM-JTO`yjATi;69KZKUfTmIVeZma!K0~9|J+0_jwk|_aF>0I#UXn=i$RN? z{>a1Er#B7$)}m5ko~enyOGcm6C%!N>L9>`ayA0?4-&Y`q|47)`EP@qPo1Z1A zbotrQ&GsHTL?BY=CxMT=&5B+|Qa4II8c{=9&pj}C3RzrywfC8lK;4)#c&gRB3T%$e zNRirGLyeh(`LIzhTQiI6d288ytoryEV6V9{PpM{Vu||yW=TEF9L|gwMEt81ZW+BaJ z=;uy+nLJ?@XxWi$jJGK)7C?Ri`(m~mcp&-lvGiYkABYuM-I7f^v*8(*D;731?+QPQ zK=vNFK4lRp=mg2@`xpnyhN3*YIIW80_F`Uec*JCL_Sd@N69O-1baGKaC?rkmZOO%0 z&Nz146P{L!!;|&3^LmV-2zL>@3*LexXjPO$zXq)|U5p6^Jn%X=yuSpWeJK~gpj1&> z@`}2l1^GG<$1uEad42~6!V*(wc~gR(Sy5-Sk^_3NiV-F-Q8h>LPI*d}C2MvS(n6|@ zWa;{UK7K516L?9e>i-CZh!7`7yooQT;D|hgNq?e^7VBl!b$U~tHzbbkfqq6IfxQSj z%#36i2gZS}n-0+vKWhQ;b|=#FH*Sy^n}T@8PlZ7L?=-h2oIZSoJbhJ8pJ0AoLX#I_ zDgNU=#TYR+p9fW`3es($p@n98EbvTUZTLBz;{ij!TWRheeh;?{{Jmwb{p#M9jeUn0 zf{%_YMHaIgK?vUjx8AgROn&@BQCtZ{7Nwo5!mtCCKSOQs;?GYIA}jwC4=-iGC8#eT zG?&`GJp3_ge+}>-+a?6^n#!A-NHqoJSra3~1dXy)GxE3P@UNeG87X&Bo)h;>R=HVJ zsLO(+rnCPuGHhz$E>X(Dh#q}_EO%A22)P-*zAB-e8{G6?Eo8GmuDIZyH_i+>TQP1r z;LXc69%wzB4r5av;7;Rlx_Uh^H*2=Zi2i0i9W&!ctwLv1(Q}3yHF5%|?(E~RaXU4j z{@SCTTna$^b1+6|m|EP8wucQUS(~pYUz#>w~gG` z&k`AZj$@0R3+g9+`Bwp!rv2L%&2!t7yne>tIjvx;d}4o612PK{K{&8{D0zWQ9`u_< z^syTsmC-*?vglp9Cmb?rs~OF%Av29N)!x(w)y&YPn1S<)o^6QBfYSGlx9DgOw`9am zs$~cEA;PaRCi;Vq84Wj>5jUj`FEz)~CU1(pA8KH9*hQ~*Vs~k)b<_#=#*n3YZD5C zI}N@jupjocYVP|gSs!Q0s;icWw{AUQZPc4YqPCZo=^z9;q^8B=!6xkZe$QVLOjeB- zH*?C_*@90uCYAiB&#{xLQsbm0Jpq(RUeCQ@bn+=8Vh_KA((^C2<2;Km-@)VZ(QE!# z3px6Cvf1lCO~*w9t{hkoh?n)nXp1p%jl~xkQy6FvwzVxZ+S)1qo;PlP^*lEZe zGa!rCn9+>nzTU{Mqj1*F4Gnz|)Y*KYWz5xza7 zxVRw(P}7tPXWitO2sTU3SDdUK6jR>#LnR=yUEunjIoC8?K|u{-OjHk!EoUc==*48D z$Q|8_rBHd%r#GoUE!qzWEMg`ZeEFHx>aM?I*1Ls-STz1f@0yVwEG}b+i15e9e_@FdhL_ z5{g}LQy%wVS2bSz*`&kj<-$7StN4BxH{E+S;*_o?2Fgx; zbh&I|^9O9CXk*HtVoSWWgfH5N3*8HBkE5f!FIzc1X%|=qAtisv=xSji2Lyf8!VFKNYVZ4-TKa~{0GeT?LEx(cY5eE`d4!>3C z4fT!)B%U#0b9G?oemkq9+I&rTx#41ji(X=1Sqo^wywbocBqTNfmq9HkkAWT6>!|Dik&*4F4SgEMOcm2G;6jIB?ED;S2sStq#k^ z!ycuAt^v$o^gFBe#!3)(7oY(3E_0f*hI)25k?}u<)7O? zSQd913{vT<_il{v*yH6>?bA-Jzfw=Ys=oPJnNSgncN5V#Bq}|zTitlw?o(oBRB_c1@Fi*)Os%^rk ziDOS@ZDtSmw?4`Zfb3kid7XO)+TOi69PpXCM`UH)K_D=2xt7u*GLqw9>C{6qf0sAN zJvP-hWJ3t21Q<(&8M;bz%ZgWkbT9<~N3^L+==}s|@yDgF=-*Qr@D?-^z{_7>0!!W%5ph)dHVXEqQt>wog8JDyT#E`K2=wZDJ|3jc(43`r&f} zcvaX!R?s4+_&~u=vCmLI&S*wF7NGd3xS#QXBt3%Q|E#~FXJjfF3ealG)fqdtgN!{n z=iGx#~NLpG(sL>J4o#Q8yN>@36MXUNtQvAb6PArhE#s zyn9Yic|yIlWElU?>@Rst&aF2ZgLn{=#farOB9X8vH8&qz(#D})X!trityseV;;<2T za3Y>QAY^E&d9v5bX$U_?h!dfgX!gA%bK5#J$FN1^D-wY&DrbGTNnCSYvgiA?=T_K za-9T@e_I|J*X1uzJu7l?3SK9T^3S26y@2M_y+^~ay43xO@h6Pt+WfnTY#^Apg}d5Y ztYYhWS-hQhw6(meNmeAp9OKMS0M2JXg2a?M-{3=W|1sVrK$^I|1WO|9s8&8VF^A+L zcQ}1iczt2)M>mw->^>v|RY99bQ9J>jhWqq^ZC^i-wVM!_e0y8!H4NGhcnWXRPsn8iH8g^KRpY8Z zu_Q(paw!w#ea#G7U){w%4@~LDU+36W&aPM~gZLDjh9JUvw;kU)20ZOh4r+Qw1Ib3d z*zHoPK0ZwDe`9`s@Uw>Asb6`ykZ5aWUwOl=k)OyA- zJu5mTLe4pG??FN2s?N(@8SgU$3WK%F!)xc8<77dz)Ly%_X6-KKK&12Rzs}ej)zyD4 z#?Ji@IO`#v#R^<*^3TjxidNw2-$$|V{)#dPbGbhbdjBQph=($&8$*4K$hADoR^Uef zRw=bT-bkNU+Rzz@(-A8Y|NL!?mr=^wfaR{UX~oDW;&guD(+ODj#sh?tPYBdrH@_`m z1pKql_irA4gnf==h_laE($gl0uqA`Wb6o#pPpsC4CuAT2?XrWV3}=2=T=jvJabK(- ziv*^4fTXC()8nJ?_!^zt>7-M4VGd%3^OjggU4Hk+EC?V**q&4gcVYXc!V8Y$L_+v6 z^i+|sQS0IGRly1sYW4p|f^v2#%TcKyS+C!9-}R-`w|u0+b6E^Sgu zZp9bQyEAh1qawNeMQ+}PoL=N+F2n`9Cvoo!4Not>(TZP(5i-zmG;SE{KJZ+dn#sk~mlF}wub^{hBMV^%}~3mlN{<}w7#NXuzL z;IjVN8Ug;fLB5}Y%WqwVe+@RAt7*+sJw77^II&_l>@Q@Hq!&ghOhLT|CRJF9%x42LfDP zcr*^YTdcozqw4!lw;hCYiY)9ZJ*X3+>0}S#k|A(>&VWn zE~*gO+e`T^N2?;ud;BP#f)N10s+`o=cmOWbBHrBBPtqdeB;2)Rpa?>l&q=*YywVrt zqogelr7}?Dvvgcakw4h}>y`-SOXZbC!E*P4A;%Y4dPQ;azOgS901EH2ta}sWg7iMf z+*(5tVcvwrUzq@8Wo@+*Xq<13WfbafHHyQmXvY@Pg59c7kfp7uyCUe2!Oj~wrLZ}AykM42g zlMg6B7jqrX)P@#U(;|S&Szas&SuYqn*rDKkNZII5vD26SeEfH zcVPKuY}0Y`L%Yx?BkdXYqz=a870+WTwwCU1>I|F0$>D_PUA4;^TbKJ^O*x!(@t9_! zKXolaux&y0-z{TOVqjI!GyRwyw_D-E$J5aCkXAx1f2728Sz;z3?ZE0JnIhq|fQ0G& z!Z!4nnbVR`x&$Fq1THX)bWFD3qIDm@N{LGyhDutnKWB%9rRlST67Aqurqpg^Al=EM za1GYdd-zf1FtAPt>J4;85i}-$rCpVggO&5W>kO+EvUbqWoCevQ#hwHubRM4(z+=>)a!9e;E@U1n7Yo~K-x4X99w zJ>x41X|VY2G*w|9f^B--&TTMY_7ruQPNiyjstVCl16lE$2xTpJZ|)C2|;s3tSoQF=;qo4csPxd-SkR*w43>qFip+ zZ8QS;`{gKJ3k~y%J8!x)&;^Z}Tsp*}2JR^aX>I4jqE)y|2d{!o#S;I>*J^pT%jveyJv^bG8NO6m(etp_e z$!(I=JHdM3?&BtVV2s3HqLAFV#m;h!eXd(8pYPz8!C3m^rlb1ZZ#QoHsd~3hmDOIg zNoW@La1p9=OdWvl$l>H%C&L%$gwWhSZ9dQeycnTul3oOuKLb7hh1=nXYxX>x5LJCNy{zz!>Hl#J_8)peak z!dR@uSb##9vg13&Rse08|`e@P1X;w+aV7eY%O!K>Yrtg@pG^XFTColy^1LA zSC<%6gnp1L^8jZ9#AN1&-UX}uLDbi&QX-sDF}xVsvs{&zZE_Ek0k*S7hP$tE{?e5fygjixGLdyhq1}c-p(hYBm^VHMjqGtG&5sleW0edp5DC#e zwZAoi=iz3OG^d{vfXX#AnM+(jeak-)J+uG%y!;hWm$kR3U@Dp_rPPKx5eRQTW}m~i z9HZe2zx03|BFnXYbmEkw8?Gqa!TdfPA@r7t5=WvsqWsb?#O<*)<*wJr)d!8pg>Blt z{pE#$+M-=Yx4nyjb#RWEk?Q&I9}09_`nu0Dl!F~wT>$Ch^OZ*c8As_b{*5RtZ@f3n zmDZkkz46&C>WB|2(@Su4brr9UTk+Xqwg9h>ySxwlxif*W5-2@!?)gKmGRwt9C5h2Lw$Fg_7``5h`X~v1D0o*X! ztL8tYFP=p_?G9FbBmBM-0`vnhKEBfd1PZB+I-Eu)(c=Vk=18L z_Ad=Lr})Et9jz2aqQ^+y8@TG8tXh^-oBEdPj(&^fCGxWbHXBbBT zp&OHx^Z~ErcrTt7<^|gpXVCr*wvU(TxBj%7bXXHL zrWItom=JZuQ~r*uEp+fLX;L-tPc1on*H0Ww+1R1|-*{J>ST)51-@nQwJUta?L*CP4 z+)D0^SDRVH{^r9$wRi~9U_@xittJSj{s~okZa=cKL+TSt&*}{@giHIuB{ejs@{466 z!XKiay_11&q>D~9=#S0VztLc%1?aBxH{E9U(E%M=D#^;nSQ0l1`?A3{$lXR=m(0YS zmAn+E84nEca|8k3uj!IhjzDc3Us?6>PL$`a4;+w{=LOydc}4C$zpbwuK+_W~#d+LR zCKeK%cutMJZ$*?(kGu9597W@H?dn%!+o!8;&(?CmSJb@8W^hyWOiE~v;c z)v7K{eVw|Pz_t{&B1COR)<@|QO`xIJmr#mU_a2Ul!G8jfKr)YN)=;OxLtFUe*7?a! za7vH0Ov5D-UwL_&!W^gi3Tdh{5FL-g5nD|4jHBSYtF=ik4zmPMP|>Ina+}nw zH6CdaUj~gsk(guT?$Mx5AIi?JFn*Ls`f?3e&I4COz?x%V%v?iANkFI*Ob+Y|=b;6E z^;@z2W28t7%}b74-PQO(vIL#rZzgI0@#_8*kViOMDrhHuIVO)DSvkCP-EQj;sj-KS zbdr5+x68ktNY8TcFv6iknP_|K&$Utel>$KY1^F-;zBIoUj)V>!UyZ3o6}B`D6)XGu z+T;>Gdc^_BkMCA*u@h6cJh8>$09>@)1~68c zu-W$>fQ?}?X{7YmJBv^Nu6I{u#dd@R>S$#~5`NdyWIv(LaM%vk3Su@uR97Oh3t4_b zqyce<%>~oN>90B_B9=RcUBow-P!ihkCE!~{id_XV^mVtSa!q!MwWk@E0QTVDgI&a@J#VZ-#Sh$`pUE}vR%T_! ze2zmk6i-`Hj= z7b^wmAfg+nO3;(n!TC7Ll$_(589mC*WI9k`?{$Y8flma()odYsC0EkWC>E8i%5Ve| zF+)dZ;6;^HA?->&a&aUslN`QBcEx|l4t`HyA@{)(Ak%YHglYMy+Ct)EouEv1%|0{km;1#} zY518b9xyj-IOUIkb>wf*3c&nd&c?E&WGH#8~69?kOrDF6iu?Ib=83 zSO1H`#^C=RUSf&&)BI(2mx0$!vgAT9?>=TYq6Kf36s{-xuMbEz-Vw#(PM1xvjSO)S z$1fpLfLfAd9$`#PFGd9AfX~T6w{vNKUde-`dAtatk7t1j;6a03IUoXEKyh2SsMMBJ z-+|~19Lit+;Lbgm177$hg)<+HXq*p*sS=W%v3PfXIfTzomVBzv88JSiat&bmR$|$H z%J_YA6W2~C0ZRcWs+6~kZf7orMgypfEF5*>DM8W#vUw;!o8?<0?_Q$d4ey`?R9eIv zh$NTosD&w^^ankK?L9q|I?SH|mAg`g*~<5XU?ou?sKXf7BAJ%(-&sFXr0$7rU*g<8 zT#QifKEwDBMkDkHUTs4Sh*sJ?T$JAAC+`*wC-Wrs+%K5_S>?*Fp@ zAK1Pei=CXP7HJPpThg`rf5AG~9q8XO-Fy#meB*(IZ;mqIc^3_Rqav~>^k5mL$y+vw zk0Ha%ioEnY&_#L;Q|}a!2+s;|15jolO0_?`FiKk9YY`Il=<&j$5?)mp=OW{Y6XQv* zEzadwj!R^Y(*(9c%Y7qm)<*Mqc~LRim+L4?xDLrEJT|&7Kp^^UEs&zWrgodDb5f6P zLcW?c%A*ezhE8K-In^1@d(S-N%5ntN`}y6g)tmyUG6VV@@>!c8()RKNxjuq#jEkGk zOP3U>tBUK^z5A6}=uQwz-9`paZuXV1sKs%~y=5=9xu=*tml+*oak z?;Rjbi61QYc1gR0VM974=by%~BA8|K8K*VcSG>;W&Ooa2?81yiJrJ4d&@6^5G_3m6y2a-82|(& zKRPKF5#DVl-j=%sc^U`pr}N+)2B#ikXRonV7Ju=ujz8lcpQ;An;$L|fIn-LUXL|%E z9N^^d-!)NJ6MfUO(@)OllKBl7A<%6=2&Rt^=$`gMAG}{Su!DdJj&#`o0xKgw%9NVO z<{aTTo<@X;NyvmclL3*>3mY3Elb#I!|3n>7mu@+FGoDg;kP!Sxz#P-}{W#gQF)Q6N z#e-+s_YInR{2D3vOq#slT_QeB`bC;+Ya;KH5%F1!IcAi?+C-jXX}0tah_!S-YpwPzC_vf_>Gt@W9 z4qgj~9qxZDhrq@(8t*c8q7R9zE@F+FNSrTrx}p`cR8vQvK%Xry)n`^$h`@%A@R$Ew z`pc&Y&E2b%KfwR9cisVVmF52byl2YpPI^!1E%cHQNI*nERFsQi!(J}-tJiv)UP090 z)oU+Ty|(+aU#|^CMZkiJAPGnp3@u~{B&6-8?CkE8_xb&C&Y77_=DhED-^}c6GW%U; zgFELu=Q-!R<>`+KdZtRLe+i@gZ&l?-ZYZ2K@L1mpc~fgI(lDpSDO%q*LkP@ei*0U) zNrdP+0ifLwfq(x<=;!~Z4-`0VanBy#GZ$9hZ{J~F^OBjo?p?hUZ`bfw%~MXvQRv;% zZ1JM!OozeF1_Mf?udn$ecda5OHL1Z&(+!O-faZ%_Xa$&DI`(PwEte-(0=iWXhMUI@se{dUSM0B7reqt(L_~^o> z#~ipY$3MQOm(lGV8t-wve%p^@_>dArrJ?K2Z}P&S5YfQC)Qe#fV^BClE?1?8Z%{I_ zVBg*FZHVqm?>tbI9=f@(LRyhlsl^sq@A@zUM4JotXzgJkY_LW&=T&OoO~Qb#699G< z_ijv#jA%eHIJD<@)dJ6a=2lROPkw0{3+L_WNWTA((DZ-Q0qGunCV z(f(t+>;=Xs&C8!m~;VnV*-UbjRO`d-gVg%y!@gm zR2)+QGXdQ9aFus`VTj;l#r3yUdG$LsaKhpoT8EMU53H@gJb}mHwJ)F5l+OAM6&Qe% z7q|A&FIzH&p3}Bc91#l5YYepyYK)ZM6j4(jXSy}(LNl5~5&Ld5AW65n;zPpBD^;)fTa2FRbIFY(NzLK zVXESrzbf&~&zG=|w}jp5XwVr21^D(4M`2Tx=`;hF4Qz-1`ua3xPTy0*-!h z!qnEY(brGmU6<~JgFBKOW0tsMv%4F`@Qh@-KK9*^YI6Q?7|$^AY-3R_$b_fa zPP&QcTQ1L~wDz47@x_fF1j=hK>su~=9A2${<9xck4uDV0jkOK{9uiwER>!n9ObYQ< zbd>;5(ZGYii~yDdoUtH4?>0m-3jX}pDm*4IC~zY5W?|$WIOBz(w!b@a8Q8K_vt~mT zb_vhBV0zQ*@7Pg+N5czFn{I#fzx?ek{_eb~sqgRU=S+nyJ31i%#5%LlwC+LG+@IXE zksGNRc%5KzVsZta1YQQ@ffB;C>N4KQUbN4ZD|iX;LF%;y?grkiF6DM_MwhWjp3fJ7 zv!lNZ0$)>?@=5);Tb>HtEv%d)$sBHKlp*rF$a9ieE{dZa@%Y193oE~wYU*b#^ zNvw=HD((&Tb`|M8j4yzgB@y!Ac3 z9JsK#4ZeSU-STkIBJ-o)Ii$Jp>6_WHYYNk*q}$L>Jf;W8Fj5tI$3KY8ZUOK}AyTI7 z0gvFJG`s{8qq@jUS;+&y+%bPu{C(+zyfl~L1a&D7yAqX^d;@sRZht<0;T@G$;}@?P*R>*ST3J%?zdp8t`{ET zngw9DD)@-pQCecsCa)wa`8^3Ey2f5s6`(I*#T`J$|3u_M_&0)7(} zq1uBkaH6c_i>|z;#nk08i_u3encVyvAy8ibCZN~xH1j<6F{`T@W!pSv>;86^7S)G+URz0@sO3AP^xe?arMMKe{@wi zQ9i_3j-*%Wgk@8K&V{n>zd7>yI)SMq;)5dX0^S(vy`j9siP27AGwL z7IcjZpq+T|fnfli@#@~Dg?eI~|I{f|KLu}j?Vj}k8ga?HHbNk9Al!O)$%&Vfj_n}| zk#Rb2uOLWZEA{JMLZngOFq!$>79?$sbQXaiv=Vd6YNv&_SP)G&px!B`tsVg;`SzTGe8VJ5&EUtqSlEjy);Wv7_i_Py^vHgV4Y?9ejnSI%>n2UA2h}VkaW#SzmOGOBLHL+ zl!rBg+ck4%r<-L0tXmrjy!Wgran|Y0AJ_HY3AOYE3(bCg6RH~CyYdM>{()iomPSkF zRyge>H|u7;C&QT+X87}(DtUi)+@L_)Oa1y50!pSEc)0+K3yva61FUp(@d&NMhUe+( z%A&5>nNz3S7fm~_;rH#pLE+{J$}O#!MCfAAh~Y{pXppZy(E(762={ zMgRyDLGL{P0Y2o0!nIC4wIgzkLyDs%Yj)~X~R-nI8zQ~ zq`&oq6Hpum{w93!|4rw0ubfT3MXP6Dui~Qfr=w*$-}=7+{{9WyDK3D*w7s9dGY;jD z?dwts0PzOj+6Wl271ok5|D+{a>)BzN$CCnp1zjTmK-ey~e7JDWPaWEn-=i3g|NAdx zZro7`pPB&o16n974JaZkYEt^wh7Fr4JmnP|c<{a|g_G+OJ|4M?k8%s-1(-2a;cUp= z8-xkD_B23ux}pMu&(UwgvYQ+`od&3)P1C@mS9DWj0Av%0Z&ron-M7mEAXN?=uUA!k zLOABQ3_twIJWe{!eNLug6 zpKqQq0GP&|={_b=Lstm^#T~+%UeLn}FPuu%V+Adhgp1xjfXab9A$;=lQ#fEjmY4ng zcECNpVDq*r2b}Xblr)9;V^1F5C0zWbUZxd%RkCq}M6E*261QI+al;t`qI^ROZQ6Aw z}su8F(3EjnA`PrIiDP8jqn~d{B7ai}QTva|@Z`VeWUup$Fyo z#kUXSweQ%#|NW>$;n2Mh0<=RkOS)7)X8}V0Kh}S=RUHK ze9nJD{oqsZ;^%DTIWN!g?zhZiv<&PDgPVtjHNCy*7Koign)yerhxtNbdJ}#g5Z>^W z^i=>m3Kdo5YO%x}sL0Zn9O>($Ii#}ybk+qRZHNIt#oC)mYjR&Sttp;ui~(pniv7Z? z{=SEAes0mY-a?^Q@$D}h!0_l}T=n}hh1uhBbz7>RPlBw7M#vaNYQHoWmtWBT&v|M~eX5D0}PRsPC4qx~=8ar}AhQqU!{Jy*7`_ZvO%=ds`T8 z|M>cJu?2VEH^PVCJ4Ejx%}0HCK={`W_A+z2dnjQ^Yb8+Dn8?XDM1>i2t4}LI@&~*Ypu6duH)W}AafwB!6;%Q4mQ~lRJQDnqYxNqk! z&FBB4NbjuXyMM6)EKwYPOg;VY%ikJ+HB~PEr(Ilm^$sKbO`9vwUmf3OKxrngM=WFQ zS29VTg~NK$K+#zjKwLk)wdT#b+rXr$yYpI)SJ+Q10L2kF=KLHNKW9d#S*hVg&zZps zU!SMAtBpc{YKZ4ZHr2P>N)%nw6(VApA1z)R_D6JHyd6&z6yN;8b}o3vG%A&JV?!xL zr78>zRzcvp-|d1U6hFG9$_=ZFEIy(K2^6PYl;_r;mALWdU7YunVd65il^y18CA467zsL8 z0u=K`rxc<=b<_orMz;@L87@$Y5n`&a#Nu8#1DIn|c-*-k^N6}RRK;an0C9fTX;($Mq#friV#i)j-tazgS z_Y(s+Cg77_*=`g7?p-qq&7%HeRA9l}aQE3ZSY`3W8{s%bMnNG9#Yd{Fx^;+ipWOT! zuex+695c=WfJ$XPcGVv0#`xs(luulNk=Kb5I%L;iyv(Mie(zqIx{5MD47^Nq7eGme zu``8SsQo|bc{!FZwFls89aivcnRP=Tn@uLS^u#`nJ3q^Pk5(zP$Hk|mo?_Pw?(>Z? zE`X$qdc^=(-Cz@ACQoQ|l>h*MQ*Rwb?~>40U)&+^kiY{Hmh0Rd_k`p7S8K}r{w=#W z=Sj^s=s(|C-o3;77-Xj@zIE*|^JZ@1vp*hTbgQN?wPAJ~toZE>#ijzl^*0W|{Z$G} z$5}s!H);EZIfcU=53z+-UjL%7+8`V_s^YPkvouDp& z;wZ2Io_%4KU)^4T$Awq@Yax|o>03V><~rMp^MOPBfLBW?)L^OJXCMAI6#%K1GYV3|%Dv6z>wg|KnL4v$%ImIp1ao z0>uLljq>74w!sW|?;Z3(Kd37+9!-8btr0-_tNF$sb}IG98Y zT_XTgG*AtA@pEUS_8TubzK4UB?qL0I%KYQ&XLI;L<_N+A7i4+)TYLH57e;vRhd1%r zl?(PbCe5|;0p#Z-9H@Z7vEy0<-v6JQ;1NyX;0~x-ad92fgj2ZJ>dFDisB`cXDQ=b*XqnWMj&lF!WtWK{Jt8nSc&};(Fm(&&=_IFE3(hA>fNwjlwkG z;DEVv(nSg@1FY;M;{(G2XhYrNd>XE0D@@4b-A>NvbX>|gxM4>03UZn z*P&|!00GEBr7B?qpR}kQnrc4SAz3LP zo1vnGT<$wiQet+XU&N*un zuYAz}Bi|KX_wre_?@v88%kOV2fv?~2L3rbTgw05{@6^2Y-=E;S|25jV%^&KK;H@?T zO9SO52tYeiwZs5O{Hv22R*L88q5r4r1>mv3Tm8m<0gG)xu_zpSQigASF5LV9b`_(& zqM|tUaK)6AbMsBFp3N&Rp4pP2q7)Q|h52*L=_g9T;ZM)7_R$JCw@%?{APpsUn|w=v ztG`}FL4I}%k+WMNFbE`4Gv-aggzgdmJS66La=WCPJ@rXb_~ozX@ORJH%IjY-$e&h^ z@E`v^k45vdJoBtxK6UvJB$@aP5P&M2d{Ticuin86UO52Mq_dkpq|*YGyB4Sdv{J^i z+?&@ZL>poNqMioI*|N}L*m^4{4}ZN<=AI48VapRkAKX~j9%KdwVBdHeNF0tWsVxJnaD~#T&L;x!9)=`CpPxCLO_Yji~=Y* zn*V{FBjG5jIGThnc=~j1ST!Gx2>8YiMmgZX_59Cww{h%o1?HcX2}_MSLIL@uikH1@ z6EFC?ZE!FYJOqiBqfuiu{kTf`8f#5_4-0_tr{Q{?LmXLe=F>}CH_`Q^X)ehc)0_Z{ zarHsrb6=arp}WQMG!_SQt}8Ll5a5nSG;OIkcU-y?HtkGDuorrd4eJ0r@OYK;&fenA)B@-`AhKg0rzmT9 zbU@>1h!}%{*IQGF9^K`CRRaPqb`6>YJ!S1L6goA6}EQ3$}g=FTkxP~ zsn?dGx?OnNKld?z?w+c1CZph#EL1eB9}sr#s?sydu3~TBQDt~U60HVWVAk{uy)A6a zRjCS4CD)FYpY}9BP2kZD5bL<|vAG#}Rm!7pK^J1b5&%%Fu^m!4P{D!jqzieV1-|w+ zMDC`B>N%vpErdf;y-_m|`-ax!B=hlFkc{hcBvJ67fmiKr2yZPyBdcvubm!0#TqyNp zTxjkal>i?RUUcDwU4&3FR)kwI;G*a15NB3yn75leS=RrcOs0s36K3s02sPi{l2ht9h2`p0jhUZ zd+63CTk>}7A>&KkL-Tjof!?z zqZI#l)lhoknNVz8$P5)%so%7PbnFK)42frEJQXJfTM`06k5!R$D|7&1@=1upsM*~Mn?Y` z)%q$K`z{pZ4*DOU*e3GUj$bP9i1dv&j-3BNUF6b#V zm*}=_D(}&pt8cpEyI&Y#_3dVPc}kyR?yP{hGn;?r%?ilpTC)zVzP-q2uNbCxb{p3< zo9oHPS8sDW#beHKjM&^x(S1zD09df!2><}aRq7oeLz6-PK!EftemAhAjTf}V8yGqzzKC%MO$DJ;OieR*ON5{!1Xb!Xr7usldxdF6aawXYVOcyOcsJt z&~xywhgYdjcbXHgSJA20*ZE-+YU+l?&0|{8@d}?8-;*%dJa_L7mjr%Qp`P&2h>sxowH(t%Y(h2cCk0DJOpc7q<#RU+L zyGaW(yR?h5uMe!LZ!4{Q6ISI|3i`7}T6Q-{2qLy#bFLam zyo4pt8*{x*K}9{(4L{zfgzd#u z>J^ed@=)@Jd`+a>up+2^^b>KPKj2Q4Kjh-#t+OQzS z{MtU9^&U!~ES3)+7l1OGO{3DO?K1Ip423+Dt}nBFXY-f(nwQMv$fso}TB>9e=7y5l z)1JJUb6@-zH~*zQWi@sU3s>J>0edy#)gFi7zz@@EEX8DgH8av-&NNvb|xO(3rNCe2BZ5Poq`F zpd0v2@;KD3>3NZ9UD4rouwr|jKArpO@1Xg4VI@H4-U?!W51n6(vx=*(*}O=lIWeOy}$~r!aFyrX^{5Q~MOp zIW5P}Zz{1@Z9`oVZ`MiUDh#D^9v>=AH$eAwHxyQrd38?_?m~2(0MLlyD)krOFP-LN zpNB*}zYUXIE00NT(eSlGGOoJ%o<8qAA<)qvz?cgYkM1@5LYVH|$7~uP%Cu>O=xhuC zz;TLKU%rDETsVU%eS0!<%#l6(?3&qJ^sKGuC4q4x4}d}+ury%Jqg9@F!8TwUFMo5M zWvBFT(s6l?I5-DEKu=FV5S8u|5qf(9=FGGkUf=N2sr>vKTU*kBG&Ry_`R*2g_$)I` z_uDk{DtJT|bRW7}0GLFJppd{e$vuqAT0@|cE6D|+l zJ_~U=b8Dyde+pSB{!R0(?{DKDE}7HxnCG59ov(bS${Sxf2qy*2Se0IsWU4xg36Qa$^6p&YKQX2Plq4*BBqzQvH>s#h-6o0A)q7U#O;h8d(Ls1;WjK3NTxRJq8XIm@6YGX&amZtQ_s4^Y6`gWfc;K#uaIa9TxZS5WY_UA`oc{EP1w zNwfsERl#RJ4FpjJ5mn=%sHa(ICc?5|Q}<~uXv0< z+*_frG~lOyDDl&SALBhM`}q5p&El9N$GQd1SXSWPHH$d@yeBBnp?>Z5!0rNY7v{nu zVRjdQBh}jcXzm`2=}y9kNdaIIdk+C+E4}HHS{H8|NsEs1*syGytDscq0_fbP6?$5Y z*Y_y|q*P=DNIt~N1(4DLFmZ%{>5BXQT;aV}Y~s@^7Z{J7F)iTfPo2iopE_-?ud4+< z`{gbC;o35VBUO!;@)G#ySBClMWkonE%U9l5;Lt;Rm^&u}0zsg7(X(>==*BX+-o0jH zZ!sa>qh`{7-3m+!0F!71#A*i?ug%4r1)w35@zNbk+JBS&aN`cCnK;eII6(`NHH#MR z?w;~tQ1;mTcSj*l7;gZKyBsQr)<`Cy7KBnBSpfC8g2eIRQzHavDBIl}zKOD3 zg{~F=MUIE4i>L{Fs1zZOAKD%1W+Qm+@TuGR$Yl z6D~K9dAA)=dOmCW%N%=TYbAiH4(s{9{}bD|`r9QqIiQf4fDfS& z3LON=nzPhhed!Sk+lKKGfOaj~qZJZJ)Z3!z0k~%@bRoLdjUp@gABZ;p+8?1e3tIS! ztmK8xG(W_$s_^qnKz@&5sklI{;5S~pUcnz~n|}kZ3i_&=KgtI<%7<>t(5P7^{P=EI z#%_RiGkH_0*3N~{>1IITZ`+S6R3um=y(3? z_sT)ef7yCYJ7ptRuL^_x+8)8508tLl$UfrS$6Y-KK ze27yknoF`trY<2s@kQWgK>93P#s3D7m_;sdj;!Rl>N2iM&Fe~DBf=>vfo7lx$ntgI zsj2yFHR7N(TQxXGXoUoEo_W&)a4+|%5Ur3*a$uoQ#bw!SJyg`~uhozgbbYq}bPH|E z??=JF-VhyGBYffu)5xaSoHuW)vT;*|;gKjVRY9d94DG5gFi_#=e<<Afaj@jI41eJbXhZB zKEw&?{oI+7>Y*jg5%~<&q=Bb}Afvb#(hC5<%e6qpFo8rk4VVLLb)efi#AbT)gmW&; z5ri97e1$!+HxhmluaYJPzs*pQIo_5!<+d0%7Wzp#&nwLf3$N0qbgX>v{>Mjoz1O+L z5-?A3$;)RMkGt#M5#G6SE7yO2l;%Ep71~h`2MUVbC8{O;09u90%__YB5Np(S7l6~a z6MJx}d!0}fS_cg^CUlY_Hie3Dg0AQcK9vf<$>XZ1I!ULR5l7V4+pAafTnq|v_(Lk(efPR!a^w0)w zUU_d}>1%NfmMdxCubLZgS-|X>$?E@iemuylUNi`cp|EscEGwfKg$Gj~9-Hfv-e~== zP7hq!TnDx)0nK?a3$r>(5}t$+-6;SFI`aP|4!cO}c9L{87&T!DgZJEm09DPRkQlYT z7j0ZygT@k~rejN%KPc=co4V{UA2vI$muVxpou1%Rj^iZM4e+^n4jP%U*Ud9iahOIZS1Bn}wsBw`*7 zQoeQ%Ac}+ak_`ZYWcDT~DTyvX*@No$RA zF6&(1h;1ptuJc#~gA2f?NLUx5I|YFHfHYbF+_tNRO)y!z^wHFfdDg1)MQiFXrTTdI z>uWB6gmZmp5^L7xw4{mfRPF769q&KtozU8Lz@4=KAe#SCQh6)Nu0o0c2P+15Xuki` zuo2Jjh_L3tGQYWLl-sVU!lBT&BtUik{qG&5jA*{%bWXfJnXF^3{`zzg`R4;@REpnY^9K}$F(lXz7PzdM82A7|47J^XyeoP0rW ztpu1xV};Hp$ktQmOny^mty;z7J?TvC^*rtAVQsVk46jzV70!^qFxtP&HeHp1zG?89 zHxI%<^v42Wl+83n-_p(|f3yw?)pO*ZimQ~53m|!ej{{^~R-5`dYTB%wt%C$n4p4GE zk4Xza3UsFcAhqgK$u0nJ-&9q&S*v8a&IKTaaFvl8AxV~`(mUpi#-|sc5yaV)~(o9&Tpm1o^s&~JIrmA^|^J(>s zIMLnc?E)~&Q?Kz6y8x2Lt6z0N7btY`ndoSKH4XuMH={NzSe3I>by*%j&8L8 zq%&K(4Rp}fh1q9;wer%gN^7YRNBXuna$bWu5VKk{NxGn#%TPg6A+(%mgg|G=k7}}` z>KVDM)qL-zYkzSL%jhd)IS81hV7|a?f$0kRq%yb=6=*~hl_w5Fbi!Oxn*0IlKop__ zm7Td!U|1=3C>Ri715iYGRBJYjJVHM`ADcn--(t5?Y?6&_A+eh4rL7AFEzUE_JFr+Q zysT-CD6Ud3E}XWtpX#pE83Fqr6l7*TTwJ9t@g!h&VTPSD-8R+On$=nt0Fy3&)}T8D zfD}Q12A_L#1Y?5yng`MN6ugK_UM3eUQW7?C=^WDOdCu;SK$~3vqR^`9L^H#*Qx@I2 z@th;Jj#OrC8y;Wc(ycH2pyOVGA#EA!g39q}bFqOLyZY!=85BpzyuNvys}xTXT|HZk-hV2=6e#uAP7F8nEJ8Mvs1mqQu~VUgPqV(GCasDA zqK4JLNPZE)N+71*m3a#SssH97~j{3Se z!*t%bEyV-BRgVL63oGPmN{>97{n`?&01f#=uPUxm7v1%jy(Sp1Gf5UqKch3S=IrUU0wz!^a)ozf+Fx-#KdmQ~E!zN;Os>n1V@(5!2=>p|7H|P>2MGB&$Ut z@y1pcaR5}%GgV6c=L6>lu(G^kw8C<^chL-P-&|6&XXn|GQ;ZNU=An2M!>75DG(1w% zQRAF-QCy`iC@h!fBgIcr*>ZTy#{PlmmE{)QkIKEXxJv!1MP!ZdQi#g>x+Bf_aDy!d zz|Y#+b?8n3AcY0M*IzFfOH}$8!Zqgel=w`bR>QI|NH|?xP{~#(0Tf}%O~rpY;ei1; zaqCEMcvYkal|fNuL0x#LLB>8GV;2O&>NfVTD(J~ldi3PJp)DsruNS$mB5vSa5Z0Rh$OL{MIcbh zs3kXLRKjz#G?zw{l2H40qS|68OE3vUs!y7Gj~urWXB7sF=uGd(NPf|#(W#4&L+H(v zhGyhPx6RHD4$kh~;8vAAg^5=>JUWZ3)z5*S1I&7wEGrFhoWRlS8zy1}pcMD_75eYn z^1Gwl)BDoH=mJ2DF*nVjYTW>nl`VJIsHAcMbb3|X2hg1YKnfRtCBUS~2{lu_*#+QX zRlp!Yi;5Q5iI4?gn#3uj{J!O~L@8cc(xWe%TfX~{d$(l>_E>QmEY{*)W419_IN<<~ zx}>c|7^7eoZp7RQCE=W4%)Q4AF^ZL*DaC5My|Fd&@h3p>|&&oeRJ@4KPK$4)^h)ENhOBJF5%PodUqvq83eI z@w+!Up;oyrS*Q>Xw}NG$t2hRr!%M6!kS9pqSLYU1$UjJV>swTL?Lx?eo`PHksnrfj z*a+SCz}ibqj)I#AjzdM*9?c|(xJG@}&0bCE3ZOJqoyo$6r%) zxGHzE`pI^9WOr6=3w)qDE>le+4bo%*xK6p4o~`DJ`?S*{1c^&P+sjYwALvd2fCgXIHG!wxemChxQeT(Dl&>P8l6PkS(u(gXJD}a_|Ay7WC#(tK21ffCW0(K!O@)p zfY_U@h`Xd47Y|Bw0r++U#4JIFds!!kdY!{Wb6l@5%>7K`bh)%oZ~I3|>lO%#Feq!! z(^SKMC2xeScLAvAMULfR{9$xc;47pUEC5EDQa>W->!sBHT;RE!ApCFtzwJDE_78_= z=JH!+XYU{A%jhBM83sY^#L1<2;=^JA5b;usBv95gKlkw=lf3|1f$kIl(pmr<15>nR zP}+iF5*P`iw-U~iS~744kz@hTXhx|#5ga$?=bN7S?C(By;U_7tN2!=ylT|R(a?LJ) z)(Ze}XmLm7DIrxFp!1q3;l6CT_oVs=jYrj>auh4sY1>9;PTM?Em=ANv29?sxTzTu9 z{J`b~J!`iHP|2!V>E%gGWLPW!5!|PS-SX+ItxJGbSkeF|V*sq^P5~fA763TzEmBK& zGG%CaRRT2f8veE8#x6bf|7c2-AK|%+u72W_XRhB_U6u*TsG7E)j@eKbH@pPTd!7iX zes;8;NBiJ&zh)>&*WYPH=ki-dbBnf&78b49c_2MOsaOa$57G1RlYwhNZS!D#661qd zK}i}WKDI`)3p0dIspz;snn{b;7qUD$itZEu(hMG3;L7d@Kq^sr%GOY&)$6J_c(b*sn93)AY6yyy5cHzz2n6u(N0Ls_?4_|_{1>T z&GBBbQC1hgWZa1rT`K_CTma%Km8z7bfITE=rIID+sI+Tm>zxMBt0+@JzPau4i~hE? z{Pd9BMz&l{_3=5T^L%gFMz_-fKvb*1z(?Sk1{eoF8r&v9EO5C5RT8^R48n>;-ZYiT zQ|dnzI2H7J3QHb>{9(7Cf?tT{%Hdno-41u;1zE`{z$GY72Ko_xpf2O;y(F8HmAoA| zk5G=fUR}zUz^PeNGhWX{@fw7~QQQT5Q(elfd&z4u0z@>T5@bu!wKXg~LYsln93OaC z0D=Img&>Jnr6)5_(x5v9fD}Q1xK{$Ko4S(E@~Q+VmLNb!dacLf6tBzw%SnIOkbh}a z=naQeJ(v!_R@rWMgzJV)BaJtn^p8NJteS3T!-u8*+r)&&;%4>ndl-0YG>!UQBeM+x zp~^sc{prBz3iZLhQ~p*`y~q4f!PNr4F0N94gVx0k$V$GXg*OL{HJ}u)kt?`CUCJ|o z5oeko;;fQzJ&IhzpZ~7(K|YcTxKLfjbzZz)!F9khA|3&rQq}yUT*24WrM$t1rv0KA z1C9e9tvW2{ZL|RB*x=wcR zZE+DarVLYF`ai|!!*>^!ZF{V+LVi|QA^$J~j&NdZ z_p5w}OMy45IH-2)=WJQY4?M`u8?NxDTtIGjn%RI{smitTX%2AabtOL$;TgNr%qT>J z*UL&i?7?e_3!8tmO}%Lb4S|Jj5QjNC($(=QolLXy%FzTzHwyr!%|HA&1_2VfW)tZt zPuHz7@fcsP12NWxf>}Pa*ZSBSnvTOchzq&3lGiRoce()5rn~s;S*Aijez~df8f(e| z825I-g)`)Pj6U)*f*ug5ZAwWH<({`5Z*obSlJ;=))wTR2UM&vGaX{?QqqML`hHNqMsZE?W_2w@+lo*iPW?@Q1~M?$k)c8@t}=;X zMGw#ejHaTf$cts86#)VccjPqv-5IcrpgSf^HQ6 z8eITQpdpE!aA9{0|;;vn{11XvTIZKl9Zk0gSTllf2Rkq8b(m*xH1(Y5=7C08`-;V;*jDLRfPN;)940JI(!7eL?{B4cY5rcG`K!#OEj z0FwfM1>GqCG{%c29pY;2sx}1cC7kCK1gI=p2DNU0Z9`#&TurI}*-3T#!^@{Itvm8q zr5{w5gim9|UMR#`SK}1^G=102Xv>oJ6BmogA_6 zGRah=;j3iYUTJ_brf5;KOa-aAcUw$&FvS1>AOJ~3K~#*RUh&j}`c8d(8>Rkdo90ru zo;FXXt9?AKANQ+Irs=q0shCd;>3{WqJ81<-l?Es{7VSw9I_;#bOO%FU=5^d7RQKR= ztl$^Btg2*!lFsKwbYBk{)UN86F9LaE-*P!5CE~q{Dhx*jgI2AxkAtaLeNy&GC;3}oKap-2Xw#jKm7l4G7 z>YV30wspd1BTj$qL;+I*E}x?G$h!!7NV_GZFy5MN}J46ErtL}#UfAux_F?J!jwaiQKpK+>Wfsmo29s4e z5xer@2Z^+Gi@fhdGcE;eUTa;$FT+ZJHnZf!A9fu_cM1S$q-@uS{R(IzZNL;2?2!#; zvK*+m?|N&7dS79MTtn&6r?}LG4YfYpSc||AQCojDW?tL^LdmpQwPvW)QOOOz`?b z9I1QFU1jHW`B9dD{P^RLPX2m1cAT^#?3oGYQ z6spgLe<}P;MgksTTUSZxZNy{304;{vnuDfKZvh_y!1C{E%8yVdF5!x@(ZP^Uq2PEA z)x0+MnpT)cSqfh16{XPc1er{**(At*N@Fmwhyx}A=A{3*XFy>B>_4QaVyg&Y$MJ)` zRxryKVV3ePl~T0(RQjhMsWhL@@U~i$3m=mylV=cA#UhahRGS4j7I7&!;93!vpvU3u)bJciO4E?uVQriZ4+gRJgRK}ue4@~$MMH%%`(NXfYN9qo#>&|uQtuXfjWQI_FhgQfp2F)kHh>NYPz11UYe zHC@GCBf@>RGr^$kX0TK25u<{)$w*8#P*6!o2fZ%vXR9V|*tbpejSvjtrENx;FXs2HFHMn1V+e(c-hNkGCa!;H}I! zb7chTnwI*kV-U!|u^d_e9ZNNGW2dNK?{{nTfUVn{A?r=Xa%XB7X85Lzg1L&Q@XHgD zpb0tR-VS`cUFSz6i%yp2@qSDmr7r)s`IdVnNtG4%32Rl|lx12a`8;8wet^z-8C`+t zHet-z=)E(gu2W^OkStqGR&*J_iz>T@*;0=p{;X}Q27>CjC?h3?$Hw4wseb+jVdA+$ z*HSIszZNM=M1|}LAO41rMzgI0%MBr)`veflbTM;3&dfU={;SQn_^%Kg*i<|#e&iPJnQ_yi*A3Bg;z-i%Gjyr!YtUi{}pk&l;=9G@_flk`w<(IcWxzvPac#)>8 zWg2DXh?yJS<<{;Z*<(GJn?GF5zye5brZlh$G^P=o$u1jmM^H^4#ie5f>Uf+#MsOcq zMu5|v6a^yQ=UgwCmVmnnVurc6^dkvsRMvROuv6oZ{Cs72vBb1|@Mx=Blg=m;RZ`&epO!3pe6 znq1&ywBqQ6D*Z&2`U;F8qGuUcMwK*ZM%!0{9gT0_tLhqlvED>kSx>45$SKK7#yiYa3n3 z{|iNNh^0Ca$~1hk=VZe4&IpD`eB6?9#LJCmh(VCZoN*2_dJkiin5)Z*47$awDI<4z z!FVo_so~>eZsGq(%PkzbnHGS~d$8|5I-L!|8qc@B&zJb>sKQZZ;VkEy95pHPjk=2n zHw8&xGo>S6mJ1{50vSz3pD#n}3iQ{r<9$}k?c|M9(#d+PG^~ot^&n(W0ZGme%hBT$ zjbLYJ^aG3chT`CC=YQPUk-uw&m)%MLKtKn;*&0ODH`%4RUcwslT(R8N2>5_``X`K! zc(dv5!nWF&Z#=EKJJ2^Tyv#S5;V|GGL>_K}>1cvH6zd=tlRN~3Y3r5(ZWLS` z50e3T3WkovffNI;zc3pSU?kDsR?I0PziISEYz}?z`j+)Udg}BcuEkwGc)KORr++=u zeA$#^hO49cwB7ZX3m7snsoA}SrY(&&MABUZ+w@R5Mq-DH0!3736PBn2{I9jGWJ#{4 zU+Qj3h3K3xbJ=va50aegmmp^O){Vstgo=O!8i|UuGz{C7*Iyw>`~0T|R}Qcs|AHiQ z{BkVm#Ojt6@8$j0Ysk4(Kh%#4H90OZVLh|9#k?bssRh9cs;akP{+G~8Lj!3My9JE& zoh?RKk=mNI#i%Wk1xw4KzkT0eSdr6ZDGVu5rxw~{k@Fpm&%7ADsydo18&ZpuQpAUgb!n$2=3tZp zx4f(3`M=5wv#2d?7cv4xmixE35R@$Gz!Xoe3fLz0Xn5p;oOX>=duE9H|!nn9|K-%B1sw z&7yo9V+t%274_*oOd$Z!Zbc;#C}+!+j#G&HGS5_<8>cQZb%&S2;A3%6xpU0wRT5B% zU3I2UI@{1Q?}~3u|Hu85-sn0}9B@(VlR7?QHxOj?L&hFeSYQ)|J-0hcg5^%JEuk<$ z)h9jgU!l&6a+i!je~;2GHk95H{65p&Yiz_Lg_j?cZoqX3-y1tLJkt4^s-MRt4pEw5 z*_BIePE!uR;`1j4fGg}-K9&MqAs_>#Y&mv2#aVB&1p{%Kq(ZTxDaYk8dAb)^7d3i9 zN&59yGalgASEot_M+rT?X1mfqMKh0ct@Z`1Er1_0fZ1jMuaKa!CLr^Ptkj}_69$ie z+Y_P+^JQDQ3l*cK{XQPCd-GR<*__mlk}FAMsjc4k<_(^`wCOfgdn@gmHj(lP3;i6P z7E2~dE3FnTTxgbU1^mKIoJL?KfHM$>CDub7fSnj?fI_wSanlS!E?jBkU!7Nsj0wRe ziX{?DWc7E_C%+>+&40Hs5E34JvQ9CjQ_b?oF%za`Uyze%9OO?wg50a{Oy}oE`;MP8 zD4Z3|ZgaMM((BuojtU-Q22{?5~gi0gh zYW?wa5SL(m+{fK(6V;;TT-Jj|V{_ZLQMUccPOqM+CO4&`8SUK9T70vV-_RlvZ_D?k z)bsv(DNh1qNdv97k1C6=w_9Hi6^mB&d40BY1CTNqO>Si%xH*V$RbL4cTtovdu;6etBKUw8eQIl38X9U`5(AqG9~oS#?VoVWjhZ3q&>9hdp=8(B9cf+YpPRf ztMyKSdu{&8VYH#dz@n*2UuzN|#tv$rc??=qOYc7I!(-6zax(Gg_;UQm65q}OCA!u@ z)JCuYv5JSOcAt6>mtigQQyDxoT2MX$g`0oqD?bZ{h4m%*cR^kvczmP=y?ciVs%sz3wA3l7Hf?oY=TZJr0c&A&?A&Y z{5vPR0M`y^ETX-?Tve)YnVtXkFts{vQSR7q+M8hM!XBsr7uH^>XZ$8BSbQU@+H9WA z0BGoypnX5N^Ccx1)AfdG2x0GLu;AaNe|sCOG>+G_FB$pwBEznZzL9^1C^fBVD!N!| zc_k11u^#r{cUDRSRTC%SLR16tRM@?eN4E$%PB8}JqLAoR>r*v85(1sUSXYJu{XmC) z=mS4f0oA88!|wqV;ij8 z{ue7CY*u2<4ccydDB6|3_a5ETgjFi@rS1Ni98BERI*W&Ku=kl7wW!H$@J(yw4V7E@ z0NB1Mc((q>+t*p{hkn6#0yJMaKgNzmb)W+~*&&Ie=^+bA9=mahKJKT?8&A*3xdbO4 zAV`6xCaU=^Ji_svGR+0tSyViT-6c(;Fb}uc9pw^xAU78r1wc$eClzo`Tj<&?PMtqB zvJJYh?A#+JRq2w(`S*``*_W}@3AG2a#$&T$fXBP%CB)&+sXQd>E(IsXK?rr2EeOrq z1o=}Nu=qa^Z>bA7bK;Vv-P}!oH6I$p*L`9t<-go)N}IyY!l*A7XZ(nVbVm=6T`iuc ze{L4Gsxs96`cnfQaxtii%I)RR!4cYskJe|7rlPj+A{_a{|xIIf~ELE2O!mAwOlYYsxWnmI|j_&Xfg6uD2iqL2Ry^R zl(nFreU-#AjG%p?J3)$Ou_YNc_}ryw+HfQlj6&HI4;$+f3L=hZlZXgZmIG-U!> zSwn-bNw0%+{H=K-!Lq7f$P$1_PF3*u>t5Cc?Z?Z116_dzT$f%+FpGW8b%Pe^CwQar z{t@esRwjX#`NK|9)H@Z(a z2yixwtFoQ5rG+=Ks>CFn)ygUSGAflmE(~~utoqzNC)>Pos31VX*R!GG*C1Smp}K7o zdzPXfCh~CqT!6pS?yZq3MZ;4Ny7yl%7%Jz; z@c<%Xvz>v*kfg_G>}ehAFa!gxR>=iqAToXxtDC+3iU)j5mijv9SmLZ(Rf53?M|T6P z|3)fg^mGwcWdo?h`#YVOo9ml#RBQ~RVJsq3!N2Z11%a>>FxR39o3Xo$`79vr_R%ll z&{H8YA0VqGr-i0&@R|nv%5>&*(1(n(Txd*Ez|m5o?(nxqfXEY>-;{^{t?IhP$(?cW z+4b{(YC^v1C~yHO;u1mlkAhKv)2*0$+U*=L6%*zIVCGUpTyaZlS(=rTsEDPpYUGuP znfAuO2<1e8-HJgrUZnyN86}>=`WuBmkDoSW|I_;P%pv)oWa?XOjgU>Aiuo$>@eSLS zOf`T2jrf3=@)wFcgFGzP_wPaewbw3&K|dmADBp~hpUKPX&1AJRV4hSJd4I@h8t&HX^O{&382WC9yv4RtP6)|yGHp?p8`zygM zdrW;lw#5omkVo?zB1Nz28v3zH$VVhK?Wwz+FGiQX53qRUvt4US>*%chWAxSm zSZ)W*Xye}61KEq3pVHZGWoZO{X-J8kt6azl@M_U!k~h(9S)q3k=oP6c%k!+({6`;! z;{zO`5F*M^A!2C4FjglBI=kDHxFEnFyPY&{LQFEtgFZTduz7SKJ$toK;?tJ4_y@tD zBm*^K2ls9+e+W_H!N6oz&xkMH0zdmm`qNkU z17AFkXRYyz_p#%mpA<@Smsrou>l-!S@iOHu8%c`NrSsV=V7M)Q{l;VrJAY!|YLS4g zEdZnRL!B>&if%v+caG{BV^*~K$lDx7`_}lQy&&bqlp*3~Efkn4LPk zwF|eM4F~^f0rMgLzT;g#?(py_ujpp98YHop3wJCVgcSZ zFPfy*q{{!kSJt}-E0=+nBEbP*O2^K!*$y40Fm+P<$V#?I#(TR{&NXwDiZkY**KW*`+7fKr=erdk}c7{ba%j6 zc&XT!j*tYY55rjh&R5WiE4D@x^<;V!g6jzcGeWp$roC=*an1rkL_n|)r~~i; zIdkBs99}4C>v^xO40g{p0Jxp!t;H~{B zLJfK#J@GmVK!hH!?qd-{c%SXu0h8Lm`t91gR0WK_I5PmEtwrXU>wIoL->M+jD$Nd6 z`-TL%rADZUnM`zHPJ0#YM$b83GPS2<1RKE)U;Q8HW$B?~waZ_04NFqueyhpPJ#3_Z z9EY^Qtk`v3UA(&GycOYBRjhv~l%?-c{!PoXDCdxx#HZ+d0^@btn^lr`M*^MT$KGpT z`P?<3bv;QUg4+z=FmpO-Mz#yEh&(L(JNCb#pqqWYM+VKkoKdF-RHLGB+D$mzxPAqs!9eQVTZ|9moBkvQFo%ynoibNJ;rMR5f!um0oY zaWrL^lpNZStpGgt7lr%EmS%Ix{8J!GQ%Q0}h(sa-DSi$Z@NHC4PM6HT6+q8Q_bAV2 zGEiOiIeGRq3z^Q_&^AM(LmIe(3;j(C^l{Y?Nk$i90X$Bgex_(|WQI>=0KNNpo--!h z>7h;7nTpt&)-bo3&-L45Rubi%U}4fkEwt89|1V)0?yeVx)@BeClmF!$?e2vmir_&a-xyD%)fk18O?Z_+koPzju=5n6QPtK9L9g@pa9~9w5)EkGS zd%wO^;KQ1e;aw5vc&0xt!!=^)ME~1xRN3Bk3nEJs((fuz?p3<CPxD8i!&@1&beY1E=gJhHhDecT}U< z6NaDAFoB+Q*j*LsetG+UN0ed+l$b^(jIkkIi~t5My=inMX*}VU`@}__D0!g;>X;i)}M3b-Y1h&!)ggG&GRDs!4X$v%En+<0$ z9NUYaP=XIABT-If|Ha9Ad#})p1Q&^+iUt7wc6?F1oVi-_l5VY;tQyugcOBmN*4(K9 zwfHiKYEIi$gIVjwyOroa1@7yWDTl*Crhq{Q{W-yHJ+fJl7+raj zAI{%4^=pywWz*u|1>#|=g>4@49-N@-+c{LNYsNVIGI|nk9!-U}vj7r~k^*MvUWpC= zJIbg>2rGnA`M1@g!sOwsb-ZoM!M(}l;XVkQIa-;xc=C$}AFy6P$fl-ad+M^D4Sw)S zbo7E(L6WQXmY?I);j!DZWw`*D$RFF=KMn3uvNiv|7J%tBmI5o--u+@05k*Ng!~Ub7 zpu_jRLt$;n_uvl{M;mL^iWyDEyCBTZI8Hyx|IE_xPV!{xeHlNqT>DkJ`>!%f1e@j|Q$#=|}YX-sN7|Mgw=m|Q98Ubu0! z7mhvpWrvKKT=ng;r0XDbFiMylUWAX%Rl`B4f z_q4~hiR&5`28DuHfbT5 zzQY58d*;!R!X>-OWNb>yxb zN)}>;-l54`P@PDZ+96^y(sM@w@fyO!TQ^Kit`J|7v(E@mJo=3jsWP6bh+d7a=Eny_ zdKULnogTrTXl9d<_7*ffC-#{N+`YS;EA>;H!<}E*>1_mx0q2j8HsCN?WXtJg!t(MJ zWMD@JZhdLiH?kxM878(PLSbM-#?`-f8ttuXMt5iYZ~`8Be+(Qpq;b=_v`wTbr2bTB zXHap$(VIFDzu*HjA-LOSS*Rrcjs;SVOfHq1?@af?2)`WHGd^y+{L%y<7TgCu=z5{L zKF^=T-)VcSXZR@Dl+P3YE&(antQ?n7sW}j)>s~3FEdH2fdBC7Pj+An9^3KHv9NJA_ zxudSf37h8TAM+6MC$EA9bv`YhTH{QgQEq{1UtZ$5Iw^aJH%?6)pUAYkx$6~%s@ zj^JI3`^O-c_`gIVon*1ey65`1ZYRmqb@bX6@^*M*sd!uaO)~k$@#50fskgV7vn9c) z0&8dZ*wM%oh9c}*|CXw)0!}}Le!IcZ1U)c22b0_7hVx}7;-B38aSG!#c*|SdMU5T) z=IDV+$E4ZCG5LGkk+ zhOu1-@%O2NMF1HgdFoMi0ZofrGGSuu4L8>p%iysZuD0Ej_|g6pYY~rC2!K1;ph-DW z02P>~d!=r&m}SmnFdx(*_v zL*hYol-K_8YR#bY)Iz{$9v0q*zTWlr>ZiB<983%qadrs(a6mAYLu~fAiwye!798lG z(hw7{{2Lp$|HR||a_!D{eZxpBv8i_pSfgsQLk=Oc0cVE#(JJ>6IVcREtQ7aXpj=Ui z_$tNAXrG)V{kzpJWQ!N=iEbF)gOW&Ev7$|jm3J%olt48h==Fdhr7{1Nj-nc#mIIt5 z>jKp9o_0@XVywO9d4B-FJS;KK+1LujCRDZ5%cUckpL5+8n9e5@pN zt9u% z7E*a$TCuy6GXj!DxXq@f5s6O?%_jSO&^;ts83?}pX2$*GzSxd0)WIk2DBB}wC>Y2K zUk3sEK?XQtS4J&!Dii=mEE^1E;CC(yOunSEX?=PkV}RgB@q$#P(>Mf!LAprVLwz91 z!|4+~>zku=%JW<|>t$7LBJ4WkPJm*~Lj7v^ndG@XRlRW{Y(rua3c39feI#I0dfce1 z%>E)M*lC~mM6XlbnetLuT*NLTC>$d!yu1DBzI`Yc%}c+v0~SYv4oY?0ts;9(Mx8vw z5Db$T&|1&bZ9@w5I_Q>{T z95uM18DghsU2 z|NLI8t`ERitdw&Y6o7la5SoP++Q-ur^UgI&g#0UgK77{0NYP(P-`WFBb@Lq$G&$2*(*tUjCxZoo}$3gz*AgipVpiDh*q{1Z|4-TuLd6H z3pbX$UtPkZNdLZqy!{b`7q&Bd4k~tVtU`9d5qIAFJ?Q$`BGwVVw>1OEy35%w^DCN5 z7CEvPIaqU=8 z4+ok@6T3od?zUR@c;aSGU%)`cs+E%RGD6}nK1-z0IdR-s{^R$1XhOm<$FRV&OSK73 z3OAo8aonl%C*>kc^gC}eh9M!_%e{|U4>2*aA3rr{^~5j<4#k%>7Za!%s%H8tH0wZ^ z-P8hGenPY1gPi@ceR>+R5IAjUV~3?gU9If{Y3R~B^+n3Mx`ze2-=TNTf>9y`sW>e(>)lOw`}1i=_1gYh_lC4$3df0VkHgp#*Qp%LE+h>YQhua$f(` zt#lGX`^qN!7Z^C~AZu;`r2htO_95gRCtNG*DsXj7bs>=5^U0d|`AUNH-s?K!~T6 zoWP1r_?A)}9k8V_+nxbLc)2|*Ei4AdqC1+`Jm5y^c?h;m+hl`jDG{_$VwX5JzH35u z;9|l)s;WoIBXq|Bu_8bZUasDobE<38JEx?lc|~gmU#AJsApQUj*FHHM2B9M8$By68 z#Assocanb?-1i?ei9EYEw*?9BNF{Kg2OKa*Y#_Y!Q0?e>62(izqO_zSWgJ#L?Kd}V zlSokVo?&wmX3Wa<1Uq_fFxkGceR-Z|wc%JcI6?84DgaK)n5b4^W+lbE@0P~vJ96E= zAnLxzkMiz|tHiCZmp7bcNI_O`a6pP)VHuayAl(n}`%Hkc*ag(B)JQX#Ww0n0yOg|3ec%n1fgfu5?<3 ze^p>Vp}TeuVzu(1G5wsKf6D?G#-j=$BHiwJOB)!o>`T=GS*fDf%X6~}U;~&ARr+u3 zB6Qaf5S1`}Si~KrgU>pNh7${gET{R%>gXkTjqyH0c3~3@@wl!}u6z=K4M_O0A#ixe zTKTo#OUM?mjFx|4UYmt1eXqe}Gyf9$xmP9!*X%cT&LslmgKz9vcxaw8v8gcfvX&ST zKlN{E(u`3j>&*%M8~e3+xZ4LLFxF)r5l8tuDAb7QgBy1;n*d!l>2a>0?r0H-^h4+R zUdSMSpx;<^%aRU-+ozNW{nji_K^!Pr8plIH@v~K5-TCmSeJ`Ux>w&>^^^!ab@|5xv zf(5t#noxHXDS03(Le0AU^IJAp7)os2QlI}s@aVB{kNj<}z)JF4&9D1^Dca3v*KEvI zb%IY|(Ac`r0ep2l_%pgYjkd6}|BUxqS~q+2{?y^aE0ieFHDkJSa0> z_Mb_AT7s1~4MSL0a}yeYe<1mmeJGv#gcer*#j_fp!cLevRCN7JU<%_TkbJ}3G7uvN zYwKpP-y#Rg^eyN;?{Z)Nj(8px=Nu!HOjI=qNKUPR3GT~#8sz?W&DMOh6OTl4w9}g5 z<^Fu)vTC{aYGC_a1e#iWh$?b>_MQ!SZ@8+YK>vKMkyW7@chMsS^jZWefY*8ZSn4H< z2B>mDxy^02(O)+EK$|&6%b;V+i1W8!S)+_;`8{EHUj`H@zo3WWD`29bX;87ncfx#9 z`A|=eXlpA5^S#{s@HpL^uD^2`Nw03d@cF$%9>?n6Pfj^D>B+5<#fPlSy0K! z+@IyoH{n~5_>c-3tGV|*sY^LxvY(y2Ui~+ZO}%Fz6?)gn)(dR$ooS8Qm&-lEXU;M>dC zYNM{j~~j%pB-v(}YIZg5GFFc2Xl=q8^0ef3wwxi{Navuc&avZ*Nf zE1(Dq`qZrG2L%PXRo~=R^SQw;f@ZT?976PcWl1GHl z3pt6A+&TZ$`7VC1s|cT%UvNg~lma3hny4ucIad0AL`&lEMGpU0*tRsyBKhcD(Adxm z^LG~<+?vbU*?osnh4_(k-1O`u^w^_EVF0A?sIR!HL5O`7D<|fwAFaxC@TY}x^e2znDWb)n&OGF*@r!Z5DLlSzQW z5LrryZbv+E+x7Et5x-LJuVKWW=D~kYYMFnE2L$NfI{@$PXX#T(_maOmJKlWWtPx@v z?l3V7f)9>p>BqXUe5O3WM(X3;&RdDWbsyKnPl6`PBq^UW+)ljE56 zG^J6o-T>#jo{4PG(Rn4W|#jChbYML(XPkWYjr;rqz3{KV?d!g?dETce~wk4?|1;E z(Q)&0=W-K^MEU8OThlflm4>+xGdwD%?k*~~Re_+0i3N+4im)yQX@}mKah-=`VBmX7 zBCLUO$Jo#m4^H^NzPZK`I{*}*&m!qpMKdlU{cJ^3ZcEOi zZS2#;;V4ix6`r!F z-Ef=#uC8_4RX_j8L}g5!V3A;Hn7XP3z!T&o^#owyp5d6@Mk31#q!^wS^XF-JCo;CB zgym;s}laq`A?c3nOl21D5a+UszE+XmCbA+8o-bkUo3OPHZ(U8)8)#O(h+xXgUgT8&u zu`JbN1EG%(pdV+;wm*&|B)P{XO4L!^b%knU*2?{&Q9U%m6|>P1m4);~35~KDxpBByW?3 zk6n+@8jdeQ`-r1o73szs7UWm9CB8?df52j`$z($*zU#YX!TDs#823FTEhVRCq#5js zG;)dCZGIZCi>$BV%gu;v?&l()<0g4_QK;@<5k{}ieu_ZXA$ry0HYoXGtG5>TcB_jZ z=k@fd^JX49Ok6?|nQxwS?Ooa5+WngoNNYoJ*%6}pckUPVxe!7_AZ*Ac5{e^&`_TrE z&%+><{41R_gp$?`1hGT(pTp}$VXUM#pz6jN%lWv+@VSY_w-|VAb*CilAakadeFef7!v*}5eubX2-l5;#sRvYv5M~!k66CU%sw9Hm zsYs57!PL#F8|4ZZG@mnz(z5hKOk|+V?dTUf<};We514UfipwMf`6@9Ap}DwbQ8uLF6u6 zNIPKv2x!J{e-I{&1WGVjB;7r>5wRRp8eKL0OsMak`m+*H?77l@?vRD4A+BswfY|oa zSe0x40>k`n(_8;#p9+E}%!x561Zg?%vCQ-tF=1Hdz26ag$@IB$0aC4|T9cc&P6FuN8_7E@Hl25!b(h7lW znmQ$3^A50dli+;I*hmYj)i!ftq^jolP|3PMbT~!qMS|n$`MVnGr;InB3YAMGE#ao3 zz3rJ?XR;E%6!@#gOq#qEtgs(G4&M3HM_}kJi~Y3^&}dNAR&oS3lMk)`cCc-hkV75s zrd4!(bH7?f6M;fV;IJ2IH4`9zdA-RvVy!` znY-P5+m&}7Zq^XrE-x+Hufy?&ZTm(W;<6oxfW}`G214+GM+J%2E$#zZ?zBHX0LV4? zAsewRD(iA~Yf&^~!gjUF$3M_q8Pey>bDz?L(PNOW;+26oc}MdvMNA_nNOcr`L9r%T^1jj2etB47SGg&jT$HhizQqeKrsH%C!(N zf^+JK3RQl2>Q1@QMKXPZZ#PqE0hsCj{*|4S7BXbRZNlxGIY(Us+N>Py@MCRy9J^%WOV?p?L6E@9;Tr0Zw)N zW_LTsi}5R-L-tP*OM*SiXN)h_tw5Pd*)tG8h_HnuCP_-G$~BqV6hQ>?S>uN2`6auo z@q!6E3#FX#M|$&lk035-9nL3PXi2(j@hw)rt zWqJmVlta51ly>Rh4@0Hqd4nw8QJ?7#5?6&xd0$!)v#+&Hr!<3lA)TlIYT2y%<9E+f zzql}?^awHt6TSw4Vl^N_B6c?gpe3yST_Joqz1oq=vpcnk$D{k9)$xCiABG^1cY1;? z5^aEI4Nm6=x?y^1U2ngJ77V>{R8IcoVe6PQ_y+*mWA|cbM*y2%SHR!*!E5ykq+VW; z)RUA@@qvWuBK@*@CFbT?^qKRjMum*V8*%Xm-tVpN#^9L|aL*dj#_bx#ACO|3nmlus}GgaQNNG6844Tms%ApI(8vfw>h9j%%ne`LOm zNFdCqdzTfA(+|qsoVNn$r~C}KidMWJtfl-LLL`(ZEMIG~!JBj*DnfGJdAG`d(7z{_OX zx|HM_ee#HECA-pF(t`Td>Eacqn9%~EuY3IqdH9mCs3qq4MJz=gOi`=S_2j#qiIA3r ztN-*3l}n#5p|LTxt;-jm5!&$4iJr%rva9`b1W)AZi6^oO^|)}%so4GER1p^Zt3Tu> zXCr5u%^5xw#X!~1`uiWfpmLb}bbG~jGd?<94P`Z`N?-bsJ`ETQa@Cxn`1CP+LB44i?=vWTz-{91$N@;Z+HqslgX-DN-N7 zl7tQU^YmWogZEnFnosv5RMNN|R!x7iaCH9ifRpg(u-+@%*O+(yFK7Ftk1dBVW6d2?KB4|Wt;c*UW5Vo4*c4}j60|SS zv~jmrlJD$aX5P?0{-Lgw4-a*(AyI%fZ|-290QU zUiWNe$L*7_QAB^LV84Fc=CwwsJy9>n%Cod5tY)q3v_{>LYIDszO-l_xo=YY+a&2QB zCR9fb^)D($QJAVt;?d-X&HAadXV~!=B%xAMrUfua?|GXndiVJvYcStyCi*jIt;4Y~ z%f=|uJLK1X44GlXj42q()ys{!%d?`0U!^BEs4JkGy@KjvL$2YYtv*f~! z-n19;cc&de4QV6&MJS6xrT&evi%RY)%wsHDbL$XmLT=-fMkoO+;Eh|;W${7(eir~k zd%3H}R<#U#<@7i&WS?CQ1WE1ut=hM1`V9JvQ~;(;FnOaML8R7RDK0!W{L{zPtDoyv zZ>R?`n=AkTjH@$D7Fj4c7#FVR+Yr?Y)`hR=?=^61RF%#e9maflfDLA3i2b*>GGrY} z0VnBJUDYgzRs@q*nIx|JFKt#SUKdQq!~K-*Y+=3_A*}RUqTE|_aMc*WO%nY+tu%}J z7lcW|J}p09#vygC4CD75D^$RAZg^1YC;>F8nqVS#BNozkvl zw&*h;kGi4N>mLtr5E^`o?tYI~K9@jN1U+2~Y`dsr$Kx_e!x5eczeid6Y#wy^lyxos zvtBA-QhN{n$prVlX`ll`W+zfvyF%aKi*RwrqP!t=%MNB$BZSDk*L-RZ?arK`*}|O@ z-+S?5ri&WMTKE&oF!-{?(Ebm{64h@jj~|)7s27KYEM(x8n8!?xiE*%83M#0TG+5vt zaLej`Ws1rV#yA_U>0sOG2tP0kYbmnMy!9s{$0H<2 z=K0)-s|f3NBEU&HHU;7anCIk-lOy%7qI}gRTRC`bOT@J7IW=8(HRn2Sap&5uUA})> z)3}&LXAWfz`>JV4J_oW!9tTTD(bdStB9^sv5!7V|IUu%)OqVR#WCs;hX7ue|Mxp zSM_`CETlNhaN&0EA=4!yott^v=Yy1ZD(vwe!5DdC_B2tH=n_<*$;L4-`Jw2qLWQ>M znN6vrBsJDMr+)`=#=wil#|J;M1c!VRI+>U1k|#Pf4sR`F)=vD=Ud7tA&UCv|C()yU zWB2Y*2mpqsKP}C7i3GkZE>(SO|6F}WmLzCF5o}z1xBi~}$`(u|Nhd|l7IkaEq!0cUU7t#5 z*{BP9a$$%64^7{|SZCKndt%$RjmA#X7>(^ljqRKmjnkNo?KHL;+qP|;-1FXhzhCfR z&+M65vu2IkN+?8~W<(PTzn_+J;2rDMXuro1JKln*?NF@lQw~KNS}5ITc|s`x)d1{RFSgk4|3RpY%E3h|f83#iGQpe4UH zEoOJYlyArvn2?W*{%5KH^ghOeN5a+Ja%2eCBfXX6pH$R{e7#}mK_Qk%@B0CQo=a=A zXIQ9Ge}060cv!c-YUCOuAJ!)Q6_+q26>`4P(Qwz`{W0};MHnTMK&ePl5k&c|C~+w) zMm2JFSIa*aG;F=HdxVi&kaiWCe^u==l&6qPs14w;8|h7Bf#wd>HKxV}mbR*ca>m2d zh<2`OUU}sVD=n)eXH2Yi< zyWjl;=sMjKPo2N$hkSmZJ=_c>dGz%{&egd6fu&z^zsA(IdZ|1h4e%%+Vn&(HwAjN@ z54hseR`y=7H_)KqN($VYLgn&n!x}%WQvW^my}(Brf^wpcMPy!rttE9xD@x!amx$u;wrwd@+ca2r# zJ%_X}oan1GpU$FkLczB6&rJ@-SMG%y&Ixvrg$a{)rgxf*haRF$J}myN`P+g}#*lkxn4E5EfN@r@uJI1vRP^r|vd@xrEwPjmTF~0YEK=xs zo!G}L^~qlM_VmMK(FQW)O%l$aw}SWMFr`)61!+dh`ot$+TPBb7EL#7Nz?q1pQ}rda zjLL^R@I1cif&O#t{AJ@eRtWbAe~n(|4>_PJVU7+U7V;`gfkWc@y+L5~Q+p+S7KO4< z9rCa3NFU;_f&98oRt0i;Xqmr@QV{Iz`^_WOZ^tr6Pj6CXoN2R=dD80E5Mm9O}{9Ggyh()Zn z1Ny*Vv*3!G!Ixq^H9nlS4j0!4-yqfJIso*)26t6l4bV1+z#RA`a6R6=5%IFQxP@yp zwO?wme{EhfreV5lF8ijN-IcwI@*_!UC5O)J>PcRcMOO#1fcRboN($3Pq_ z>-yfie6U*z1>7J!i%(z!zozPcb?=unUs`fVuEuybhv3U-uVJ7boq1*4GRTu)^7l+O za|l#^ls(1}s;f^bKvkZ<5b@Yr8f&#Y2TDq&?F@BE4J)dTb+`qZ!Qzc#R2k|2BY6AL zSiFFrT-3dRQHW@o{+DRbrkmys+8t67slS=o%h>NRbE(y%oS;(A|%;x(^+Io7s zZ-jJ1cim)@Wcds!?MjD4ZLAQYSvH>@P3ND5Td2S^h50T*`FlSD$>JtEqu~tYZ->(T6FS^C8{~2KOvuJ|t z-EJ$pfy&VVg)zABtL%=fRbn|R|o#pXZkbUUW7-Vr9lqRO=jzOHqLiLENCc( z5kb+$^eO+w+~<5)m^Uvm##r)pn=gufMlDem2Q&1~YO37w5NfP!=UOkamx<_@l}5ao zD_rZ1ih_mM3 z;mewF#v%_EY$8HY+&YRlFsLd@hMIS6ZtJLAvfr~ozWX|F=?X>2Xw@)@aPqq zZh7~Q@Zj~r6>>k?$)*0vYBKH8=j@rXC>_jMCYI_~8>A&)=eAEJ|BPd@TE3^-DxvE; zTP*CS8@PaWo8+c4LdD_n3+L?o&94jc)T8yQF_Vz=aEgnxRrRhhjRujyTb6%}yHm&5 z?0?k2IQeE`{>g`rABG8oKnNE75FWH1c3^repEmc0EFgx&$o@R;;dFB5beyxy1s|#U zro6=mL4n#lvXr&>wSL-t!Jp&_U{-bqthJ~g60!WZBnMl0nZrO!7Jpw$xKu;@yrf*^ z4)8fZO>QhU_WEC5tHJfSo16$GlNE{UL7>|hRslc{x_vbgIQuJbaQg?&(*m-ND=<}! z%?R{)B>+IO;Jb~eNyziyl)Li|PE|xdG=h}E4)hRt{$0SAT7?d`7W3bT!2kZ4MSmIw zNQ}XzwKy37R&ZM%!?uAbZ@SDDCYOIALy;*4rqZB^aAvE;)`-)I;=La@d}KNIq4LQX zE0HMn8Nq=>y$!a2hRb4R+XbEVms~Oo=ZycP+D@X)ciz#jL@JUU)qy`S#<%wKOA%@j z6Ssu9dzw5-wjF~*zQc zURVi<7A~f~PuM<7B5VyD$;RA;JzE?%1+BlXFbDX8GxAPP4@rTS1;}Kn9Q`SA2Tg&& z!uNGOBoR**j%o5`-0oEm=HK;Mf9AH>_?@h?xRltLUlz#AhXMFOwnMvg9%!}x zYB{ZQ(4VV+WW6B^@c-^7&cLJ=r9_g=N0nFn_hLvRl^{%0=GD}!b?+KfpHt#d;VF+G z#7=6ZcvoQ!F7ozuD{;hGejfxbWOyXlCVV^MtX&aHeaxKzhx7^R29dWJeNqwU1x@=- z5vgC`?1@rt6E(S7{D9r9O>|- zQ(PWx#=TbS?!ab0Fw05CwG*`lX87xYr#gFsav)@lyyMCmZQZB;O#QXT_W8b>3=&;ct><^` z>(LD6W>9{v40NAKL5o*<&odB!ae}e)LPwn%X=$U_Sq^DD{n?|91Bz`|{UMP&NHcb| zUS-McPje9jL*y=VsKoU=->&dzfc|5rgZ&S`3p|}JAW|b<8}pX`*B7E&+x4u2qEs&5 z+Y*ArxFcH$E*J%zuV5BH9%*gx2jctd(;VNCqTT3Su<3$40jiJ>Q6bBCr*y+Ho8-ct z_;GPnU?0iwb!0rJ4ji7b@KiMquufWtQ!IC2%$0w z4Ud$goqibWlSI7>X`)^UW9DF;(}NCQ$YJesJW>V+?xT6Hn?(F)NM|F}Tb9gm>;W5# z_s!*?g36ChJ z#OhB&vC)Jx_C3&wUxtOf>H#i+v8y`piGG-`(8@x>zY0(*jOe<3F0T&Gc`rkPQN|xR zDBqo!RhqEM4>tVlw!T*h;w{3Rwjmb1!iyLx-&&6lZ4&MLx=ND}G6amV*mP@G>x{iq z*plU#TxY()J>QAWH7eGh2qH$QM8_aR!@z%a1?_<;ocQPZiR9dcC6x*8Qn{Fz^84V? z_?P{>08$r6n<^h9uTF55<_!VQ{4rm(+m}4rmjL(md3CsCmWLmjKU`3dZ-A}AjwOgj zI)j;icAtwZP*Kn2{ijCQa0=baZVeZ8>VaLxo4BcJ?Wx^JOkzP>-}=W#`go=RS#B`R zPP^#p;HOW(RO!Q$Pj8%&u*`u#4clqq@M%vCWQ>lW^lqhq`Ga`$#cWku1+iu?)Y`}Bqg62?*!a=t@nsvzaD)!8>f4&IhM-YlJs#+ z#u)g>cvC!!6toP~7%kJvhsJ#Y<|=BwUY1L+P5-l}HPvGAy@z?eQ?@{lL;5!+>_MC( zNaQen63t%1)n`qowA-L1$7459cbksg{K-1vV6V7F*MyKp13%o^9?d`Kw+Y(e6K(s` zU_ap6Ac1pwedhc%(bNX{pgt4hxDk54oE;`Z1aU&Oy3VEgxw^G_$pIn>?VY|C@C1E zBWWEz(a}~1`{7rSN?+Q+JtnpHohgRP7q1-O-XH?VVkFF&TZ0DN{oKFLk7%pU$8W`` znRvXmD=C(b44EdwR!ou3y+CQaG?*N>_1k6`3AehFxcb1KND*|2#e_ z+-u{%!xpEvRZ+oV$>_lk0;Go?cUjV=M*2wKPQrpy0@nES1v*~;j72h~!iFNgELt)F z9ROp7O~a*%Aq#X}#P*O+Lq`iEQe8X=H8m^=6>##zB-UWPFPSWD==JTW-sDdI(#M!F z)gWs-{m5cL72efSt zq3!F~=Mf1#i+6Z|hVtzy%@4Z7-<(dgwJjSf^{??)`b7e^at119EGm;UL8iWS z9SkMWCjTH&@KBD!@?@&WhVs5+@IP(m=k}fz4n5MnIhE+Ga@Su+K5YP3C?t}>#l5z$ zc0g^F|K<&^Pca0omiB*zqCMzUAs<63KDQ!$YYirTtUtBuh0*Ba9Z*Mw%vqmRwKG_; zHfV4Bz1>16otO@QdX=nN(Qrl9W92Xc(JZIN#e z6+1f>1S$n{fL~X0aeZudJD(3%jkoD>3Ti4<>nB>DD^=(!%DIDYBCW|r8@e+^v)=)~ z{g9$LKMsYYhfpK)lvp&mP^9v{e6bWpOkSwFGI z7=9Vo&DqG5kT`mFPIka27rL^h` zcqBik>kL+mdVVb-AoW;<0gpRGX;LHS7QdunNy^1GRe)m9_&5NngxXP(!&8Uz5Gte) zij~RS`6j`GT#_;j&o`X}s9olGJI4a7&(oUzZ{ehil~ak6+}=|-#BuK~z|cG1x=W2n zeivU>*W{On%W!*SG4LJ;H>*2_1z#R-?(!V|R6HPea1=kS>R(sc{WfpEI500IqV zzCqup^i-D@pwqx;aELU)1m1hZ{0$w&tNC{F{!NUAuYq4yPyIUSYQlVRhvPFOv{o&2 zy?0XE10@}AfG4JUlk5AeTNY2(8C@4<1Zz2eEwx46mUbb z0~u=hT{|JNu20ne6^>}48M_&oiG@ZC#UiW#S_I65n{AMK9L6 z8JV2ZlxTgWSE+WjCs{;u6o(}Vy<5#)^z9N0tQk{hxoXd2?4qcKp7BEQxP7Ne6?QH3 z>njZ%Tg=U5b0Z`_w;-^>41g@oik2GS%+$OQf45Mi`dT|*Y6?v|t$=QPaHr|I!*O!3 z8~M#e4WXhZtQOqVVwdSJpFz@tuNZ%j`H&h@J~giWcd>(T6akUI$F9|*FSv2id!R$w zA&lhOZ$cpwARfJ!l0ob$mi6M2!9?!byAF?Z_>J#kpQl<;_OJa|{d*ZU8i-{u?o$v- z#;Q4&1rwsVvT6qQ>IP4t(A$89yG%g5oRKV`plTuci$D)<{f2O&NA_GFQ7rET7UC(T zp(Hu9Oe%K|`u!tz3ust){ZTAqAU{I+iwszq{(+0|Q;BXH4pP=CHDW@Pwo|`j*~&gl z%sBL-SFkHgjR9qP%!sY$Drmby9K4>wz(&I%z0ONRhv|N_k1$_b!7^b&gOly$w2Glc z0Hz0mF1+P=0zt{!E{F>43kTK&)ptG2AV1uJWlQnsUy~QxhYm71AdigXsp6K`VJO?r zpMk`)n(n$VH_OkFWLCsBYEf;5rS}zh%*UH7t*^m$#LmX+mlY7uds}7W{Ku=c#vftC zOP^M}W%~bEvoBo21l#}_EBTxdqUh*3T>=j+UVPJAR`&YrLu;Vcym@4q?=n(M)5Xi! zgMu_NHW!Cu;+l+x;myQpCdTE!vPbV0o6Ny4OHcj7ZveiVeEig$WaFCzS{F-cD?4jc z4~XRtq!ebkTJ!HgV7_h^$PV)WvB&xfJtwZ<(&R!fyk;J%uem5 z{>?(^`0(nNz#)l&Ls6mYG`_Mx<}`ooJN7^ylsJ1C9liGOTy;9Z7U|UbX8vjZ63r=0 zT=ZDTY)ApSHnf_5H`g0FGFM^268c{5zn4fXou7N1aL40#l2tCUNb_C1kqo4p<0pD2 z4fs=plXt6q;9B+$8$W<>@Pgm+Wq0V%k%P1#i7)wsr?hlRJ2D6ti2h=tjQq}X`4*wv zU6TDc@@IFlJLpL4pb@6Xn?eEz5#VhOB->0jw+RnK-&`QBFrkEZY?Ksp1zmvWP2>s3 zBLwoLD3K}p$}o(J%Zzb6v^T#1Tp{huN3^c6FU#cAxR3z!$vO}DWzm-Su+YY|JwhtW zIAaotpIuxN{0^&weVsgJ#GN@6)oYVRWEUmvC9SR_R?rp`(TET)X(g&UT`yM2$B1hY12MxwFfYKs(W*q8&Vts(n!xj{CjeyL<<+ zR|O>=Q!HgR{Nb^o$bs>G8*!JX2Xr1KX#y*;Nbr~)NT8o$3VAQ&1$W(9`iqV`XzUwr zmXR2ynSt1fEy#;#u{s+VmG@m*AwyoTSNfg@`a-q`qRhUq?&^Lu zn$TRR=VnMD=Hj;>TjtLo6oUA66SiJyHd)6*1_V^m0rS`SAs#kxtmwN~YFt}b$tc|t z^C~%d*m&R+C2r$c&(Xj&01)DqCsOVXRuo<6;-e;hU>f2Iy(rL0lV$)nH+TXJ{XqZ@ z09)1MU8}=Iank}hA&y2?^{bocC~NZSP=G=nDY^{C1xDSAd=fa~#vB$yVmPl&-C!f` zj4(kkAybN)+I~UEk{aVeL1&tVJX7Ra4%(JlTD-~l`icfFYgVC&AyPsbVR%8zBQZv@ zkZUVf_xPVz>-fJ=dHEf?@sk9<8B%CFYiC)=o4L3LrVLxMq?RwDFGg9YOF;jFr2hit zEGlgPDt4E#Pd@ihi3lf6AIzGBBet~s9~ZzhQO(-p%I^CN0aW*^Ut+GW7cZ9}N{FM6 zzqHC*Ayd?q3)qdZ#s0%N%MK#V0!hH%fC+9ufLW{~IdroAQ0}-rErg2x6Dci9HXfsl z83)e2APOAUAA?>K$dcd@O|ZBHAjH$!ASce32Tt(KIIOqG;n($Q5kjn@#r__d!p&uKh?u7XcF?%I8wt?qw8@STKjPnc32aJuoDDaf#`j}T#?hhJVLSy0 z@-HO&<#x$(*!0Z$$LxS%i(3k`d=w(rPq&N$Hx72Q9$$z%m=nnL$8hH64|1dvQUGf! z=OkD}kbmDeX@#r*3)}JC`JFYZKy&!@&O{L)dhu$79-G=+Q&<0PLe}?2ZO*_ViVP3< z#3xfkll$DqWB+1-i2BQP$uz!Nt`l8V5cG$0Z#a1Ya3hOViUSR<^G(6iYqc|3>XN3B z9ntHrFP9Y&VgtA$+3zLVD0>UD2$1|A+qp&GuDENlVq>mz9pYT>6A)0>*@o`Rdc*Bm(E>bc!yA;gLY>mY8wn_} zo`4_1oyoE$SGr&FVj-rRRaRU(y{byw7&QPd(SvLOTs!U?Nx0u$|y-)=O8F z5NJv0kTTf3H?kAl9*~Wy`wIG=GiA6%FSfFaFb_NPvIMRuKdrcl7N$3qq*?EFpEx=M zb#)_%vby8sVe*{dYn$)BOwmLTYVp{RL!U}n zHp1x;IY~nA$H;~r3S-w12>M`(j^T*oc9~vpe3}oM2wjWn_x7K(Dn{_}UJ)!El&uQB z%`@vQ6du5L(fYHS)em_cd>IxjQ5VpUb@1+t{U7jj_hU#fxw1bY>7VCEHPRs^r||wd zYCS{WX<8`+$Z$c9i zS6BKOD)flBlLT9Y34{yDG%#xL$O6g5q~aOp=}_2P<%6uRZ&!8B8?@B@0##Z7`kNEM zarbwxOLpO4$m}?0%4ACM3D_yd3W!{VVTS|@tUHq1=6bp2&Z&+Kf%F3=P9ZbWOJAcGMGpBc8>lmSiC9usx%OwpaTSvbPdK^4-WdUXmHBE*gp^bn1Fwdn@9UHuh zIUGU(^Vx7X8xGAj%UU4&<_u+7u$nbMKeZ*EJPBnWW%Mv+VUoVm>$qXy^yRZH{Yl0G zv#|D8({a}f-DZ)fS0u6uaqd`3VG=4ts< z8%tAqcE7{CR<;93Qdt2|Ba`}qYUtDwP(B?1q~M%$Y*<96Dw3uG?ekHE0^#~h6{*l4 z2!&P9f(;j|?XD2EQwk=!uDsu=I^k+y2=WC5)3cD3nGwuj278oGOmzQFAz@Y?4a4Ng zt6fx=h9dPKJhtD2U+CX#GC?=P{H8*hD3O6Yk$VX;18K)hTf zTHqVOp8W`^34X+K2OT)T4#pe~Ac3byoYQqagqyB;$px-_z{oyZZ~#Fwcr|RIK`T$b zS5iyDAUduW0j*AiDGYZBk&LS5Z*>a+mOscQ3DTzVtY82AlQG8X1pKw6!{YsqH3ca< z85Q4{pJ!5()^i+KuUBL->3@R>6O>+=OhN|vz(U{8ddBqf0X642S60;~USny> z8>|?fk@*83lh6xpd@3SPZiP1Q;W>QhEKO!HY zhj6p%XAS%Mr_a}quzzEE4#LBgK_7!RBKE@@S2@NL$6x2~x8hm4Z2NDXC|;s(h5{+U zA}If^tJ%(hIb~^Te%DOINWkVT4Z-77(+jjIIp7}6Y6(QdWH-Y@+Otf-%5~5RjRR%- zr6fJk7(#psjU>r%d-jeb#I-Kx5bXV0Id>E-cfdq90y0^jyQ~ia#GflURhT{5dwC7C zE=jkx-gtdF9dF+>9}vecg1Im~+*ukVa^~l|t=E_L7~!-kF7l(?d}ccWA$>pw?3-$; zvXnz8g0xr_1x4F-0T?S6{O?dLQhkBvVQLGOxD9xeZyh{M`nIlu@+Np#5y$Tb=%cay zDuD_yS&E&I#c^8JV$JAVs^|Q!Bc;dV+Ld!z`jA z%4uBU(-7YT$W8_zj+OEVp^e4Odtnq=-}hJy77_KH->e%9#lAhZl0UR~j-OSst6U58 zCJI?f9d@z(Hu#8M-C_qn)VRe_AFyc+eC3)^Ca__E!iH3((Xtr;>@)upwsU&mrM*d3 zR$kiv8XDE9B%|_AuKM%Fp46AQe?9$lzTGB1uXLz1wamm)<2TyVo09F24HSeXBEedK ztWB$D$IQB?aae2169SmIrYtN6qayb8sS6wl){7{Kd5nYeGxdcU^o26DnV+b-O^UM3 zzx;t#Fot{p?m0FTHXGv%;gp)adpwivuDg6D&yT!6 z@kbI#tPi6r3GAMp?qduwegI&R|~PqtGC0T5E+u zP@d`ONCduwP9tRvb$Q)?DiFBwtjoyy>yLs|3&j4weP@Qh4@*jJTN7l4^o5Q`;qGnW zmWz5LqVXA>AwRsC4oIxfy#90|`s5Ahu~SdwDPE4J_&#dz z)ON}2c}bukZ$q~kteWvTza`Dhu7Y#E>h24mBAJ*G zyeY3pX7pGL6p1XuOd3ek+{1UlV-Jm>DYHh2#@vkNh#?aYft@k+no_)KUW7Flm#_k2 zvoHjj+;`Wz0bYC5JneFw&)xw6FYTzm@c6hVYTH@vzr%<05(ErQHFakmEhjLa@f7NO zI%j->N{GFL@X5$G^w&q~#!U;kKx^4=QT4n2nc*N4!~(D!WhpnfD~i$MjZFNUPT)1-@>05 z)sx0@W~Qg#pYk?C%Y7`q3*yek+pqsc(n8ktyaJioT$yT4F^VHfh z&*|D)k?*(%YiMy6Aeul^Ex_!U&>)M4%;7lMOyMk7~30_@@mci@~9B^C$&FP zAs%<~s1kv=^&ys9X;EWHP$Y^7C`vyC{;U|de0-SToEQ5OjKY`KH;a~kkbH)oL)g2U zdNYM4eSX{d7oDIYHO&qyjA!5Wm(=-yR_N)bp`1h#!E3PI*u7!moZn=#yF74;gsHYu zc;dBL`sT*ra0FD@Q^TXYli!-ql|2@oYUtkTeIkyJ@&{q}tgP*p0(d!m{?an&jf!(w zy{ufphzyp9dmNWvZ#l<5w(?e6DpxcFiDj*WM*N8a>MVU}2~xXHk*&ENLKve#RL zF6{Az)y|9GG$4n6ZGG9$2>Tv+i6VYw1nRu~)~5Zi=Nh~)rZwpHHudU-b6v*F#7wh`AU?|w zM&)#jUW%O0Ue88tPMw#-lju{X!mv7hLQrZ>geYKoI@;&0;s(xW;}Zv$P)hXNA$X`_XE>!t_f+Loc5qs$>n>E_yQR|01lJePuCrPeX z+}zw{aPR3l6!!CMH?ir#MR*-sv!ld@;oR9#37Syj*Xb?cVHf)T(0{D>#Co>bHClypHCbnJCrFyQ*_?}K=t_YNjE6~CSdht8 zLj%U;gffmE>=XpF#fiRsB=Ko!-~TpKFM!K?+xqj=o$$$^X^94rW(btiG3Euu5v67l z446$RRrrsNUc7g8)7%G@XORp2^k<~#KEBc(HOyB1_b9K!%FDXthV>XqXcHB=@ruCtOii`Tq6} zBvQ)NPKA;3p8m|5*E=l(j{8!ou>DPw+?At155mIqT(P2kM?hWy!(ik|>PXXP zRd@FvF~{+od8U}Tjg}6b7|&5QsNZseLvr#o)DY`DFtj-lC*e1^Aw@r%mH1`Dmd*=Ro!nSw2?@o!61Q+Bd#{M?8~iBkY5y7qH91o314DEJ7{e+xfB# zYNTEUBSFe}>)^5qmp;?M4_OeKG zLh(-u6zcEcyn$U8*WYA6@5Y1_X{IDtre?IFdF=t7fHX94B3c)C_U0yX`6tK zxO2g7h!t-&wH|y~0ldi+rpMXTP-6qG*@OFl$%=xO?h-~(pSit+ub7}~K%RaR&cK6Ub!@xy$cd+zxX(Suy~rZnCJip$J8J6VSZb9xP9O;?Vo0p;LRj>63>){ALX zL0P;&jjx|yo8t1_m@=fMm)Fj1z}qB0fXatl48WvQn^`kXy?+7zxx5cc$IxtU+~Av! z>!ZmG^3TcV{@;<|3R2=hQs7<_UxJanehy3yj0k3obp?F|dP;)-Ti@;we71tBF|r!t zhrd@UktTY`cOJgIkj_*jn9x+-qnB;CILSwR{roE zxll=oGaOWKHuXLuZ8EhfwB}y;GAM7I^ZFvo(*dFOtv^kG!sdy4sSeEz;7g5cSX2Z| z;L=39_f)8i(qcwt!;NTI+u+-w+@2Scp38LnHOWG~#*3(W444)bH?LD*Uh?oeeGMRtHj!em%Bx_?3kkxz-e}oZ zW+P#8QyHAwwc!5?B!M`@%e`zMeZSyUy>7*J{4FI9wO-3Nn!U82_C(5lMW;akp`-SQUxnzyB`VWeF6!R6>eWc zYOB+WxFY1aPy^N+j=6{MqDy>Gxd-FJ==k?0%ersBQz6au|kSsDoBTN^=?`-{G#PNDjkmIB0rr48gAu~2a2E>X(a@6Q#5SyK+8@x4tl z!8O1sK1hUD%b=TO`x!YEDz`KlPN~l>*azc6)!{&MzL~ujnws>!vO0+ z{C=iX%MhW~cV)M00zhyoRBP!!7&BG^E0FkK4wo_h*nP9{4EK$UoZI3%BgNWJjIA0e zl{UD%e;eFpG7r2`X5KmUyj1HIWxShAf!{Tkx*hiYT%-RCOO_&;Tfvj`CrS)IckY@v zQ7-kANz8lfZOI1ac}Am<45JpdA4054^Z z+usgvkv#wK#r?TyHP^Q<^)~(ieG^sjBdkHK#50M<3*8ePf3NYh310qYooM7DQ-^s3 zo|b?eHfb_;I~tE#vQGX+pYTKpH>w2Jp2GQ6=*WA0GFRD$$CVli7g3d2Dw>7;Z`ynz z;wYK0BO+=RbjVWx^LWhC*9ZfgAFnSw;L=BnzqT;es23;otIpj+U1iG!yuMRxnXHtk zVRe0v3?+RI)8qNiS%ejCa414A`*k9pvEkR+Jw#SZ)SVDL=AgmL91xUK>j4z8hdM~h zjHd(A0Vp}_8bj8kbpD()JA9ExiRmp~roR7d(vC^kcdkR+h6dijOtP`^zE3K1`5tw1 z#S18v4(>LmV22|ef+?b!YNbnN8n_ziF|m^wRRJ>{lZv|D>Flz@oIRWuZbf5&@1qX) z>LzZzf236q$PfjR*hF7~I=H~E$G&MTYd?Qp{jFQ?1vBG@hL<%!^WmQ_V(j( z9_hI`mMu$aHELLnyZiU~rI$>e9$lU+JaU0340M)vpx5B%RdI4nmF!&;TM2{zCNt@~ z>hHlSR3z44oHpt}F{5&v+|7$xyio$#p2SbrC^*9TS5LcFT)t?&iszRjMjLgiKm%M#B0 z#7IdJ^=An!h_Sc?nyANNK@&n(1JIpGg`PcFJCdM7)W}Fv5lKAw;>3YvwOv(yCEdb5GtU zEXt;#e!L(;`z|V+RJxy-#xTCr07P^cRgKsm)3SXKySIMZZ-5!xY=%BL@W!FP23q>3 z5MYaoK84po&!A>6YtflnMe$k$T~iYaLbxzrwo?pjGz;pxn*9EC7$Q$xmTK>EVl^N| zL1?@YhP~8r1%U2lXmzhEz*kO>^Dk=W35uftnykPW2MT`}ZScGp{r~zOHT}Y0GQ1FYnH5<%WaB z9Gmyx=JqFRz~_aB_MHqN>z{qho=LJNU)L)w-FhtyA-N^|c#{Pv73RPS_qh_)FU)~! zc>gQ;t7#dwo-4jS7V#){MeGjp)5{i0)imC=8(w~p6}Dtr2t@ag0_Eme7Of3)1}WDI zz|0<;2}SM^pvk<wZaJPhe%f(cl`rhja!A}_4Lglh=H_4tb>u8PwS;M|r` zutoKz3o{)a85$f8(;Ml~c2@8U-&}9TL#tWF(lZ^3EkTfP&|{A*=LWb&n_J=S_(2bk zT{&H7mtl8B0|5xc=}EQ0Tf9z*9&?YPO8!Ja*U7_!3tHd9QDvg(zDlg7k^Rr_T#8(| zuYW8)XbCK}HY8kLs4?FE_+`?YG&>S?V0N>zO>L|kFi8SU<0v0FaL?(+>ww90>XV*p z$s54FLAzBg3j{xPyH^=TXZ=o8b7p+8B0Fu;b+5i)=q3jK1m#xXTHqRh?rQ2SSgXqY zMmq7A7bhG^AeSoaPXlEyr%VSJemOP#l%_4Yp;odxehZwf4xwqch2Vn8%&$z-9 zI*3x~)?0k}(&496d?tw{V#vUGnp~%PafOF5{3Za|41nzezOlQ71H5!!%i53jao=HL%H}%nXsWHBnA#yv6Pm z5qbNSr1ttf1i@~9Wr5`K#c7U%NU+sIf4gwwjm{iKcR*_&HGrlKfO1$G_UX*1 zf>%=boQoL~{t`8DEY3*52E_&yfDrADdphA+iLGc@(&{(YR*n@Ui-=tCPmN)Pgl+Zv zN==Xwa5qHw_#wQpB~_fJE$3Q(@YH3g6@n%YMx))!iIJ5J1&ok=#XF@kcYm>8qF%>W z{ySotr!rV;vwN?hnH%5D+L`@F!u@DNNuj33Upq{hZk@+#UhyAX(%D&wyyv1&6OpJ? z%T38?t1Ajl+76`IzA9O6U{~SjLEKt%_3LdD6zm&15Dlb!BUppG!Hi8{BuJg;vDgMr z%%>Ut?B!%3){))$+Q9J5JX$?_?97|SP|5`mVxI}|@aU4CJjHZe387+xndgbTS!hVk zZhtm_QlPuKv;1G7c7k@i+%GE7CEn1U@v(shbAIx9{&$2-UATo%V2{yR*G**Qq6Uvn z{2oMwX|JDao3zL{Y;j*RqNLyescE(I{3TIT2nM>~JB!)t+~@l|hAVSUtr3NodOjFchxDF5uc>%dlOr;zT^Qgx19mPFnHSLzoGU z+2s(LPxYCae+Ku^8*zOwh*=$$tPgB&R^+iwK7R%0wKzM6(sGumQ5Npad>kK2$!1)y zOa5T9ao=-Rw&_o^21jTaiI`8eogus%fhQ5(ewd+a%IWX?Q>Q#XKbN|N7;CDJ%0jhv zTSzsf>+(i_M>RZaRI5w_>N2|om%-54FGG@l_C8}C;I74dPOB{+4`}*s!@tqxB{n$X zM=A&gVL9eM3?y>_ak4bqO2GkJTMG0~4so~`*C$ZHO~TAdE#y@!s_rp?Q+Yv-(P*ky zKe(pkv_qGh|LQlf${92Cy^;;5Kju#~6a8cAhhD57X2Ll{{WrcFc_$F@j&nvdYx`VK zB+?8@6EM&%pJG*m0TiIrI*}Q|c!SgZY~1@qnue+ZFq} z?BD?bFKhQzmk_99X4rCqeE#0#d}vtxoXS8d0(M6&+~oI6lVeKLss%{ zylPSi7O~Qkg5a*3xRa6*`=^cP3XN`~{sv35qaiXmeMzMX5efSz;UX9-x7m3C4c$J1T)E2d&bpP6@&XJ_vDDLx zz-QO}*Y`(2G(vWvh~uapbWVVXjkKU{jO>~#htGB>Cw!0h z7ghIl2N;wRkQ_ijkPhi?P`Y78Lb^e4q&sv#De3MIX%Pg59>SqZK)MB_k#640^ZntS zKj3`s*=L`<)?RzvJ2J8G)iKor`+u~yNEB}vYsg69uAa-Hj8m-0?Pz0atGZ|X@P9mC zES@^(;9ZKRQEl2lva>-J&96j>%!kWVL`}|zt%2bq5LL#wR8unIz0u~TsE*diMpcc} zY>a|aGI%+c)ov%Ch_f6Oh;F$#n8<}56XRJqux<=@;P|9NXR9lynI)MbG7T3 z@z>k7&*cAFl6aQa7d=)FYtzA^J?E|Ow~S6y2X~DgzVHX86jK^9uhyQGAl~e`C8Dc{ zqcrxEw!h&roED>Kv=zob6r^eort&Gm#!t5i~K zZSAMGyrpcR1oeNTWG(i2Ml)j=@#Zyk2C7@v(Q9WA7NNvwH;U-GEzHNsPPaY$|Ki;m zE7=nWAUFLA5E^k6lLKodi`>r{Ic#b22!-kI0UT4Lb=6TdF_z0&t&S3tcl5oVpY2Wu zq!)`UNGpoQUe+4S`%3{H1AR%apA06ocK(v&DM6*}xK~^xV~chCv$tbs)Io!#l<6%` zTTF$2Gq$#u@&qWyHNtK}*FCw5cNDpE4RMBV<7rab!2AKC^?d#>3;0af`}pycT#Ddt zG7U}4k6DS@lO;Xc$uRJ|4GQrs;zO&xaR>Y9zE1fTMOcKRLa2S{=q5@3GFE!{7fK}ay#yvV9YBLJ$Cu*B6^&A z+)l9OXv@+tL^Y_M)(MSOQ0D+2F#CvEF8y6o(SI^Z=NE*vi1RTlPQv|BD5+IMCw5lB zm-QoOND^t6%UoiV8fPp$KwKbeKMIB8WO(}*?M&LU|3O9m>4;E^4w8f~?*TwiDV?`iBI7mij?pL4?O zy<)XR;aHF&MNFxo^>6k(Qfjr``n9z2$x>MEt*P=BfQDYx5;9Zu3&DE~KC-+Yq;^$8 zzZI=K^C}5jHYxtFIn4u#d0{xD6`%8-^5jCDXL8UP-GQyvaJk=2!L}s-cs#ZI6k6H$6)Kow{?u zXGq>8tUCTW1lIf~bwvo5g@ISGZiU1-Trh}ZS{QlOYumq2G*W*DcinmdNvAi)44mT4+|PX*is< zufn?Sbts~#L=y5g}T~f295x z%g1L%*$K6rB(MCE``boSk$L;gH!bmntxQGV8F9AO&xdEO6jpHi;IxL+N@9yIwx=c! zHb+ggXn}BrVaa{}OqS_DX*b!s@IRG{C}G~?+y1aA(xGLRg>T^FL_NlIjZmX@#?Mu& z^!a~Rj3M^_nr<#cwoiu-e-Wo$Q5+O@B$TYcLvrGE&^@q?A6qsCbCJFxanpQ@Z>+5e zoH5%~-oE^;WTmv!C99;TIxiofBhW;7(FDAQqGh&=UaKs9C_F%LUbH((VPa!=ooDOC z#V+j(b*l61F4qR{Pz^sTC)}_e98H;qh9*#TMg=5&#sfDfn3Jc`_7mggh_N`_gD-F& z?q{JH_X%rT&wpvMKgELAoe}U>oYL`{QiP$+49M6#3@uP2)ppl$eF#zfw5!kLpK?cL ztSlv>os@$MEuAGD&H=Trrm+f8(LBBZQT!8<#4}7zp|QXQ936om6vRJ*=F)ulJc1@g z>p#A3r1N{d-gNN@{xh$pF(O6nqMzO4EX9T z>p*`Ok;E5w;6_^%VW8ImB;tbU!r!t4nOCMsm=iRwgh^9pAGPYgrlY&>MvP7zt7pw* z->h`mQ!vkBoz3t}3!P|1j_>9|hVuF7o*M2H<>2{? z_)<9$-F)1nU12iFK#!ti3&i@Jk}V9<&6E z@46SW`7zUvs_eKuNq@m2&%KAFoWiWgm`W5B%L3j0Bmj})zBz&nRJ@eFviWS-f?I^0^)< zYc>fbrS2SP))EMu6rd&r8pDMa(m_q3PHe@ys;7buHICjd9b203$8Z1xpzo;*np*E%b{54m{rvgt>t_0>7mR} z7xVNmt3cRS6=3qBcL9{Ky7;OT80CF(S>fgef_JlB!Uq`Kl5i*6l+Q@^1`5oK=l zgsVgczeZa?xIvr?WpcwA)qK|8-W?Ahhk^Hillh4eqq|d5KXpZ5q404yz&^v;KbHwiboIx|#!RF4Aq zOL9}+Zq>M@)GgB*^a$J+cg}H1YmT9s&qzxBz$kvZmp*-Y|MCQteNhhxpM^8uqxGM$ zV2I9kO%JGko=jr%0xARf3iefN=y!UP`36;Zj!jM*TCdgXrru_LM$Ed@UDpaig+C_1 zXM!=O;Hg#a^a)>Go|h!k<(&Qu(_iu?e~0exr)yWE6U@OkJ__YkYuiQ>m?SQ@_WaN9 zbZ-7CRzA)EWioGd9aEc=AJFj|^ZcDD1C@%s&NWqK_HBcSd*K;~}Q z2r&qOla_E(TBT(@`j|5WRW@XnypkyO7fy=h#-h=)0p_ggm%H>7W1 zBhMB26F|o(hlx!TH)HvMZd;=sWeD#2D>35hkac+beG8)fE0=97#Fck~O!G_H!X*CXoZ?H^a$z+L_(G3WQB~9n0pN_mty#FWBP?%5`wB z5!@VGqB)f_l)hn=Q;!`U*q!D(=0#ZHV=D?JuJAG%1I98rt5=Oc-@S!idp7Z?|8KMk zsI0DWwS0#n(s-s@%lmfFW3QxnwG)YKPK3f9pR|c22I;Wcb&S=YSdilV0 ze`qTmWy3*wId)T5T8to4wpYbGr+XZ@F3r>QfTP;+ou&AP>vj+ClA~*rXAx5Zbn57} z8Yt1w-y{`~BP+yV^aA))(#f13Q`_CjR^{^E@9kXdm=T{@W@4YYqjOUZhJPHHK=$QV zh?67b5MR<4d_Nj^-lXmG;v7Denn&f_iI81*WPJ>@SEmz2w1NuWN}y$hX>F z>d7hy$Rw)vh&VmY8I?!?5j=Tk>C4(TpU?XC_uOrX$*cv;Z4nct_AIVpxU@vt zp)qs5;}C6+oV}w2#s({!jQi^06L>xzt6~(xD@bj_j@6&(IhES#3r*(Pp zkmHdNtS#oarSUA1Cu5(hDp|Q<*e*f4Zq< z#)Tdik{j3vwJIde8s-n)R{|1tk>rrcql%54{gcVsg|P--(K=h5{HCt#Iw)6N{u|gD zcW8Y%=qjEkoV{e8J9SK6K|z2}XfBx^exyv0 zk!}^PeF)|*JcPOLt>VdOua)S_pT1f~pnLRWJh=p_-Q4*p#fh%~-yC~efC3a}sv&g*uy^ey4&e}POoo_#f0ej1z-(vv9? z^7X~JT(yQN>W$l*aYZ{Bx2o3Er);Pa%g(?Efqk1IhHvqWumBx5fWlpo|38JZJq}j^ zg&`X$YA04;p*GgD`y>!!|1arkbrAwS3Q?n-^F6?4+S=BWTLHakaU{D7DX}3HGq&)Ud>Vx`(Y2h}{*(Y{~ zBxy$+2MP%K2IuP594%XjVv-nNOZvcPv!@vSW~(`&2Rlu3$Z|k~M~m^{qHrwDzIe1h zKT*iaQ|&kmvq@$~^slB)qr&)#fn{O_e(!ruu(H3Dtx@$p zB>^-u$HzJE_JDJLFBW-BBAFZs|C-{`rjM}KIORrRIUN(?e)h}Hl}y&`;Y>xKcpp4s zEeevez1nE%lTBePUVEbJB(LV%vQsYStti8X8;l`~6*Y+dG4Y-}UBdmLucPnaDYxwF z?-`~K=qQ&TXDH7o6pCE9Yy`W~v=z#59iTnC8dDw~ASRvMj~m z^l7w{&q&xVVo>DxPxmZa zFSE^h?n&*jdOh3=^Q2Y&(jF#|;!nm%_v)k#@$Uv(U+Q_tImbtm!1_LW!Q-?Hg72gb z0;2n85=*22_i7;>i#K;K_(DP8CLmA>@J~!f_tU?U5-lhNHj`PSqvj4{=r>{G?A?8B zaP3kXhM(&c8uI?d8A*Ec1Do26SUWzGxUgko6LmYkH0QUU7AyQ~gAsPOasbtModAk1 z<;M*kUF-nlbR|Q)P~+acRFkF|EOsW>_Td*ks-g5A1eB1l(GP&qnmCZ0!)S3WbPEWx z9)27QPC!l731GqCE$s{6bYBt+-tJ8we+Fgc%lj@DnxK7 zeDe{CACJ}LY0$Yp)5t$vj})5H6b&`&)0$Gr=N)b?uj}-e5kR&A9Xn6;F8%45OUTHN z$@v$#FsxA{UH)&%yan$b3>xAnl^2!TK9d* zRlcPRLdEke#^qba(v7wD=6zauR^ellz+icIE6j#KFaZQn=$JZ6%}%Qn39tIqzh}mj zo~@k`fKNt#l}ny}+5FX?hiv^PXydz4S?b!2+i{ZY z14-D|-;pKi_5?`#vgZjqb={FUSoG0tDPae5+w%xXGhmVSb|5xYfJ=$4ZxF}J!B#0! z8MWzK8zBWw|2UFJ3(nm5=iQ~zqlWr^|2V!-$}yQ=1E)M!rmHa??+<=B={g@8ajytG zAObekX~Hy<&-dLx(`AuEaCZDeH|ZmORkdZ#SrLhM*JV<odAJId- zF>NX`Vn5vY^IIYC>h0Z75|;!Ey;S6H)|&XJQp!qcGx)rLY5*C{=Q9D#adf!qW*ArH z&zn{p3U@D0e=E2KFMkBu6v97O7YHc<9swQBu}3uWM^2NnRBm|FD&P6>tMkTh>f|dsQv=zqY;Si z{lf$hJB&V1LuxFWR?qGcUXULuty6p}P_1MJh7FYQ?;2=D4ZjdaGYl|+!bb1Vq7}Zi z2IV8yB{XbL(xDj*SP_h00qq3a8?t67!tfTT5sDrvf<VxxI9SgrMhRs_TDQ(7?^P~wC-@IoYnT0EX7)Bg3X zO+R|*s_gxnv-DaybfN^=OlS?HlA_I4ensQ>do6pHjr>;Du&+6ncMAY2oO;Eg53ET* zoe)`%NRNnhDg^jf!2^nlLMuPEToH>*O&cvs z6Xb2P-C^{A+tL}e&$MdW(|s@u1d8v|3kv%h@+CS1)Y`L-qRn`B853KwDzk+ov)Ra^ zmL|on4Binp05GVBaGA8M{>PXbr(WE*yZY~ya5K;RN=^=ygRmW=p4^{bJLjJtThTaP zIH3|kH31I*hob9A82-3hTu<{x2)*Zy@j+Rj^fa7Rvup@^A+qZI@%naCpL$OJV#U#0 zGVu_p6QFkAp3Zd$-gmALG%?^_rNR^e)TQzDGgTC>rx43Th1Apb@O?*feN1l-NQ#{% z>UW^@a;(TQ^?H$OqxLf4KTXrJh8w+zlM9I~r%s;Yq8gIyBOj6HX5cxu$SKI?eZndv zl8*Ix1TBRS!%#Bg_tx z(CwZ&Gkixc;qjX@5jHwCX8$QXjf;#z_Eo3jXZKHgzzYD=AWFAcZ!%7Tx56o7)sY39 z^|j{%wEpABpGj(x*4`gp8M+`43pcV`AbF>Luo7zO~8yov}wG*eo3IsBNSCmI;|Z?o3O zkJ8->kn=A6XHFW|+aq=u1#Ni1r}$5>P8pe?Vj%Dfhp(cipy038`qQ)TKAFp={@y*< z!d(SZgSzr@as22KUZxhBx=J>5>b-34wG&>?nm@}tX>q&@1mOX%O{fuV_XG5{ppR9E z0Ck_BD^VYg#`pqwI`9T*4cM|J@*2NH+=yPm3S0c!czh*(gYJxlu;RqN9>z2PSMCn7gJVL2?lhUOaAk7=q(C#lx*pMSN+!V}~aL4g-=MF={1!qM({ z@Mu)@)|blUIf;}^!<`3VUb^t#+lW!dl+mACp{#bXW^noo8NDRcW8o( zwJ0)}!W<*CfHGc28n4-W@=#3FO$cSKPSV)z35&)mmuwG90Hbg5rVv$pBP`pR9mzA@ z4v?EpAc_|HoqrlrHD4iRm*w%FgKPn70n;FDCY$BUVRgdX(y#>==ax)`n&SBQ zk;EI4Vj1uczXQ&YdL7{=T!)8*FbKke!0~<$1aS0I)ynH(e|&{g`d-S0=qcVVrpn{bxjV46r&Ysxr$!W4G%NAb gPFveF&wB2NZb_EUm`TrfK)_GsrRIxDdGq)G2h&sN4*&oF diff --git a/docs/user/app_faq.md b/docs/user/app_faq.md deleted file mode 100644 index 0eeb8f4c..00000000 --- a/docs/user/app_faq.md +++ /dev/null @@ -1,19 +0,0 @@ -# Frequently Asked Questions - -## "This app responded with Status Code 404" error returned while picking a filter from a slash command - -If a 404 error is being returned while trying to use a slash command that allows for filtering, there is most likely a typo within the Interactivity Request URL for your application. - -- Navigate to [https://api.slack.com/apps](https://api.slack.com/apps) and select your Nautobot ChatOps application that is currently in development -- Under **Features**, navigate to "Interactivity & Shortcuts" -- Under **Interactivity**, confirm that the Request URL is of the format: `https:///api/plugins/chatops/slack/interaction/` (Note the trailing slash) - -## Can I interact with Nautobot within a Slack thread? - -Slack does not currently support using slash commands within a conversation thread. Nautobot can be mentioned in a thread and will parse the text after the bot's name for a command. - -For example, if you want to run the slash command `/nautobot get-devices site site-a`, the equivalent bot mention command would be (assuming your bot name is `@nautobot`) `@nautobot nautobot get-devices site site-a`. - -## The Chat Commands do not allow me to select locations/devices/interfaces/etc - -Nautobot ChatOps now uses your Nautobot user permissions in order to process commands. Please link your Chat Account with your Nautobot Account. diff --git a/docs/user/app_getting_started.md b/docs/user/app_getting_started.md index 24ea0099..a49f69d3 100644 --- a/docs/user/app_getting_started.md +++ b/docs/user/app_getting_started.md @@ -4,16 +4,58 @@ This document provides a step-by-step tutorial on how to get the App going and h ## Install the App -To install the App, please follow the instructions detailed in the [Installation Guide](../admin/install.md). +To install the App, please follow the instructions detailed in the [Installation Guide](../admin/install/index.md). -## First steps with the App +## Link Nautobot Account -!!! warning "Developer Note - Remove Me!" - What (with screenshots preferably) does it look like to perform the simplest workflow within the App once installed? ++++3.0.0 -## What are the next steps? +Nautobot ChatOps now uses the built-in Nautobot permissions for Nautobot Objects (Devices, Locations, Racks, etc.). Each user will need to link their Nautobot Account with their Chat Platform User Account. Login to Nautobot then access the Link ChatOps Account within the Plugins menu. Here you can provide your email address and select the ChatOps Platform you are using, then click the Look up User ID from Email to get your Chat User ID. -!!! warning "Developer Note - Remove Me!" - After taking the first steps, what else could the users look at doing. +![Link Accounts](../images/account_link.png) -You can check out the [Use Cases](app_use_cases.md) section for more examples. +## Built-in Commands + +Each command can be invoked with `help` sub-command to display all sub-commands with the description. + +### `/clear` Command + +Scroll the chat history out of view. This command has no sub-commands. + +### `/nautobot` Command + +Interact with Nautobot by utilizing the following sub-commands: + +| Command | Arguments | Description | +| ------- | --------- | ----------- | +| `about` || Provide a link for more information on Nautobot Apps. | +| `change-device-status` | `[device-name]` `[status]` | Set the status of a device in Nautobot. | +| `get-circuit-connections` | `[provider-slug]` `[circuit-id]` | For a given circuit, find the objects the circuit connects to. | +| `get-circuit-providers` || Get a list of circuit providers. | +| `get-circuits` | `[filter-type]` `[filter-value]` | Get a filtered list of circuits from Nautobot. | +| `get-device-facts` | `[device-name]` | Get detailed facts about a device from Nautobot in YAML format. | +| `get-device-status` | `[device-name]` | Get the status of a device in Nautobot. | +| `get-devices` | `[filter-type]` `[filter-value]` | Get a filtered list of devices from Nautobot. | +| `get-interface-connections` | `[filter-type]` `[filter-value-1]` `[filter-value-2]` | Return a filtered list of interface connections based on filter type, `filter_value_1` and/or `filter_value_2`. | +| `get-manufacturer-summary` || Provides a summary of each manufacturer and how many devices have that manufacturer. | +| `get-rack` | `[site-slug]` `[rack-id]` | Get information about a specific rack from Nautobot. | +| `get-vlans` | `[filter-type]` `[filter-value-1]` | Return a filtered list of VLANs based on filter type and/or `filter_value_1`. | + +!!! note + All sub-commands are intended to be used with the `nautobot` prefix. For example, to retrieve a filtered list of VLANs, use the command `/nautobot get-vlans`. + ++/- 3.0.0 + Due to the removal of slug in Nautobot 2.0, the command shortcuts will use the PK value of an object. This will be + changed to the Natural Key or PK in an upcoming release. + +### Integrations Commands + +The `nautobot-chatops` package includes multiple integrations. Each integration adds chat commands described here: + +- [Cisco ACI](./aci_commands.md) +- [AWX / Ansible Tower](./ansible_commands.md) +- [Arista CloudVision](./aristacv_commands.md) +- [Grafana](./grafana_commands.md) +- [IPFabric](./ipfabric_commands.md) +- [Cisco Meraki](./meraki_commands.md) +- [Palo Alto Panorama](./panorama_commands.md) diff --git a/docs/user/app_overview.md b/docs/user/app_overview.md index 06ff5d32..aaf87b1a 100644 --- a/docs/user/app_overview.md +++ b/docs/user/app_overview.md @@ -7,24 +7,23 @@ This document provides an overview of the App including critical information and ## Description +The ChatOps framework provides Network Engineers power to query Nautobot or their Network (through ChatOps plugins) while staying within their preferred Chat application. The goal of ChatOps is to bring people, processes and Automation together. + +{% + include-markdown '../glossary.md' + heading-offset=1 +%} ## 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? +- Network Engineers +- Network Automation Engineers +- Site Reliability Engineers +- Network Operations ## 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 Plugins 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? +- Glenn Matthews (@glennmatthews) +- Josh VanDeraa (@jvanderaa) +- Jeremy White (@whitej6) +- Stephen Kiely (@smk4664) diff --git a/docs/user/app_use_cases.md b/docs/user/app_use_cases.md deleted file mode 100644 index dc06944f..00000000 --- a/docs/user/app_use_cases.md +++ /dev/null @@ -1,12 +0,0 @@ -# Using the App - -This document describes common use-cases and scenarios for this App. - -## General Usage - -## Use-cases and common workflows - -## Screenshots - -!!! warning "Developer Note - Remove Me!" - Ideally captures every view exposed by the App. Should include a relevant dataset. diff --git a/docs/user/external_interactions.md b/docs/user/external_interactions.md deleted file mode 100644 index eaba5b56..00000000 --- a/docs/user/external_interactions.md +++ /dev/null @@ -1,17 +0,0 @@ -# External Interactions - -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. diff --git a/docs/user/faq.md b/docs/user/faq.md index 318b08dc..0eeb8f4c 100644 --- a/docs/user/faq.md +++ b/docs/user/faq.md @@ -1 +1,19 @@ # Frequently Asked Questions + +## "This app responded with Status Code 404" error returned while picking a filter from a slash command + +If a 404 error is being returned while trying to use a slash command that allows for filtering, there is most likely a typo within the Interactivity Request URL for your application. + +- Navigate to [https://api.slack.com/apps](https://api.slack.com/apps) and select your Nautobot ChatOps application that is currently in development +- Under **Features**, navigate to "Interactivity & Shortcuts" +- Under **Interactivity**, confirm that the Request URL is of the format: `https:///api/plugins/chatops/slack/interaction/` (Note the trailing slash) + +## Can I interact with Nautobot within a Slack thread? + +Slack does not currently support using slash commands within a conversation thread. Nautobot can be mentioned in a thread and will parse the text after the bot's name for a command. + +For example, if you want to run the slash command `/nautobot get-devices site site-a`, the equivalent bot mention command would be (assuming your bot name is `@nautobot`) `@nautobot nautobot get-devices site site-a`. + +## The Chat Commands do not allow me to select locations/devices/interfaces/etc + +Nautobot ChatOps now uses your Nautobot user permissions in order to process commands. Please link your Chat Account with your Nautobot Account. diff --git a/invoke.example.yml b/invoke.example.yml index df0a8ebc..f9e42e74 100644 --- a/invoke.example.yml +++ b/invoke.example.yml @@ -9,4 +9,6 @@ nautobot_chatops: - "docker-compose.base.yml" - "docker-compose.redis.yml" - "docker-compose.postgres.yml" + - "mattermost/docker-compose.yml" + - "ansible/docker-compose.yml" - "docker-compose.dev.yml" diff --git a/invoke.mysql.yml b/invoke.mysql.yml index e7372544..5002f6c9 100644 --- a/invoke.mysql.yml +++ b/invoke.mysql.yml @@ -9,4 +9,6 @@ nautobot_chatops: - "docker-compose.base.yml" - "docker-compose.redis.yml" - "docker-compose.mysql.yml" + - "mattermost/docker-compose.yml" + - "ansible/docker-compose.yml" - "docker-compose.dev.yml" diff --git a/mkdocs.yml b/mkdocs.yml index b0cf8820..032b6c26 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -101,24 +101,66 @@ nav: - User Guide: - App Overview: "user/app_overview.md" - Getting Started: "user/app_getting_started.md" - - Using the App: "user/app_use_cases.md" - Frequently Asked Questions: "user/faq.md" - - External Interactions: "user/external_interactions.md" + - Integrations: + - "user/aci_commands.md" + - "user/ansible_commands.md" + - "user/aristacv_commands.md" + - "user/grafana_commands.md" + - "user/ipfabric_commands.md" + - "user/meraki_commands.md" + - "user/panorama_commands.md" - Administrator Guide: - - Install and Configure: "admin/install.md" + - Install and Configure: + - "admin/install/index.md" + - "admin/install/slack_setup.md" + - "admin/install/mattermost_setup.md" + - "admin/install/webex_setup.md" + - "admin/install/microsoft_teams_setup.md" + - "admin/install/aci_setup.md" + - "admin/install/ansible_setup.md" + - "admin/install/aristacv_setup.md" + - "admin/install/grafana_setup.md" + - "admin/install/ipfabric_setup.md" + - "admin/install/meraki_setup.md" + - "admin/install/panorama_setup.md" - Upgrade: "admin/upgrade.md" - Uninstall: "admin/uninstall.md" - Compatibility Matrix: "admin/compatibility_matrix.md" - Release Notes: - "admin/release_notes/index.md" - - v1.0: "admin/release_notes/version_1.0.md" + - v3.0: "admin/release_notes/version_3.0.md" + - v2.1: "admin/release_notes/version_2.1.md" + - v2.0: "admin/release_notes/version_2.0.md" + - v1.11: "admin/release_notes/version_1.11.md" + - v1.10: "admin/release_notes/version_1.10.md" + - v1.9: "admin/release_notes/version_1.9.md" + - v1.8: "admin/release_notes/version_1.8.md" + - v1.7: "admin/release_notes/version_1.7.md" + - v1.6: "admin/release_notes/version_1.6.md" + - v1.5: "admin/release_notes/version_1.5.md" + - v1.4: "admin/release_notes/version_1.4.md" + - v1.3: "admin/release_notes/version_1.3.md" + - v1.2: "admin/release_notes/version_1.2.md" + - v1.1: "admin/release_notes/version_1.1.md" - Developer Guide: - - Extending the App: "dev/extending.md" - Contributing to the App: "dev/contributing.md" + - Design Documentation: "dev/design.md" - Development Environment: "dev/dev_environment.md" - - Architecture Decision Records: "dev/arch_decision.md" + - Release Checklist: "dev/release_checklist.md" + - Glossary: "glossary.md" - Code Reference: - "dev/code_reference/index.md" - Package: "dev/code_reference/package.md" + - Models: "dev/code_reference/models.md" - API: "dev/code_reference/api.md" + - Dispatchers: + - "dev/code_reference/base.md" + - "dev/code_reference/slack.md" + - "dev/code_reference/webex.md" + - "dev/code_reference/ms_teams.md" + - "dev/code_reference/mattermost.md" + - "models/accessgrant.md" + - "models/commandtoken.md" + - "models/chatopsaccountlink.md" - Nautobot Docs Home ↗︎: "https://docs.nautobot.com" diff --git a/nautobot_chatops/__init__.py b/nautobot_chatops/__init__.py index 0ef2d619..6fcfa54d 100644 --- a/nautobot_chatops/__init__.py +++ b/nautobot_chatops/__init__.py @@ -4,23 +4,156 @@ __version__ = metadata.version(__name__) -from nautobot.extras.plugins import NautobotAppConfig +from django.conf import settings +from nautobot.apps import ConstanceConfigItem, NautobotAppConfig -class NautobotChatOpsPluginConfig(NautobotAppConfig): +_CONFLICTING_APP_NAMES = [ + # App names that conflict with nautobot_chatops + "nautobot_plugin_chatops_aci", + "nautobot_plugin_chatops_ansible", + "nautobot_plugin_chatops_aristacv", + "nautobot_plugin_chatops_grafana", + "nautobot_plugin_chatops_ipfabric", + "nautobot_plugin_chatops_meraki", + "nautobot_plugin_chatops_panorama", +] + + +def _check_for_conflicting_apps(): + intersection = set(_CONFLICTING_APP_NAMES).intersection(set(settings.PLUGINS)) + if intersection: + raise RuntimeError( + f"The following apps are installed and conflict with `nautobot-chatops`: {', '.join(intersection)}." + ) + + +_check_for_conflicting_apps() + + +class NautobotChatOpsConfig(NautobotAppConfig): """Plugin configuration for the nautobot_chatops plugin.""" name = "nautobot_chatops" - verbose_name = "Nautobot ChatOps App" + verbose_name = "Nautobot ChatOps" version = __version__ - author = "Network to Code, LLC" - description = "Nautobot ChatOps App." + author = "Network to Code" + author_email = "opensource@networktocode.com" + description = """ + Nautobot App that is a multi-platform chatbot supporting Slack, MS Teams, Cisco Webex, + and Mattermost that simplifies creating chat commands with pre-defined design patterns. + Includes the 'nautobot' command that simplifies fetching and updating data in Nautobot. + """ base_url = "chatops" required_settings = [] - min_version = "2.0.0" - max_version = "2.9999" - default_settings = {} + default_settings = { + # = Common Settings ================== + # Should menus, text input fields, etc. be deleted from the chat history after the user makes a selection? + "delete_input_on_submission": False, + "restrict_help": False, + # As requested on https://github.com/nautobot/nautobot-plugin-chatops/issues/114 this setting is used for + # sending all messages as an ephemeral message, meaning only the person interacting with the bot will see the + # responses. + "send_all_messages_private": False, + # Session Cache + "session_cache_timeout": 86400, + # = Chat Platforms =================== + # - Mattermost ----------------------- + "mattermost_api_token": "", + "mattermost_url": "", + # - Microsoft Teams ------------------ + "microsoft_app_id": "", + "microsoft_app_password": "", + # - Slack ---------------------------- + "slack_api_token": "", # for example, "xoxb-123456" + "slack_signing_secret": "", + "slack_ephemeral_message_size_limit": 3000, + # Any prefix that's prepended to all slash-commands for this bot and should be stripped away + # in order to identify the actual command name to be invoked, eg "/nautobot-" + "slack_slash_command_prefix": "/", + # Since Slack Socket is meant keep Nautobot server out of public access, slack needs to know + # where to find Static images. If Django Storages is configured with an External server like S3, + # this can be ignored. + # If neither option is provided, then no static images (like Nautobot Logo) will be shown. + "slack_socket_static_host": "", + # - Cisco Webex ---------------------- + "webex_token": "", + "webex_signing_secret": "", + "webex_msg_char_limit": 7439, + # = Integrations ===================== + # - Cisco ACI ------------------------ + "aci_creds": "", + # - AWX / Ansible Tower -------------- + "tower_password": "", + "tower_uri": "", + "tower_username": "", + "tower_verify_ssl": True, + # - Arista CloudVision --------------- + "aristacv_cvaas_url": "www.arista.io:443", + "aristacv_cvaas_token": "", + "aristacv_cvp_host": "", + "aristacv_cvp_insecure": False, + "aristacv_cvp_password": "", + "aristacv_cvp_username": "", + "aristacv_on_prem": False, + # - Grafana -------------------------- + "grafana_url": "", + "grafana_api_key": "", + "grafana_default_width": 0, + "grafana_default_height": 0, + "grafana_default_theme": "dark", + "grafana_default_timespan": "", + "grafana_org_id": 1, + "grafana_default_tz": "", + # - IPFabric --------------------- + "ipfabric_api_token": "", + "ipfabric_host": "", + "ipfabric_timeout": "", + "ipfabric_verify": False, + # - Cisco Meraki --------------------- + "meraki_dashboard_api_key": "", + # - Palo Alto Panorama --------------- + "panorama_host": "", + "panorama_password": "", + "panorama_user": "", + } + constance_config = { + "fallback_chatops_user": ConstanceConfigItem(default="chatbot", help_text="Enable Mattermost Chat Platform."), + "enable_mattermost": ConstanceConfigItem( + default=False, help_text="Enable Mattermost Chat Platform.", field_type=bool + ), + "enable_ms_teams": ConstanceConfigItem( + default=False, help_text="Enable Microsoft Teams Chat Platform.", field_type=bool + ), + "enable_slack": ConstanceConfigItem(default=False, help_text="Enable Slack Chat Platform.", field_type=bool), + "enable_webex": ConstanceConfigItem(default=False, help_text="Enable Webex Chat Platform.", field_type=bool), + "enable_aci": ConstanceConfigItem(default=False, help_text="Enable Cisco ACI Integration.", field_type=bool), + "enable_ansible": ConstanceConfigItem(default=False, help_text="Enable Ansible Integration.", field_type=bool), + "enable_aristacv": ConstanceConfigItem( + default=False, help_text="Enable Arista CloudVision Integration.", field_type=bool + ), + "enable_grafana": ConstanceConfigItem(default=False, help_text="Enable Grafana Integration.", field_type=bool), + "enable_ipfabric": ConstanceConfigItem( + default=False, help_text="Enable IP Fabric Integration.", field_type=bool + ), + "enable_meraki": ConstanceConfigItem( + default=False, help_text="Enable Cisco Meraki Integration.", field_type=bool + ), + "enable_panorama": ConstanceConfigItem( + default=False, help_text="Enable Panorama Integration.", field_type=bool + ), + } + caching_config = {} + def ready(self): + """Function invoked after all plugins have been loaded.""" + super().ready() + # pylint: disable=import-outside-toplevel + from nautobot_capacity_metrics import register_metric_func + from .metrics_app import metric_commands + + register_metric_func(metric_commands) + -config = NautobotChatOpsPluginConfig # pylint:disable=invalid-name +config = NautobotChatOpsConfig # pylint:disable=invalid-name diff --git a/nautobot_chatops/tests/test_api.py b/nautobot_chatops/tests/test_api.py index 4c3e56ad..3113ce4e 100644 --- a/nautobot_chatops/tests/test_api.py +++ b/nautobot_chatops/tests/test_api.py @@ -1,28 +1,80 @@ -"""Unit tests for nautobot_chatops.""" -from django.contrib.auth import get_user_model -from django.test import TestCase +"""Test cases for Nautobot Chatops API.""" +from importlib import metadata + from django.urls import reverse -from rest_framework import status -from rest_framework.test import APIClient -from nautobot.users.models import Token +from nautobot.core.testing import APITestCase, APIViewTestCases +from nautobot_chatops.models import AccessGrant, CommandToken + + +nautobot_version = metadata.version("nautobot") + + +class AppTest(APITestCase): # pylint: disable=too-many-ancestors + """Test cases for the Nautobot_chatops App.""" + + def test_root(self): + """Validate the root for Nautobot Chatops API.""" + url = reverse("plugins-api:nautobot_chatops-api:api-root") + response = self.client.get(f"{url}?format=api", **self.header) + + self.assertEqual(response.status_code, 200) + + +class CommandTokenTest(APIViewTestCases.APIViewTestCase): # pylint: disable=too-many-ancestors + """Tests for the CommandToken Endpoint.""" + + model = CommandToken + brief_fields = ["comment", "display", "id", "platform", "token", "url"] + # Nautobot 1.4.0 added created/last_updated to builtin serializers. + if nautobot_version >= "1.4.0": + brief_fields = ["comment", "created", "display", "id", "last_updated", "platform", "token", "url"] + create_data = [ + {"comment": "Test 4", "platform": "mattermost", "token": "token4"}, + {"comment": "Test 5", "platform": "mattermost", "token": "token5"}, + {"comment": "Test 6", "platform": "mattermost", "token": "token6"}, + ] + bulk_update_data = {"comment": "Testing"} + choices_fields = ["platform"] -User = get_user_model() + @classmethod + def setUpTestData(cls): + """Generate test data for the CommandToken Endpoint.""" + CommandToken.objects.create(comment="Test 1", platform="mattermost", token="token1") + CommandToken.objects.create(comment="Test 2", platform="mattermost", token="token2") + CommandToken.objects.create(comment="Test 3", platform="mattermost", token="token3") -class PlaceholderAPITest(TestCase): - """Test the NautobotChatOpsPlugin API.""" +class AccessGrantTest(APIViewTestCases.APIViewTestCase): # pylint: disable=too-many-ancestors + """Tests for the AccessGrant Endpoint.""" - def setUp(self): - """Create a superuser and token for API calls.""" - self.user = User.objects.create(username="testuser", is_superuser=True) - self.token = Token.objects.create(user=self.user) - self.client = APIClient() - self.client.credentials(HTTP_AUTHORIZATION=f"Token {self.token.key}") + model = AccessGrant + brief_fields = ["command", "display", "grant_type", "id", "name", "subcommand", "url", "value"] + # Nautobot 1.4.0 added created/last_updated to builtin serializers. + if nautobot_version >= "1.4.0": + brief_fields = [ + "command", + "created", + "display", + "grant_type", + "id", + "last_updated", + "name", + "subcommand", + "url", + "value", + ] + create_data = [ + {"command": "*", "subcommand": "*", "grant_type": "organization", "name": "test4", "value": "*"}, + {"command": "*", "subcommand": "*", "grant_type": "channel", "name": "test5", "value": "*"}, + {"command": "*", "subcommand": "*", "grant_type": "user", "name": "test6", "value": "*"}, + ] + bulk_update_data = {"command": "nautobot"} + choices_fields = ["grant_type"] - def test_placeholder(self): - """Verify that devices can be listed.""" - url = reverse("dcim-api:device-list") - response = self.client.get(url) - self.assertEqual(response.status_code, status.HTTP_200_OK) - self.assertEqual(response.data["count"], 0) + @classmethod + def setUpTestData(cls): + """Generate test data for the AccessGrant Endpoint.""" + AccessGrant.objects.create(command="*", subcommand="*", grant_type="organization", name="test1", value="test1") + AccessGrant.objects.create(command="*", subcommand="*", grant_type="channel", name="test2", value="test2") + AccessGrant.objects.create(command="*", subcommand="*", grant_type="user", name="test3", value="test3") diff --git a/poetry.lock b/poetry.lock index 4303eae6..b63aa415 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 1.5.1 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.6.1 and should not be changed by hand. [[package]] name = "aiodns" @@ -183,6 +183,17 @@ doc = ["Sphinx (>=7)", "packaging", "sphinx-autodoc-typehints (>=1.2.0)"] test = ["anyio[trio]", "coverage[toml] (>=7)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "uvloop (>=0.17)"] trio = ["trio (>=0.22)"] +[[package]] +name = "appnope" +version = "0.1.3" +description = "Disable App Nap on macOS >= 10.9" +optional = false +python-versions = "*" +files = [ + {file = "appnope-0.1.3-py2.py3-none-any.whl", hash = "sha256:265a455292d0bd8a72453494fa24df5a11eb18373a60c7c0430889f22548605e"}, + {file = "appnope-0.1.3.tar.gz", hash = "sha256:02bd91c4de869fbb1e1c50aafc4098827a7a54ab2f39d9dcba6c9547ed920e24"}, +] + [[package]] name = "arrow" version = "1.2.3" @@ -231,6 +242,23 @@ setuptools = ">=20.0" typing-extensions = {version = ">=3.10", markers = "python_version < \"3.10\""} wrapt = ">=1.11,<2" +[[package]] +name = "asttokens" +version = "2.4.0" +description = "Annotate AST trees with source code positions" +optional = false +python-versions = "*" +files = [ + {file = "asttokens-2.4.0-py2.py3-none-any.whl", hash = "sha256:cf8fc9e61a86461aa9fb161a14a0841a03c405fa829ac6b202670b3495d2ce69"}, + {file = "asttokens-2.4.0.tar.gz", hash = "sha256:2e0171b991b2c959acc6c49318049236844a5da1d65ba2672c4880c1c894834e"}, +] + +[package.dependencies] +six = ">=1.12.0" + +[package.extras] +test = ["astroid", "pytest"] + [[package]] name = "async-timeout" version = "4.0.3" @@ -260,6 +288,17 @@ docs = ["furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib- tests = ["attrs[tests-no-zope]", "zope-interface"] tests-no-zope = ["cloudpickle", "hypothesis", "mypy (>=1.1.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] +[[package]] +name = "backcall" +version = "0.2.0" +description = "Specifications for callback functions passed in to an API" +optional = false +python-versions = "*" +files = [ + {file = "backcall-0.2.0-py2.py3-none-any.whl", hash = "sha256:fbbce6a29f263178a1f7915c1940bde0ec2b2a967566fe1c65c1dfb7422bd255"}, + {file = "backcall-0.2.0.tar.gz", hash = "sha256:5cbdbf27be5e7cfadb448baf0aa95508f91f2bbc6c6437cd9cd06e2a4c215e1e"}, +] + [[package]] name = "backports-zoneinfo" version = "0.2.1" @@ -868,6 +907,17 @@ requests = {version = ">=2.27.0", extras = ["socks"]} [package.extras] dev = ["check-manifest", "coverage", "pep8", "pyflakes", "pylint", "pyyaml"] +[[package]] +name = "decorator" +version = "5.1.1" +description = "Decorators for Humans" +optional = false +python-versions = ">=3.5" +files = [ + {file = "decorator-5.1.1-py3-none-any.whl", hash = "sha256:b8c3f85900b9dc423225913c5aace94729fe1fa9763b38939a95226f02d37186"}, + {file = "decorator-5.1.1.tar.gz", hash = "sha256:637996211036b6385ef91435e4fae22989472f9d571faba8927ba8253acbc330"}, +] + [[package]] name = "deepdiff" version = "6.5.0" @@ -1041,6 +1091,21 @@ files = [ [package.dependencies] Django = "*" +[[package]] +name = "django-debug-toolbar" +version = "4.2.0" +description = "A configurable set of panels that display various debug information about the current request/response." +optional = false +python-versions = ">=3.8" +files = [ + {file = "django_debug_toolbar-4.2.0-py3-none-any.whl", hash = "sha256:af99128c06e8e794479e65ab62cc6c7d1e74e1c19beb44dcbf9bad7a9c017327"}, + {file = "django_debug_toolbar-4.2.0.tar.gz", hash = "sha256:bc7fdaafafcdedefcc67a4a5ad9dac96efd6e41db15bc74d402a54a2ba4854dc"}, +] + +[package.dependencies] +django = ">=3.2.4" +sqlparse = ">=0.2" + [[package]] name = "django-extensions" version = "3.2.3" @@ -1328,6 +1393,20 @@ files = [ [package.extras] test = ["pytest (>=6)"] +[[package]] +name = "executing" +version = "2.0.0" +description = "Get the currently executing AST node of a frame, and other information" +optional = false +python-versions = "*" +files = [ + {file = "executing-2.0.0-py2.py3-none-any.whl", hash = "sha256:06df6183df67389625f4e763921c6cf978944721abf3e714000200aab95b0657"}, + {file = "executing-2.0.0.tar.gz", hash = "sha256:0ff053696fdeef426cda5bd18eacd94f82c91f49823a2e9090124212ceea9b08"}, +] + +[package.extras] +tests = ["asttokens (>=2.1.0)", "coverage", "coverage-enable-subprocess", "ipython", "littleutils", "pytest", "rich"] + [[package]] name = "flake8" version = "3.9.2" @@ -1577,13 +1656,13 @@ six = ">=1.12" [[package]] name = "griffe" -version = "0.30.1" +version = "0.36.7" description = "Signatures for entire Python programs. Extract the structure, the frame, the skeleton of your project, to generate API documentation or find breaking changes in your API." optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "griffe-0.30.1-py3-none-any.whl", hash = "sha256:b2f3df6952995a6bebe19f797189d67aba7c860755d3d21cc80f64d076d0154c"}, - {file = "griffe-0.30.1.tar.gz", hash = "sha256:007cc11acd20becf1bb8f826419a52b9d403bbad9d8c8535699f5440ddc0a109"}, + {file = "griffe-0.36.7-py3-none-any.whl", hash = "sha256:7a09f8e9b97c7ebe227f6529a298bf7e0e742a9837ee261cc8260d50b4aa039f"}, + {file = "griffe-0.36.7.tar.gz", hash = "sha256:a6fe60b16720ca0cf63c9e667a4c05eea40dfe4abcf114741885f945b74c7071"}, ] [package.dependencies] @@ -1854,6 +1933,45 @@ files = [ httpx = ">=0.23.0,<0.24.0" PyJWT = ">=2.4.0,<3.0.0" +[[package]] +name = "ipython" +version = "8.12.3" +description = "IPython: Productive Interactive Computing" +optional = false +python-versions = ">=3.8" +files = [ + {file = "ipython-8.12.3-py3-none-any.whl", hash = "sha256:b0340d46a933d27c657b211a329d0be23793c36595acf9e6ef4164bc01a1804c"}, + {file = "ipython-8.12.3.tar.gz", hash = "sha256:3910c4b54543c2ad73d06579aa771041b7d5707b033bd488669b4cf544e3b363"}, +] + +[package.dependencies] +appnope = {version = "*", markers = "sys_platform == \"darwin\""} +backcall = "*" +colorama = {version = "*", markers = "sys_platform == \"win32\""} +decorator = "*" +jedi = ">=0.16" +matplotlib-inline = "*" +pexpect = {version = ">4.3", markers = "sys_platform != \"win32\""} +pickleshare = "*" +prompt-toolkit = ">=3.0.30,<3.0.37 || >3.0.37,<3.1.0" +pygments = ">=2.4.0" +stack-data = "*" +traitlets = ">=5" +typing-extensions = {version = "*", markers = "python_version < \"3.10\""} + +[package.extras] +all = ["black", "curio", "docrepr", "ipykernel", "ipyparallel", "ipywidgets", "matplotlib", "matplotlib (!=3.2.0)", "nbconvert", "nbformat", "notebook", "numpy (>=1.21)", "pandas", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio", "qtconsole", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "trio", "typing-extensions"] +black = ["black"] +doc = ["docrepr", "ipykernel", "matplotlib", "pytest (<7)", "pytest (<7.1)", "pytest-asyncio", "setuptools (>=18.5)", "sphinx (>=1.3)", "sphinx-rtd-theme", "stack-data", "testpath", "typing-extensions"] +kernel = ["ipykernel"] +nbconvert = ["nbconvert"] +nbformat = ["nbformat"] +notebook = ["ipywidgets", "notebook"] +parallel = ["ipyparallel"] +qtconsole = ["qtconsole"] +test = ["pytest (<7.1)", "pytest-asyncio", "testpath"] +test-extra = ["curio", "matplotlib (!=3.2.0)", "nbformat", "numpy (>=1.21)", "pandas", "pytest (<7.1)", "pytest-asyncio", "testpath", "trio"] + [[package]] name = "isodate" version = "0.6.1" @@ -1899,6 +2017,25 @@ pipfile-deprecated-finder = ["pip-shims (>=0.5.2)", "pipreqs", "requirementslib" plugins = ["setuptools"] requirements-deprecated-finder = ["pip-api", "pipreqs"] +[[package]] +name = "jedi" +version = "0.19.1" +description = "An autocompletion tool for Python that can be used for text editors." +optional = false +python-versions = ">=3.6" +files = [ + {file = "jedi-0.19.1-py2.py3-none-any.whl", hash = "sha256:e983c654fe5c02867aef4cdfce5a2fbb4a50adc0af145f70504238f18ef5e7e0"}, + {file = "jedi-0.19.1.tar.gz", hash = "sha256:cf0496f3651bc65d7174ac1b7d043eff454892c708a87d1b683e57b569927ffd"}, +] + +[package.dependencies] +parso = ">=0.8.3,<0.9.0" + +[package.extras] +docs = ["Jinja2 (==2.11.3)", "MarkupSafe (==1.1.1)", "Pygments (==2.8.1)", "alabaster (==0.7.12)", "babel (==2.9.1)", "chardet (==4.0.0)", "commonmark (==0.8.1)", "docutils (==0.17.1)", "future (==0.18.2)", "idna (==2.10)", "imagesize (==1.2.0)", "mock (==1.0.1)", "packaging (==20.9)", "pyparsing (==2.4.7)", "pytz (==2021.1)", "readthedocs-sphinx-ext (==2.1.4)", "recommonmark (==0.5.0)", "requests (==2.25.1)", "six (==1.15.0)", "snowballstemmer (==2.1.0)", "sphinx (==1.8.5)", "sphinx-rtd-theme (==0.4.3)", "sphinxcontrib-serializinghtml (==1.1.4)", "sphinxcontrib-websupport (==1.2.4)", "urllib3 (==1.26.4)"] +qa = ["flake8 (==5.0.4)", "mypy (==0.971)", "types-setuptools (==67.2.0.1)"] +testing = ["Django", "attrs", "colorama", "docopt", "pytest (<7.0.0)"] + [[package]] name = "jinja2" version = "3.1.2" @@ -2168,6 +2305,20 @@ files = [ {file = "MarkupSafe-2.1.3.tar.gz", hash = "sha256:af598ed32d6ae86f1b747b82783958b1a4ab8f617b06fe68795c7f026abbdcad"}, ] +[[package]] +name = "matplotlib-inline" +version = "0.1.6" +description = "Inline Matplotlib backend for Jupyter" +optional = false +python-versions = ">=3.5" +files = [ + {file = "matplotlib-inline-0.1.6.tar.gz", hash = "sha256:f887e5f10ba98e8d2b150ddcf4702c1e5f8b3a20005eb0f74bfdbd360ee6f304"}, + {file = "matplotlib_inline-0.1.6-py3-none-any.whl", hash = "sha256:f1f41aab5328aa5aaea9b16d083b128102f8712542f819fe7e6a420ff581b311"}, +] + +[package.dependencies] +traitlets = "*" + [[package]] name = "mccabe" version = "0.6.1" @@ -2218,29 +2369,34 @@ files = [ [[package]] name = "mkdocs" -version = "1.3.1" +version = "1.5.2" description = "Project documentation with Markdown." optional = false -python-versions = ">=3.6" +python-versions = ">=3.7" files = [ - {file = "mkdocs-1.3.1-py3-none-any.whl", hash = "sha256:fda92466393127d2da830bc6edc3a625a14b436316d1caf347690648e774c4f0"}, - {file = "mkdocs-1.3.1.tar.gz", hash = "sha256:a41a2ff25ce3bbacc953f9844ba07d106233cd76c88bac1f59cb1564ac0d87ed"}, + {file = "mkdocs-1.5.2-py3-none-any.whl", hash = "sha256:60a62538519c2e96fe8426654a67ee177350451616118a41596ae7c876bb7eac"}, + {file = "mkdocs-1.5.2.tar.gz", hash = "sha256:70d0da09c26cff288852471be03c23f0f521fc15cf16ac89c7a3bfb9ae8d24f9"}, ] [package.dependencies] -click = ">=3.3" +click = ">=7.0" +colorama = {version = ">=0.4", markers = "platform_system == \"Windows\""} ghp-import = ">=1.0" -importlib-metadata = ">=4.3" -Jinja2 = ">=2.10.2" -Markdown = ">=3.2.1,<3.4" +importlib-metadata = {version = ">=4.3", markers = "python_version < \"3.10\""} +jinja2 = ">=2.11.1" +markdown = ">=3.2.1" +markupsafe = ">=2.0.1" mergedeep = ">=1.3.4" packaging = ">=20.5" -PyYAML = ">=3.10" +pathspec = ">=0.11.1" +platformdirs = ">=2.2.0" +pyyaml = ">=5.1" pyyaml-env-tag = ">=0.1" watchdog = ">=2.0" [package.extras] i18n = ["babel (>=2.9.0)"] +min-versions = ["babel (==2.9.0)", "click (==7.0)", "colorama (==0.4)", "ghp-import (==1.0)", "importlib-metadata (==4.3)", "jinja2 (==2.11.1)", "markdown (==3.2.1)", "markupsafe (==2.0.1)", "mergedeep (==1.3.4)", "packaging (==20.5)", "pathspec (==0.11.1)", "platformdirs (==2.2.0)", "pyyaml (==5.1)", "pyyaml-env-tag (==0.1)", "typing-extensions (==3.10)", "watchdog (==2.0)"] [[package]] name = "mkdocs-autorefs" @@ -2257,39 +2413,27 @@ files = [ Markdown = ">=3.3" mkdocs = ">=1.1" -[[package]] -name = "mkdocs-include-markdown-plugin" -version = "3.6.1" -description = "Mkdocs Markdown includer plugin." -optional = false -python-versions = ">=3.6" -files = [ - {file = "mkdocs_include_markdown_plugin-3.6.1-py3-none-any.whl", hash = "sha256:ea36a7d50ee98028f03574d7bf40a307e16211ad3013a4e42f64494b3c106e9e"}, - {file = "mkdocs_include_markdown_plugin-3.6.1.tar.gz", hash = "sha256:5e7416f23081085a220f7534b2fc7456e74c5a65f3b401da1f29b9e9132b46e5"}, -] - -[package.extras] -dev = ["bump2version (==1.0.1)", "flake8 (==3.9.2)", "flake8-implicit-str-concat (==0.2.0)", "flake8-print (==4.0.0)", "isort (==5.9.1)", "mdpo (==0.3.61)", "mkdocs (==1.2.3)", "pre-commit (==2.13.0)", "pytest (==6.2.5)", "pytest-cov (==3.0.0)", "pyupgrade (==2.19.4)", "yamllint (==1.26.1)"] -test = ["pytest (==6.2.5)", "pytest-cov (==3.0.0)"] - [[package]] name = "mkdocs-material" -version = "8.4.2" +version = "9.1.15" description = "Documentation that simply works" optional = false python-versions = ">=3.7" files = [ - {file = "mkdocs-material-8.4.2.tar.gz", hash = "sha256:704c64c3fff126a3923c2961d95f26b19be621342a6a4e49ed039f0bb7a5c540"}, - {file = "mkdocs_material-8.4.2-py2.py3-none-any.whl", hash = "sha256:166287bb0e4197804906bf0389a852d5ced43182c30127ac8b48a4e497ecd7e5"}, + {file = "mkdocs_material-9.1.15-py3-none-any.whl", hash = "sha256:b49e12869ab464558e2dd3c5792da5b748a7e0c48ee83b4d05715f98125a7a39"}, + {file = "mkdocs_material-9.1.15.tar.gz", hash = "sha256:8513ab847c9a541ed3d11a3a7eed556caf72991ee786c31c5aac6691a121088a"}, ] [package.dependencies] -jinja2 = ">=3.0.2" +colorama = ">=0.4" +jinja2 = ">=3.0" markdown = ">=3.2" -mkdocs = ">=1.3.0" -mkdocs-material-extensions = ">=1.0.3" -pygments = ">=2.12" -pymdown-extensions = ">=9.4" +mkdocs = ">=1.4.2" +mkdocs-material-extensions = ">=1.1" +pygments = ">=2.14" +pymdown-extensions = ">=9.9.1" +regex = ">=2022.4.24" +requests = ">=2.26" [[package]] name = "mkdocs-material-extensions" @@ -2341,17 +2485,17 @@ python-legacy = ["mkdocstrings-python-legacy (>=0.2.1)"] [[package]] name = "mkdocstrings-python" -version = "1.1.2" +version = "1.5.2" description = "A Python handler for mkdocstrings." optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "mkdocstrings_python-1.1.2-py3-none-any.whl", hash = "sha256:c2b652a850fec8e85034a9cdb3b45f8ad1a558686edc20ed1f40b4e17e62070f"}, - {file = "mkdocstrings_python-1.1.2.tar.gz", hash = "sha256:f28bdcacb9bcdb44b6942a5642c1ea8b36870614d33e29e3c923e204a8d8ed61"}, + {file = "mkdocstrings_python-1.5.2-py3-none-any.whl", hash = "sha256:ed37ca6d216986e2ac3530c19c3e7be381d1e3d09ea414e4ff467d6fd2cbd9c1"}, + {file = "mkdocstrings_python-1.5.2.tar.gz", hash = "sha256:81eb4a93bc454a253daf247d1a11397c435d641c64fa165324c17c06170b1dfb"}, ] [package.dependencies] -griffe = ">=0.24" +griffe = ">=0.35" mkdocstrings = ">=0.20" [[package]] @@ -2734,6 +2878,21 @@ all = ["gssapi (>=1.4.1)", "invoke (>=2.0)", "pyasn1 (>=0.1.7)", "pywin32 (>=2.1 gssapi = ["gssapi (>=1.4.1)", "pyasn1 (>=0.1.7)", "pywin32 (>=2.1.8)"] invoke = ["invoke (>=2.0)"] +[[package]] +name = "parso" +version = "0.8.3" +description = "A Python Parser" +optional = false +python-versions = ">=3.6" +files = [ + {file = "parso-0.8.3-py2.py3-none-any.whl", hash = "sha256:c001d4636cd3aecdaf33cbb40aebb59b094be2a74c556778ef5576c175e19e75"}, + {file = "parso-0.8.3.tar.gz", hash = "sha256:8c07be290bb59f03588915921e29e8a50002acaf2cdc5fa0e0114f91709fafa0"}, +] + +[package.extras] +qa = ["flake8 (==3.8.3)", "mypy (==0.782)"] +testing = ["docopt", "pytest (<6.0.0)"] + [[package]] name = "pathspec" version = "0.11.2" @@ -2756,6 +2915,31 @@ files = [ {file = "pbr-5.11.1.tar.gz", hash = "sha256:aefc51675b0b533d56bb5fd1c8c6c0522fe31896679882e1c4c63d5e4a0fccb3"}, ] +[[package]] +name = "pexpect" +version = "4.8.0" +description = "Pexpect allows easy control of interactive console applications." +optional = false +python-versions = "*" +files = [ + {file = "pexpect-4.8.0-py2.py3-none-any.whl", hash = "sha256:0b48a55dcb3c05f3329815901ea4fc1537514d6ba867a152b581d69ae3710937"}, + {file = "pexpect-4.8.0.tar.gz", hash = "sha256:fc65a43959d153d0114afe13997d439c22823a27cefceb5ff35c2178c6784c0c"}, +] + +[package.dependencies] +ptyprocess = ">=0.5" + +[[package]] +name = "pickleshare" +version = "0.7.5" +description = "Tiny 'shelve'-like database with concurrency support" +optional = false +python-versions = "*" +files = [ + {file = "pickleshare-0.7.5-py2.py3-none-any.whl", hash = "sha256:9649af414d74d4df115d5d718f82acb59c9d418196b7b4290ed47a12ce62df56"}, + {file = "pickleshare-0.7.5.tar.gz", hash = "sha256:87683d47965c1da65cdacaf31c8441d12b8044cdec9aca500cd78fc2c683afca"}, +] + [[package]] name = "pillow" version = "10.0.0" @@ -3028,6 +3212,31 @@ files = [ {file = "psycopg2_binary-2.9.8-cp39-cp39-win_amd64.whl", hash = "sha256:1f279ba74f0d6b374526e5976c626d2ac3b8333b6a7b08755c513f4d380d3add"}, ] +[[package]] +name = "ptyprocess" +version = "0.7.0" +description = "Run a subprocess in a pseudo terminal" +optional = false +python-versions = "*" +files = [ + {file = "ptyprocess-0.7.0-py2.py3-none-any.whl", hash = "sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35"}, + {file = "ptyprocess-0.7.0.tar.gz", hash = "sha256:5c5d0a3b48ceee0b48485e0c26037c0acd7d29765ca3fbb5cb3831d347423220"}, +] + +[[package]] +name = "pure-eval" +version = "0.2.2" +description = "Safely evaluate AST nodes without side effects" +optional = false +python-versions = "*" +files = [ + {file = "pure_eval-0.2.2-py3-none-any.whl", hash = "sha256:01eaab343580944bc56080ebe0a674b39ec44a945e6d09ba7db3cb8cec289350"}, + {file = "pure_eval-0.2.2.tar.gz", hash = "sha256:2b45320af6dfaa1750f543d714b6d1c520a1688dec6fd24d339063ce0aaa9ac3"}, +] + +[package.extras] +tests = ["pytest"] + [[package]] name = "pycares" version = "4.3.0" @@ -3444,7 +3653,7 @@ six = ">=1.5" name = "python-dotenv" version = "0.21.1" description = "Read key-value pairs from a .env file and set them as environment variables" -optional = false +optional = true python-versions = ">=3.7" files = [ {file = "python-dotenv-0.21.1.tar.gz", hash = "sha256:1c93de8f636cde3ce377292818d0e440b6e45a82f215c3744979151fa8151c49"}, @@ -3633,6 +3842,103 @@ async-timeout = {version = ">=4.0.2", markers = "python_full_version <= \"3.11.2 hiredis = ["hiredis (>=1.0.0)"] ocsp = ["cryptography (>=36.0.1)", "pyopenssl (==20.0.1)", "requests (>=2.26.0)"] +[[package]] +name = "regex" +version = "2023.10.3" +description = "Alternative regular expression module, to replace re." +optional = false +python-versions = ">=3.7" +files = [ + {file = "regex-2023.10.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:4c34d4f73ea738223a094d8e0ffd6d2c1a1b4c175da34d6b0de3d8d69bee6bcc"}, + {file = "regex-2023.10.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:a8f4e49fc3ce020f65411432183e6775f24e02dff617281094ba6ab079ef0915"}, + {file = "regex-2023.10.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4cd1bccf99d3ef1ab6ba835308ad85be040e6a11b0977ef7ea8c8005f01a3c29"}, + {file = "regex-2023.10.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:81dce2ddc9f6e8f543d94b05d56e70d03a0774d32f6cca53e978dc01e4fc75b8"}, + {file = "regex-2023.10.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9c6b4d23c04831e3ab61717a707a5d763b300213db49ca680edf8bf13ab5d91b"}, + {file = "regex-2023.10.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c15ad0aee158a15e17e0495e1e18741573d04eb6da06d8b84af726cfc1ed02ee"}, + {file = "regex-2023.10.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:6239d4e2e0b52c8bd38c51b760cd870069f0bdf99700a62cd509d7a031749a55"}, + {file = "regex-2023.10.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:4a8bf76e3182797c6b1afa5b822d1d5802ff30284abe4599e1247be4fd6b03be"}, + {file = "regex-2023.10.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d9c727bbcf0065cbb20f39d2b4f932f8fa1631c3e01fcedc979bd4f51fe051c5"}, + {file = "regex-2023.10.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:3ccf2716add72f80714b9a63899b67fa711b654be3fcdd34fa391d2d274ce767"}, + {file = "regex-2023.10.3-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:107ac60d1bfdc3edb53be75e2a52aff7481b92817cfdddd9b4519ccf0e54a6ff"}, + {file = "regex-2023.10.3-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:00ba3c9818e33f1fa974693fb55d24cdc8ebafcb2e4207680669d8f8d7cca79a"}, + {file = "regex-2023.10.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:f0a47efb1dbef13af9c9a54a94a0b814902e547b7f21acb29434504d18f36e3a"}, + {file = "regex-2023.10.3-cp310-cp310-win32.whl", hash = "sha256:36362386b813fa6c9146da6149a001b7bd063dabc4d49522a1f7aa65b725c7ec"}, + {file = "regex-2023.10.3-cp310-cp310-win_amd64.whl", hash = "sha256:c65a3b5330b54103e7d21cac3f6bf3900d46f6d50138d73343d9e5b2900b2353"}, + {file = "regex-2023.10.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:90a79bce019c442604662d17bf69df99090e24cdc6ad95b18b6725c2988a490e"}, + {file = "regex-2023.10.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:c7964c2183c3e6cce3f497e3a9f49d182e969f2dc3aeeadfa18945ff7bdd7051"}, + {file = "regex-2023.10.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4ef80829117a8061f974b2fda8ec799717242353bff55f8a29411794d635d964"}, + {file = "regex-2023.10.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5addc9d0209a9afca5fc070f93b726bf7003bd63a427f65ef797a931782e7edc"}, + {file = "regex-2023.10.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c148bec483cc4b421562b4bcedb8e28a3b84fcc8f0aa4418e10898f3c2c0eb9b"}, + {file = "regex-2023.10.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8d1f21af4c1539051049796a0f50aa342f9a27cde57318f2fc41ed50b0dbc4ac"}, + {file = "regex-2023.10.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0b9ac09853b2a3e0d0082104036579809679e7715671cfbf89d83c1cb2a30f58"}, + {file = "regex-2023.10.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:ebedc192abbc7fd13c5ee800e83a6df252bec691eb2c4bedc9f8b2e2903f5e2a"}, + {file = "regex-2023.10.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:d8a993c0a0ffd5f2d3bda23d0cd75e7086736f8f8268de8a82fbc4bd0ac6791e"}, + {file = "regex-2023.10.3-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:be6b7b8d42d3090b6c80793524fa66c57ad7ee3fe9722b258aec6d0672543fd0"}, + {file = "regex-2023.10.3-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4023e2efc35a30e66e938de5aef42b520c20e7eda7bb5fb12c35e5d09a4c43f6"}, + {file = "regex-2023.10.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:0d47840dc05e0ba04fe2e26f15126de7c755496d5a8aae4a08bda4dd8d646c54"}, + {file = "regex-2023.10.3-cp311-cp311-win32.whl", hash = "sha256:9145f092b5d1977ec8c0ab46e7b3381b2fd069957b9862a43bd383e5c01d18c2"}, + {file = "regex-2023.10.3-cp311-cp311-win_amd64.whl", hash = "sha256:b6104f9a46bd8743e4f738afef69b153c4b8b592d35ae46db07fc28ae3d5fb7c"}, + {file = "regex-2023.10.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:bff507ae210371d4b1fe316d03433ac099f184d570a1a611e541923f78f05037"}, + {file = "regex-2023.10.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:be5e22bbb67924dea15039c3282fa4cc6cdfbe0cbbd1c0515f9223186fc2ec5f"}, + {file = "regex-2023.10.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4a992f702c9be9c72fa46f01ca6e18d131906a7180950958f766c2aa294d4b41"}, + {file = "regex-2023.10.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7434a61b158be563c1362d9071358f8ab91b8d928728cd2882af060481244c9e"}, + {file = "regex-2023.10.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c2169b2dcabf4e608416f7f9468737583ce5f0a6e8677c4efbf795ce81109d7c"}, + {file = "regex-2023.10.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a9e908ef5889cda4de038892b9accc36d33d72fb3e12c747e2799a0e806ec841"}, + {file = "regex-2023.10.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:12bd4bc2c632742c7ce20db48e0d99afdc05e03f0b4c1af90542e05b809a03d9"}, + {file = "regex-2023.10.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:bc72c231f5449d86d6c7d9cc7cd819b6eb30134bb770b8cfdc0765e48ef9c420"}, + {file = "regex-2023.10.3-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:bce8814b076f0ce5766dc87d5a056b0e9437b8e0cd351b9a6c4e1134a7dfbda9"}, + {file = "regex-2023.10.3-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:ba7cd6dc4d585ea544c1412019921570ebd8a597fabf475acc4528210d7c4a6f"}, + {file = "regex-2023.10.3-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:b0c7d2f698e83f15228ba41c135501cfe7d5740181d5903e250e47f617eb4292"}, + {file = "regex-2023.10.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:5a8f91c64f390ecee09ff793319f30a0f32492e99f5dc1c72bc361f23ccd0a9a"}, + {file = "regex-2023.10.3-cp312-cp312-win32.whl", hash = "sha256:ad08a69728ff3c79866d729b095872afe1e0557251da4abb2c5faff15a91d19a"}, + {file = "regex-2023.10.3-cp312-cp312-win_amd64.whl", hash = "sha256:39cdf8d141d6d44e8d5a12a8569d5a227f645c87df4f92179bd06e2e2705e76b"}, + {file = "regex-2023.10.3-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:4a3ee019a9befe84fa3e917a2dd378807e423d013377a884c1970a3c2792d293"}, + {file = "regex-2023.10.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:76066d7ff61ba6bf3cb5efe2428fc82aac91802844c022d849a1f0f53820502d"}, + {file = "regex-2023.10.3-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bfe50b61bab1b1ec260fa7cd91106fa9fece57e6beba05630afe27c71259c59b"}, + {file = "regex-2023.10.3-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:9fd88f373cb71e6b59b7fa597e47e518282455c2734fd4306a05ca219a1991b0"}, + {file = "regex-2023.10.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b3ab05a182c7937fb374f7e946f04fb23a0c0699c0450e9fb02ef567412d2fa3"}, + {file = "regex-2023.10.3-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:dac37cf08fcf2094159922edc7a2784cfcc5c70f8354469f79ed085f0328ebdf"}, + {file = "regex-2023.10.3-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:e54ddd0bb8fb626aa1f9ba7b36629564544954fff9669b15da3610c22b9a0991"}, + {file = "regex-2023.10.3-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:3367007ad1951fde612bf65b0dffc8fd681a4ab98ac86957d16491400d661302"}, + {file = "regex-2023.10.3-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:16f8740eb6dbacc7113e3097b0a36065a02e37b47c936b551805d40340fb9971"}, + {file = "regex-2023.10.3-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:f4f2ca6df64cbdd27f27b34f35adb640b5d2d77264228554e68deda54456eb11"}, + {file = "regex-2023.10.3-cp37-cp37m-musllinux_1_1_s390x.whl", hash = "sha256:39807cbcbe406efca2a233884e169d056c35aa7e9f343d4e78665246a332f597"}, + {file = "regex-2023.10.3-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:7eece6fbd3eae4a92d7c748ae825cbc1ee41a89bb1c3db05b5578ed3cfcfd7cb"}, + {file = "regex-2023.10.3-cp37-cp37m-win32.whl", hash = "sha256:ce615c92d90df8373d9e13acddd154152645c0dc060871abf6bd43809673d20a"}, + {file = "regex-2023.10.3-cp37-cp37m-win_amd64.whl", hash = "sha256:0f649fa32fe734c4abdfd4edbb8381c74abf5f34bc0b3271ce687b23729299ed"}, + {file = "regex-2023.10.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:9b98b7681a9437262947f41c7fac567c7e1f6eddd94b0483596d320092004533"}, + {file = "regex-2023.10.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:91dc1d531f80c862441d7b66c4505cd6ea9d312f01fb2f4654f40c6fdf5cc37a"}, + {file = "regex-2023.10.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82fcc1f1cc3ff1ab8a57ba619b149b907072e750815c5ba63e7aa2e1163384a4"}, + {file = "regex-2023.10.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7979b834ec7a33aafae34a90aad9f914c41fd6eaa8474e66953f3f6f7cbd4368"}, + {file = "regex-2023.10.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ef71561f82a89af6cfcbee47f0fabfdb6e63788a9258e913955d89fdd96902ab"}, + {file = "regex-2023.10.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:dd829712de97753367153ed84f2de752b86cd1f7a88b55a3a775eb52eafe8a94"}, + {file = "regex-2023.10.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:00e871d83a45eee2f8688d7e6849609c2ca2a04a6d48fba3dff4deef35d14f07"}, + {file = "regex-2023.10.3-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:706e7b739fdd17cb89e1fbf712d9dc21311fc2333f6d435eac2d4ee81985098c"}, + {file = "regex-2023.10.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:cc3f1c053b73f20c7ad88b0d1d23be7e7b3901229ce89f5000a8399746a6e039"}, + {file = "regex-2023.10.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:6f85739e80d13644b981a88f529d79c5bdf646b460ba190bffcaf6d57b2a9863"}, + {file = "regex-2023.10.3-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:741ba2f511cc9626b7561a440f87d658aabb3d6b744a86a3c025f866b4d19e7f"}, + {file = "regex-2023.10.3-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:e77c90ab5997e85901da85131fd36acd0ed2221368199b65f0d11bca44549711"}, + {file = "regex-2023.10.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:979c24cbefaf2420c4e377ecd1f165ea08cc3d1fbb44bdc51bccbbf7c66a2cb4"}, + {file = "regex-2023.10.3-cp38-cp38-win32.whl", hash = "sha256:58837f9d221744d4c92d2cf7201c6acd19623b50c643b56992cbd2b745485d3d"}, + {file = "regex-2023.10.3-cp38-cp38-win_amd64.whl", hash = "sha256:c55853684fe08d4897c37dfc5faeff70607a5f1806c8be148f1695be4a63414b"}, + {file = "regex-2023.10.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:2c54e23836650bdf2c18222c87f6f840d4943944146ca479858404fedeb9f9af"}, + {file = "regex-2023.10.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:69c0771ca5653c7d4b65203cbfc5e66db9375f1078689459fe196fe08b7b4930"}, + {file = "regex-2023.10.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6ac965a998e1388e6ff2e9781f499ad1eaa41e962a40d11c7823c9952c77123e"}, + {file = "regex-2023.10.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1c0e8fae5b27caa34177bdfa5a960c46ff2f78ee2d45c6db15ae3f64ecadde14"}, + {file = "regex-2023.10.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:6c56c3d47da04f921b73ff9415fbaa939f684d47293f071aa9cbb13c94afc17d"}, + {file = "regex-2023.10.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7ef1e014eed78ab650bef9a6a9cbe50b052c0aebe553fb2881e0453717573f52"}, + {file = "regex-2023.10.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:d29338556a59423d9ff7b6eb0cb89ead2b0875e08fe522f3e068b955c3e7b59b"}, + {file = "regex-2023.10.3-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:9c6d0ced3c06d0f183b73d3c5920727268d2201aa0fe6d55c60d68c792ff3588"}, + {file = "regex-2023.10.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:994645a46c6a740ee8ce8df7911d4aee458d9b1bc5639bc968226763d07f00fa"}, + {file = "regex-2023.10.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:66e2fe786ef28da2b28e222c89502b2af984858091675044d93cb50e6f46d7af"}, + {file = "regex-2023.10.3-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:11175910f62b2b8c055f2b089e0fedd694fe2be3941b3e2633653bc51064c528"}, + {file = "regex-2023.10.3-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:06e9abc0e4c9ab4779c74ad99c3fc10d3967d03114449acc2c2762ad4472b8ca"}, + {file = "regex-2023.10.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:fb02e4257376ae25c6dd95a5aec377f9b18c09be6ebdefa7ad209b9137b73d48"}, + {file = "regex-2023.10.3-cp39-cp39-win32.whl", hash = "sha256:3b2c3502603fab52d7619b882c25a6850b766ebd1b18de3df23b2f939360e1bd"}, + {file = "regex-2023.10.3-cp39-cp39-win_amd64.whl", hash = "sha256:adbccd17dcaff65704c856bd29951c58a1bd4b2b0f8ad6b826dbd543fe740988"}, + {file = "regex-2023.10.3.tar.gz", hash = "sha256:3fef4f844d2290ee0ba57addcec17eec9e3df73f10a2748485dfd6a3a188cc0f"}, +] + [[package]] name = "requests" version = "2.31.0" @@ -3799,7 +4105,8 @@ files = [ {file = "ruamel.yaml.clib-0.2.7-cp310-cp310-win32.whl", hash = "sha256:763d65baa3b952479c4e972669f679fe490eee058d5aa85da483ebae2009d231"}, {file = "ruamel.yaml.clib-0.2.7-cp310-cp310-win_amd64.whl", hash = "sha256:d000f258cf42fec2b1bbf2863c61d7b8918d31ffee905da62dede869254d3b8a"}, {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:045e0626baf1c52e5527bd5db361bc83180faaba2ff586e763d3d5982a876a9e"}, - {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-macosx_12_6_arm64.whl", hash = "sha256:721bc4ba4525f53f6a611ec0967bdcee61b31df5a56801281027a3a6d1c2daf5"}, + {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-macosx_13_0_arm64.whl", hash = "sha256:1a6391a7cabb7641c32517539ca42cf84b87b667bad38b78d4d42dd23e957c81"}, + {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-manylinux2014_aarch64.whl", hash = "sha256:9c7617df90c1365638916b98cdd9be833d31d337dbcd722485597b43c4a215bf"}, {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:41d0f1fa4c6830176eef5b276af04c89320ea616655d01327d5ce65e50575c94"}, {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-win32.whl", hash = "sha256:f6d3d39611ac2e4f62c3128a9eed45f19a6608670c5a2f4f07f24e8de3441d38"}, {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-win_amd64.whl", hash = "sha256:da538167284de58a52109a9b89b8f6a53ff8437dd6dc26d33b57bf6699153122"}, @@ -4030,6 +4337,25 @@ dev = ["build", "flake8"] doc = ["sphinx"] test = ["pytest", "pytest-cov"] +[[package]] +name = "stack-data" +version = "0.6.3" +description = "Extract data from python stack frames and tracebacks for informative displays" +optional = false +python-versions = "*" +files = [ + {file = "stack_data-0.6.3-py3-none-any.whl", hash = "sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695"}, + {file = "stack_data-0.6.3.tar.gz", hash = "sha256:836a778de4fec4dcd1dcd89ed8abff8a221f58308462e1c4aa2a3cf30148f0b9"}, +] + +[package.dependencies] +asttokens = ">=2.1.0" +executing = ">=1.2.0" +pure-eval = "*" + +[package.extras] +tests = ["cython", "littleutils", "pygments", "pytest", "typeguard"] + [[package]] name = "stevedore" version = "5.1.0" @@ -4123,7 +4449,7 @@ files = [ name = "toml" version = "0.10.2" description = "Python Library for Tom's Obvious, Minimal Language" -optional = true +optional = false python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" files = [ {file = "toml-0.10.2-py2.py3-none-any.whl", hash = "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b"}, @@ -4163,6 +4489,21 @@ tomli = "*" [package.extras] dev = ["packaging"] +[[package]] +name = "traitlets" +version = "5.11.2" +description = "Traitlets Python configuration system" +optional = false +python-versions = ">=3.8" +files = [ + {file = "traitlets-5.11.2-py3-none-any.whl", hash = "sha256:98277f247f18b2c5cabaf4af369187754f4fb0e85911d473f72329db8a7f4fae"}, + {file = "traitlets-5.11.2.tar.gz", hash = "sha256:7564b5bf8d38c40fa45498072bf4dc5e8346eb087bbf1e2ae2d8774f6a0f078e"}, +] + +[package.extras] +docs = ["myst-parser", "pydata-sphinx-theme", "sphinx"] +test = ["argcomplete (>=3.0.3)", "mypy (>=1.5.1)", "pre-commit", "pytest (>=7.0,<7.5)", "pytest-mock", "pytest-mypy-testing"] + [[package]] name = "types-protobuf" version = "3.20.4.6" @@ -4596,4 +4937,4 @@ panorama = ["defusedxml", "ipaddr", "netmiko", "netutils", "pan-os-python"] [metadata] lock-version = "2.0" python-versions = ">=3.8,<3.12" -content-hash = "4c11a5938fe94cefce25e82a6d2fbdcb03a1342eef3ebb8a4193d8cae10b4721" +content-hash = "f5f3df8e929a05526ed64e2f2e2820312bf770072f731044afb556e7900fd223" diff --git a/pyproject.toml b/pyproject.toml index 8e294a3e..68e52107 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,7 @@ [tool.poetry] name = "nautobot-chatops" -version = "0.1.0" -description = "Nautobot ChatOps App" +version = "3.0.1" +description = "A plugin providing chatbot capabilities for Nautobot" authors = ["Network to Code, LLC "] license = "Apache-2.0" readme = "README.md" @@ -25,35 +25,130 @@ packages = [ { include = "nautobot_chatops" }, ] +[tool.poetry.plugins."nautobot.workers"] +"aci" = "nautobot_chatops.integrations.aci.worker:aci" +"ansible" = "nautobot_chatops.integrations.ansible.worker:ansible" +"clear" = "nautobot_chatops.workers.clear:clear" +"cloudvision" = "nautobot_chatops.integrations.aristacv.worker:cloudvision" +"grafana" = "nautobot_chatops.integrations.grafana.worker:grafana" +"ipfabric" = "nautobot_chatops.integrations.ipfabric.worker:ipfabric" +"meraki" = "nautobot_chatops.integrations.meraki.worker:cisco_meraki" +"nautobot" = "nautobot_chatops.workers.nautobot:nautobot" +"panorama" = "nautobot_chatops.integrations.panorama.worker:panorama" + [tool.poetry.dependencies] -python = ">=3.8,<3.12" -# Used for local development +Markdown = "!=3.3.5" +PyJWT = "^2.1.0" +PyYAML = { version = "^6.0", optional = true } +aiodns = "^1.0" +aiohttp = "^3.7.3" +asgiref = "^3.4.1" +certifi = { version = ">=2021.5.30", optional = true } +cloudvision = { version = "^1.1", optional = true } +cvprac = { version = "^1.0.6", optional = true } +defusedxml = { version = "^0.7.1", optional = true } +diffsync = { version = "^1.3.0", optional = true } +ipaddr = { version = "^2.2.0", optional = true } +ipfabric = { version = "~6.0.9", optional = true } +ipfabric-diagrams = { version = "~6.0.2", optional = true } +isodate = { version = "^0.6.1", optional = true } +meraki = { version = "^1.7.2", optional = true } nautobot = "^2.0.0" +nautobot-capacity-metrics = "^3.0.0" +netmiko = { version = "^4.0.0", optional = true } +netutils = { version = "^1.1.0", optional = true } +pan-os-python = { version = "^1.3.0", optional = true } +prettytable = { version = "^2.1.0", optional = true } +protobuf = { version = "^3.17", optional = true } +pydantic = { version = "^1.8.2", optional = true } +python = ">=3.8,<3.12" +requests = ">=2.25.1" +schema-enforcer = { version = "^1.2.1", optional = true } +slack-sdk = "^3.4.2" +termcolor = { version = "1.1.0", optional = true } +texttable = "^1.6.2" +webexteamssdk = "^1.3" [tool.poetry.group.dev.dependencies] bandit = "*" black = "*" -coverage = "*" +coverage = "~5.4" django-debug-toolbar = "*" flake8 = "*" invoke = "*" ipython = "*" -pydocstyle = "*" -pylint = "*" -pylint-django = "*" -pylint-nautobot = "*" -yamllint = "*" -toml = "*" -Markdown = "*" -# Rendering docs to HTML mkdocs = "1.5.2" -# Material for MkDocs theme mkdocs-material = "9.1.15" -# Render custom markdown for version added/changed/remove notes mkdocs-version-annotations = "1.0.0" -# Automatic documentation from sources, for MkDocs mkdocstrings = "0.22.0" mkdocstrings-python = "1.5.2" +prybar = "*" +pydocstyle = "*" +pylint = "*" +pylint-django = "*" +pylint-nautobot = "^0.2.0" +requests-mock = "^1.9.3" +toml = "*" +towncrier = "~22.8.0" +yamllint = "*" + +[tool.poetry.extras] +all = [ + "PyYAML", + "certifi", + "cloudvision", + "cvprac", + "defusedxml", + "diffsync", + "ipaddr", + "ipfabric", + "ipfabric-diagrams", + "isodate", + "meraki", + "netmiko", + "netutils", + "pan-os-python", + "prettytable", + "protobuf", + "pydantic", + "schema-enforcer", + "termcolor", +] +aci = [ + "prettytable", +] +aristacv = [ + "certifi", + "cloudvision", + "cvprac", + "protobuf" +] +ansible = [ + "PyYAML", +] +grafana = [ + "diffsync", + "isodate", + "pydantic", + "schema-enforcer", + "termcolor", +] +ipfabric = [ + "ipfabric", + "ipfabric-diagrams", + "netutils", +] +meraki = [ + "meraki", +] +panorama = [ + "defusedxml", + "ipaddr", + "netmiko", + "netutils", + "pan-os-python", +] +nautobot = ["nautobot"] [tool.black] line-length = 120 @@ -91,7 +186,11 @@ no-docstring-rgx="^(_|test_|Meta$)" # Line length is enforced by Black, so pylint doesn't need to check it. # Pylint and Black disagree about how to format multi-line arrays; Black wins. disable = """, - line-too-long + line-too-long, + too-few-public-methods, + too-many-lines, + too-many-ancestors, + nb-incorrect-base-class, """ [tool.pylint.miscellaneous] @@ -101,6 +200,10 @@ notes = """, XXX, """ +[tool.pylint.similarities] +ignore-imports = true +min-similarity-lines = 0 + [tool.pylint-nautobot] supported_nautobot_versions = [ "2.0.0" diff --git a/tasks.py b/tasks.py index 2a786b44..7f09ee8b 100644 --- a/tasks.py +++ b/tasks.py @@ -55,6 +55,8 @@ def is_truthy(arg): "docker-compose.base.yml", "docker-compose.redis.yml", "docker-compose.postgres.yml", + "mattermost/docker-compose.yml", + "ansible/docker-compose.yml", "docker-compose.dev.yml", ], "compose_http_timeout": "86400", @@ -698,3 +700,90 @@ def tests(context, failfast=False, keepdb=False, lint_only=False): unittest(context, failfast=failfast, keepdb=keepdb) unittest_coverage(context) print("All tests have passed!") + + +# ------------------------------------------------------------------------------ +# APP CUSTOM +# ------------------------------------------------------------------------------ +@task +def bootstrap_mattermost(context): + """Bootstrap Nautobot data to be used with Mattermost.""" + nbshell(context, file="development/mattermost/nautobot_bootstrap.py") + + +@task +def backup_mattermost(context): + """Export Mattermost data to the SQL file. Certain tables are ignored.""" + output = "./development/mattermost/dump.sql" + + ignore_tables = [ + "Audits", + "ChannelMemberHistory", + "CommandWebhooks", + "Posts", + "PostsPriority", + "Sessions", + "UploadSessions", + ] + + base_command = [ + "exec", + "--env MYSQL_PWD=mostest", + "--", + "mattermost", + "mysqldump", + "--databases mattermost_test", + "--compact", + "-u root", + ] + + # Dump schema first + command = [ + *base_command, + "--add-drop-database", + "--no-data", + f"> {output}", + ] + docker_compose(context, " ".join(command)) + + # Dump data for all tables except ignored + command = [ + *base_command, + *(f"--ignore-table mattermost_test.{table}" for table in ignore_tables), + "--no-create-info", + "--skip-extended-insert", + f">> {output}", + ] + docker_compose(context, " ".join(command)) + + +@task +def connect_awx_container(context, container_name="tools_awx_1"): + """Connect nautobot and celery containers to awx container. + + Bridge network is defined in `development/ansible/docker-compose.yaml`. + + To run testing awx instance, follow [instructions] + (https://github.com/ansible/awx/tree/devel/tools/docker-compose#getting-started) + + Before running `make docker-compose` comment out `- 8080:8080` port mapping in file + `tools/docker-compose/ansible/roles/sources/templates/docker-compose.yml.j2` to avoid port conflict with nautobot. + + After setting up awx, cd back to chatops repo and run `invoke connect-awx-container`. + """ + bridge_network = f"{context.nautobot_chatops.project_name}_awx" + context.run(f"docker network connect --alias awx {bridge_network} {container_name}") + print(f"Container {container_name} connected to {bridge_network} network") + + +@task( + help={ + "version": "Version of Nautobot ChatOps to generate the release notes for.", + } +) +def generate_release_notes(context, version=""): + """Generate Release Notes using Towncrier.""" + command = "env DJANGO_SETTINGS_MODULE=nautobot.core.settings towncrier build" + if version: + command += f" --version {version}" + run_command(context, command) From a20eebca3b900c098a5d775176cbb63260c2e31f Mon Sep 17 00:00:00 2001 From: Jan Snasel Date: Mon, 23 Oct 2023 12:21:28 +0000 Subject: [PATCH 19/93] fix: pydocstyle --- .pydocstyle.ini | 11 ----------- nautobot_chatops/dispatchers/adaptive_cards.py | 2 +- nautobot_chatops/dispatchers/base.py | 2 +- nautobot_chatops/dispatchers/slack.py | 2 +- 4 files changed, 3 insertions(+), 14 deletions(-) delete mode 100644 .pydocstyle.ini diff --git a/.pydocstyle.ini b/.pydocstyle.ini deleted file mode 100644 index 71bf7596..00000000 --- a/.pydocstyle.ini +++ /dev/null @@ -1,11 +0,0 @@ -[pydocstyle] -convention = google -inherit = false -match = (?!__init__).*\.py -match-dir = (?!tests)[^\.].* -# D212 is enabled by default in google convention, and complains if we have a docstring like: -# """ -# My docstring is on the line after the opening quotes instead of on the same line as them. -# """ -# We've discussed and concluded that we consider this to be a valid style choice. -add_ignore = D212, D417 \ No newline at end of file diff --git a/nautobot_chatops/dispatchers/adaptive_cards.py b/nautobot_chatops/dispatchers/adaptive_cards.py index d325c59d..e1dd5ff3 100644 --- a/nautobot_chatops/dispatchers/adaptive_cards.py +++ b/nautobot_chatops/dispatchers/adaptive_cards.py @@ -201,7 +201,7 @@ def select_element(self, action_id, choices, default=(None, None), confirm=False Args: action_id (str): Identifying string to associate with this element choices (list): List of (display, value) tuples - default (tuple: Default (display, value) to preselect + default (tuple): Default (display, value) to preselect confirm (bool): If true (and the platform supports it), prompt the user to confirm their selection """ return { diff --git a/nautobot_chatops/dispatchers/base.py b/nautobot_chatops/dispatchers/base.py index 6204a378..9683cdb4 100644 --- a/nautobot_chatops/dispatchers/base.py +++ b/nautobot_chatops/dispatchers/base.py @@ -367,7 +367,7 @@ def select_element(self, action_id, choices, default=(None, None), confirm=False Args: action_id (str): Identifying string to associate with this element choices (list): List of (display, value) tuples - default (tuple: Default (display, value) to preselect + default (tuple): Default (display, value) to preselect confirm (bool): If true (and the platform supports it), prompt the user to confirm their selection """ raise NotImplementedError diff --git a/nautobot_chatops/dispatchers/slack.py b/nautobot_chatops/dispatchers/slack.py index c52d29aa..4787bc18 100644 --- a/nautobot_chatops/dispatchers/slack.py +++ b/nautobot_chatops/dispatchers/slack.py @@ -506,7 +506,7 @@ def select_element(self, action_id, choices, default=(None, None), confirm=False Args: action_id (str): Identifying string to associate with this element choices (list): List of (display, value) tuples - default (tuple: Default (display, value) to preselect + default (tuple): Default (display, value) to preselect confirm (bool): If true (and the platform supports it), prompt the user to confirm their selection """ data = { From 3101d0328c0deaafbb41948e02470a584493a354 Mon Sep 17 00:00:00 2001 From: Jan Snasel Date: Mon, 23 Oct 2023 12:22:45 +0000 Subject: [PATCH 20/93] fix: pylint --- nautobot_chatops/dispatchers/base.py | 6 +-- nautobot_chatops/dispatchers/mattermost.py | 1 - nautobot_chatops/dispatchers/ms_teams.py | 2 +- nautobot_chatops/dispatchers/slack.py | 1 - nautobot_chatops/integrations/aci/aci.py | 4 ++ .../integrations/ansible/tower.py | 4 ++ .../integrations/aristacv/cvpgrpcutils.py | 5 +- .../integrations/aristacv/utils.py | 1 + .../integrations/grafana/filters.py | 6 +-- .../integrations/meraki/worker.py | 2 + .../integrations/panorama/constant.py | 1 + .../integrations/panorama/utils.py | 16 +++++-- nautobot_chatops/sockets/slack.py | 11 +++-- nautobot_chatops/tests/aci/test_aci.py | 2 +- nautobot_chatops/tests/meraki/test_utils.py | 6 +-- nautobot_chatops/tests/test_utils.py | 1 - poetry.lock | 48 +++++++++++++------ pyproject.toml | 15 +++--- 18 files changed, 85 insertions(+), 47 deletions(-) diff --git a/nautobot_chatops/dispatchers/base.py b/nautobot_chatops/dispatchers/base.py index 9683cdb4..9bf67da6 100644 --- a/nautobot_chatops/dispatchers/base.py +++ b/nautobot_chatops/dispatchers/base.py @@ -53,7 +53,7 @@ def user(self): ).nautobot_user except ObjectDoesNotExist: logger.warning( - "Could not find User matching %s - id: %s." "Add a ChatOps User to link the accounts.", + "Could not find User matching %s - id: %s. Add a ChatOps User to link the accounts.", self.context["user_name"], self.context["user_id"], ) @@ -240,7 +240,6 @@ def multi_input_dialog(self, command, sub_command, dialog_title, dialog_list): """ raise NotImplementedError - # pylint: disable=no-self-use def needs_permission_to_send_image(self): """Return True if this bot needs to ask the user for permission to post an image.""" return False @@ -326,17 +325,14 @@ def user_mention(self): """Markup for a mention of the username/userid specified in our context.""" raise NotImplementedError - # pylint: disable=no-self-use def bold(self, text): """Mark text as bold.""" return f"**{text}**" - # pylint: disable=no-self-use def hyperlink(self, text, url): """Create Hyperlinks.""" return f"[{text}]({url})" - # pylint: disable=no-self-use def monospace(self, text): """Mark text as monospace.""" return f"`{text}`" diff --git a/nautobot_chatops/dispatchers/mattermost.py b/nautobot_chatops/dispatchers/mattermost.py index bc111dd6..5303f2a1 100644 --- a/nautobot_chatops/dispatchers/mattermost.py +++ b/nautobot_chatops/dispatchers/mattermost.py @@ -606,7 +606,6 @@ def actions_block(self, block_id, actions): # Leaving in place to pass the testing. return {"block_id": block_id, "actions": actions} - # pylint: disable=no-self-use def _input_block(self, block_id, label, element): """Construct a block consisting of Input elements.""" element["display_name"] = label diff --git a/nautobot_chatops/dispatchers/ms_teams.py b/nautobot_chatops/dispatchers/ms_teams.py index d49a9919..ead1e4c2 100644 --- a/nautobot_chatops/dispatchers/ms_teams.py +++ b/nautobot_chatops/dispatchers/ms_teams.py @@ -44,7 +44,7 @@ def user(self): ).nautobot_user except ObjectDoesNotExist: logger.warning( - "Could not find User matching %s - id: %s." "Add a ChatOps User to link the accounts.", + "Could not find User matching %s - id: %s. Add a ChatOps User to link the accounts.", self.context["user_name"], self.context["user_ad_id"], ) diff --git a/nautobot_chatops/dispatchers/slack.py b/nautobot_chatops/dispatchers/slack.py index 4787bc18..82ce52fc 100644 --- a/nautobot_chatops/dispatchers/slack.py +++ b/nautobot_chatops/dispatchers/slack.py @@ -315,7 +315,6 @@ def send_exception(self, exception): text=f"Sorry @{self.context.get('user_name')}, an error occurred :sob:\n```{exception}```", ) - # pylint: disable=no-self-use def delete_message(self, response_url): """Delete a message that was previously sent.""" WebhookClient(response_url).send_dict({"delete_original": "true"}) diff --git a/nautobot_chatops/integrations/aci/aci.py b/nautobot_chatops/integrations/aci/aci.py index 247a4694..572401fa 100644 --- a/nautobot_chatops/integrations/aci/aci.py +++ b/nautobot_chatops/integrations/aci/aci.py @@ -204,6 +204,7 @@ def get_static_path(self, tenant: str, ap: str, epg: str) -> list: ) sp_list = [] for obj in resp.json()["imdata"]: + # pylint: disable-next=use-dict-literal sp_dict = dict(encap=obj["fvRsPathAtt"]["attributes"]["encap"]) # pylint: disable-next=invalid-name tDn = obj["fvRsPathAtt"]["attributes"]["tDn"] @@ -273,6 +274,7 @@ def get_static_path(self, tenant: str, ap: str, epg: str) -> list: def get_epg_details(self, tenant: str, ap: str, epg: str) -> dict: """Return EPG configuration details.""" resp = self._get(f"/api/node/mo/uni/tn-{tenant}/ap-{ap}/epg-{epg}.json?query-target=children") + # pylint: disable-next=use-dict-literal epg_dict = dict(bd=None, subnets=[], provided_contracts=[], consumed_contracts=[], domains=[], static_paths=[]) epg_dict["name"] = epg for obj in resp.json()["imdata"]: @@ -281,6 +283,7 @@ def get_epg_details(self, tenant: str, ap: str, epg: str) -> dict: epg_dict["subnets"] = self.get_bd_subnet(tenant, epg_dict["bd"]) if "fvRsCons" in obj: epg_dict["consumed_contracts"].append( + # pylint: disable-next=use-dict-literal dict( name=obj["fvRsCons"]["attributes"]["tnVzBrCPName"], filters=self.get_contract_filters(tenant, obj["fvRsCons"]["attributes"]["tnVzBrCPName"]), @@ -288,6 +291,7 @@ def get_epg_details(self, tenant: str, ap: str, epg: str) -> dict: ) if "fvRsProv" in obj: epg_dict["provided_contracts"].append( + # pylint: disable-next=use-dict-literal dict( name=obj["fvRsProv"]["attributes"]["tnVzBrCPName"], filters=self.get_contract_filters(tenant, obj["fvRsProv"]["attributes"]["tnVzBrCPName"]), diff --git a/nautobot_chatops/integrations/ansible/tower.py b/nautobot_chatops/integrations/ansible/tower.py index 4f69ffdc..bd6e5c04 100644 --- a/nautobot_chatops/integrations/ansible/tower.py +++ b/nautobot_chatops/integrations/ansible/tower.py @@ -10,6 +10,8 @@ _CONFIG = settings.PLUGINS_CONFIG["nautobot_chatops"] +DEFAULT_TIMEOUT = 20 + def _get_uri(uri): """Validate URI schema and no trailing slash. @@ -79,6 +81,7 @@ def _launch_job(self, template_name, extra_vars): headers=self.headers, data=json.dumps({"extra_vars": extra_vars}), verify=self.tower_verify_ssl, # nosec + timeout=DEFAULT_TIMEOUT, ) response.raise_for_status() logger.info("Job submission to Ansible Tower:") @@ -100,6 +103,7 @@ def _get_tower(self, api_path, **kwargs): auth=(self.username, self.password), **kwargs, verify=self.tower_verify_ssl, # nosec + timeout=DEFAULT_TIMEOUT, ) return response.json() diff --git a/nautobot_chatops/integrations/aristacv/cvpgrpcutils.py b/nautobot_chatops/integrations/aristacv/cvpgrpcutils.py index 9e1d0da5..7a0ca77d 100644 --- a/nautobot_chatops/integrations/aristacv/cvpgrpcutils.py +++ b/nautobot_chatops/integrations/aristacv/cvpgrpcutils.py @@ -25,7 +25,10 @@ def connect_cv(settings): cert = bytes(ssl.get_server_certificate((cvp_host, 8443)), "utf-8") channel_creds = grpc.ssl_channel_credentials(cert) response = requests.post( - f"https://{cvp_host}/cvpservice/login/authenticate.do", auth=(username, password), verify=False # nosec + f"https://{cvp_host}/cvpservice/login/authenticate.do", + auth=(username, password), + verify=False, # nosec + timeout=DEFAULT_TIMEOUT, ) # Otherwise, the server is expected to have a valid certificate signed by a well-known CA. else: diff --git a/nautobot_chatops/integrations/aristacv/utils.py b/nautobot_chatops/integrations/aristacv/utils.py index 70ff1818..456987f3 100644 --- a/nautobot_chatops/integrations/aristacv/utils.py +++ b/nautobot_chatops/integrations/aristacv/utils.py @@ -560,6 +560,7 @@ def get_token_crt(): f"https://{CVP_HOST}/cvpservice/login/authenticate.do", auth=(CVP_USERNAME, CVP_PASSWORD), verify=False, # nosec + timeout=DEFAULT_TIMEOUT, ) else: request = requests.post( diff --git a/nautobot_chatops/integrations/grafana/filters.py b/nautobot_chatops/integrations/grafana/filters.py index be7bf0c0..51e4aa6b 100644 --- a/nautobot_chatops/integrations/grafana/filters.py +++ b/nautobot_chatops/integrations/grafana/filters.py @@ -18,7 +18,7 @@ class Meta: fields = ("dashboard_slug", "dashboard_uid", "friendly_name") - def search(self, queryset, name, value): # pylint: disable=unused-argument,no-self-use + def search(self, queryset, name, value): # pylint: disable=unused-argument """Perform the filtered search.""" if not value.strip(): return queryset @@ -40,7 +40,7 @@ class Meta: fields = ("dashboard", "command_name", "friendly_name", "panel_id") - def search(self, queryset, name, value): # pylint: disable=unused-argument,no-self-use + def search(self, queryset, name, value): # pylint: disable=unused-argument """Perform the filtered search.""" if not value.strip(): return queryset @@ -66,7 +66,7 @@ class Meta: fields = ("panel", "name", "friendly_name", "query", "modelattr", "value", "response") - def search(self, queryset, name, value): # pylint: disable=unused-argument,no-self-use + def search(self, queryset, name, value): # pylint: disable=unused-argument """Perform the filtered search.""" if not value.strip(): return queryset diff --git a/nautobot_chatops/integrations/meraki/worker.py b/nautobot_chatops/integrations/meraki/worker.py index 5b71502a..6d08f2c2 100644 --- a/nautobot_chatops/integrations/meraki/worker.py +++ b/nautobot_chatops/integrations/meraki/worker.py @@ -28,6 +28,7 @@ except KeyError as err: MERAKI_DASHBOARD_API_KEY = os.getenv("MERAKI_DASHBOARD_API_KEY") if not MERAKI_DASHBOARD_API_KEY: + # pylint: disable-next=broad-exception-raised raise Exception("Unable to find the Meraki API key.") from err @@ -570,6 +571,7 @@ def configure_basic_access_port( # pylint: disable=too-many-arguments dialog_list=dialog_list, ) return False + # pylint: disable-next=use-dict-literal port_params = dict(name=port_desc, enabled=bool(enabled), type="access", vlan=vlan) LOGGER.info("PORT PARMS: %s", port_params) client = MerakiClient(api_key=MERAKI_DASHBOARD_API_KEY) diff --git a/nautobot_chatops/integrations/panorama/constant.py b/nautobot_chatops/integrations/panorama/constant.py index 17967d43..1748f8f1 100644 --- a/nautobot_chatops/integrations/panorama/constant.py +++ b/nautobot_chatops/integrations/panorama/constant.py @@ -22,3 +22,4 @@ PANOS_MANUFACTURER_NAME = "Palo Alto Networks" PANOS_PLATFORM = "PANOS" PANOS_DEVICE_ROLE = "Firewall" +DEFAULT_TIMEOUT = 20 diff --git a/nautobot_chatops/integrations/panorama/utils.py b/nautobot_chatops/integrations/panorama/utils.py index e8157d9a..4d82f8b3 100644 --- a/nautobot_chatops/integrations/panorama/utils.py +++ b/nautobot_chatops/integrations/panorama/utils.py @@ -12,7 +12,7 @@ from panos.policies import PostRulebase, PreRulebase, Rulebase, SecurityRule from requests.exceptions import RequestException -from .constant import PLUGIN_CFG +from .constant import DEFAULT_TIMEOUT, PLUGIN_CFG logger = logging.getLogger(__name__) @@ -31,7 +31,12 @@ def get_api_key_api(url: str = PLUGIN_CFG["panorama_host"]) -> str: params = {"type": "keygen", "user": PLUGIN_CFG["panorama_user"], "password": PLUGIN_CFG["panorama_password"]} - response = requests.get(f"https://{url}/api/", params=params, verify=False) # nosec + response = requests.get( + f"https://{url}/api/", + params=params, + verify=False, # nosec + timeout=DEFAULT_TIMEOUT, + ) if response.status_code != 200: raise RequestException(f"Something went wrong while making a request. Reason: {response.text}") @@ -218,7 +223,12 @@ def _get_pcap(capture_filename: str, ip_address: str): params = {"key": get_api_key_api(), "type": "export", "category": "filters-pcap", "from": "1.pcap"} - respone = requests.get(url, params=params, verify=False) # nosec + respone = requests.get( + url, + params=params, + verify=False, # nosec + timeout=DEFAULT_TIMEOUT, + ) with open(capture_filename, "wb") as pcap_file: pcap_file.write(respone.content) diff --git a/nautobot_chatops/sockets/slack.py b/nautobot_chatops/sockets/slack.py index bf1f6c22..6d8dd1bb 100644 --- a/nautobot_chatops/sockets/slack.py +++ b/nautobot_chatops/sockets/slack.py @@ -15,11 +15,11 @@ from nautobot_chatops.utils import socket_check_and_enqueue_command -async def main(): # pylint: disable=too-many-statements +# pylint: disable-next=too-many-statements +async def main(): """Slack Socket Main Loop.""" - SLASH_PREFIX = settings.PLUGINS_CONFIG["nautobot_chatops"].get( # pylint:disable=invalid-name - "slack_slash_command_prefix" - ) + # pylint: disable-next=invalid-name + SLASH_PREFIX = settings.PLUGINS_CONFIG["nautobot_chatops"].get("slack_slash_command_prefix") client = SocketModeClient( app_token=settings.PLUGINS_CONFIG["nautobot_chatops"].get("slack_app_token"), web_client=AsyncWebClient(token=settings.PLUGINS_CONFIG["nautobot_chatops"]["slack_api_token"]), @@ -78,7 +78,7 @@ async def process_slash_command(client, req): return await socket_check_and_enqueue_command(registry, command, subcommand, params, context, SlackDispatcher) - # pylint: disable=too-many-locals,too-many-return-statements,too-many-branches,too-many-statements,too-many-nested-blocks + # pylint: disable-next=too-many-locals,too-many-return-statements,too-many-branches,too-many-statements async def process_interactive(client, req): client.logger.debug("Processing interactive.") payload = req.payload @@ -125,6 +125,7 @@ async def process_interactive(client, req): # Nothing more to do return + # pylint: disable-next=too-many-nested-blocks elif "view" in payload and payload["view"]: # View submission triggered from a modal dialog client.logger.info("Submission triggered from a modal dialog") diff --git a/nautobot_chatops/tests/aci/test_aci.py b/nautobot_chatops/tests/aci/test_aci.py index 2126f813..1385399a 100644 --- a/nautobot_chatops/tests/aci/test_aci.py +++ b/nautobot_chatops/tests/aci/test_aci.py @@ -1,5 +1,5 @@ """Tests for integrations.aci.aci.""" -# pylint: disable=no-self-use, import-outside-toplevel, invalid-name +# pylint: disable=invalid-name import unittest from unittest.mock import patch, Mock from nautobot_chatops.integrations.aci.aci import NautobotPluginChatopsAci, RequestHTTPError diff --git a/nautobot_chatops/tests/meraki/test_utils.py b/nautobot_chatops/tests/meraki/test_utils.py index 31680cdd..3a14a80b 100644 --- a/nautobot_chatops/tests/meraki/test_utils.py +++ b/nautobot_chatops/tests/meraki/test_utils.py @@ -9,7 +9,7 @@ class TestUtils(unittest.TestCase): """Test Version is the same.""" @patch("nautobot_chatops.integrations.meraki.utils.MerakiClient.get_meraki_orgs") - def test_org_name_to_id(self, mock_orgs): # pylint: disable=no-self-use + def test_org_name_to_id(self, mock_orgs): """Test Translate Org Name to Org Id.""" mock_orgs.return_value = [ { @@ -23,7 +23,7 @@ def test_org_name_to_id(self, mock_orgs): # pylint: disable=no-self-use assert client.org_name_to_id("NTC-TEST") == "123456" @patch("nautobot_chatops.integrations.meraki.utils.MerakiClient.get_meraki_devices") - def test_name_to_serial(self, mock_devices): # pylint: disable=no-self-use + def test_name_to_serial(self, mock_devices): """Test Translate Name to Serial.""" mock_devices.return_value = [ { @@ -45,7 +45,7 @@ def test_name_to_serial(self, mock_devices): # pylint: disable=no-self-use assert client.name_to_serial("NTC-TEST", "fw01-test") == "SN123456" @patch("nautobot_chatops.integrations.meraki.utils.MerakiClient.get_meraki_networks_by_org") - def test_netname_to_id(self, mock_net_name): # pylint: disable=no-self-use + def test_netname_to_id(self, mock_net_name): """Translate Network Name to Network ID.""" mock_net_name.return_value = [ { diff --git a/nautobot_chatops/tests/test_utils.py b/nautobot_chatops/tests/test_utils.py index 413fcbcb..8d5276e2 100644 --- a/nautobot_chatops/tests/test_utils.py +++ b/nautobot_chatops/tests/test_utils.py @@ -144,7 +144,6 @@ def test_default_deny(self, mock_enqueue_task): self.assertIsNone(MockDispatcher.error) mock_enqueue_task.assert_called_once() - # pylint: disable=no-self-use def setup_db(self): """Per-testcase database population for most test cases.""" # Create some globally applicable access grants: diff --git a/poetry.lock b/poetry.lock index b63aa415..c55799d9 100644 --- a/poetry.lock +++ b/poetry.lock @@ -227,20 +227,22 @@ tests = ["mypy (>=0.800)", "pytest", "pytest-asyncio"] [[package]] name = "astroid" -version = "2.11.7" +version = "2.15.8" description = "An abstract syntax tree for Python with inference support." optional = false -python-versions = ">=3.6.2" +python-versions = ">=3.7.2" files = [ - {file = "astroid-2.11.7-py3-none-any.whl", hash = "sha256:86b0a340a512c65abf4368b80252754cda17c02cdbbd3f587dddf98112233e7b"}, - {file = "astroid-2.11.7.tar.gz", hash = "sha256:bb24615c77f4837c707669d16907331374ae8a964650a66999da3f5ca68dc946"}, + {file = "astroid-2.15.8-py3-none-any.whl", hash = "sha256:1aa149fc5c6589e3d0ece885b4491acd80af4f087baafa3fb5203b113e68cd3c"}, + {file = "astroid-2.15.8.tar.gz", hash = "sha256:6c107453dffee9055899705de3c9ead36e74119cee151e5a9aaf7f0b0e020a6a"}, ] [package.dependencies] lazy-object-proxy = ">=1.4.0" -setuptools = ">=20.0" -typing-extensions = {version = ">=3.10", markers = "python_version < \"3.10\""} -wrapt = ">=1.11,<2" +typing-extensions = {version = ">=4.0.0", markers = "python_version < \"3.11\""} +wrapt = [ + {version = ">=1.11,<2", markers = "python_version < \"3.11\""}, + {version = ">=1.14,<2", markers = "python_version >= \"3.11\""}, +] [[package]] name = "asttokens" @@ -3439,27 +3441,32 @@ tests = ["coverage[toml] (==5.0.4)", "pytest (>=6.0.0,<7.0.0)"] [[package]] name = "pylint" -version = "2.13.9" +version = "2.17.7" description = "python code static checker" optional = false -python-versions = ">=3.6.2" +python-versions = ">=3.7.2" files = [ - {file = "pylint-2.13.9-py3-none-any.whl", hash = "sha256:705c620d388035bdd9ff8b44c5bcdd235bfb49d276d488dd2c8ff1736aa42526"}, - {file = "pylint-2.13.9.tar.gz", hash = "sha256:095567c96e19e6f57b5b907e67d265ff535e588fe26b12b5ebe1fc5645b2c731"}, + {file = "pylint-2.17.7-py3-none-any.whl", hash = "sha256:27a8d4c7ddc8c2f8c18aa0050148f89ffc09838142193fdbe98f172781a3ff87"}, + {file = "pylint-2.17.7.tar.gz", hash = "sha256:f4fcac7ae74cfe36bc8451e931d8438e4a476c20314b1101c458ad0f05191fad"}, ] [package.dependencies] -astroid = ">=2.11.5,<=2.12.0-dev0" -colorama = {version = "*", markers = "sys_platform == \"win32\""} -dill = ">=0.2" +astroid = ">=2.15.8,<=2.17.0-dev0" +colorama = {version = ">=0.4.5", markers = "sys_platform == \"win32\""} +dill = [ + {version = ">=0.2", markers = "python_version < \"3.11\""}, + {version = ">=0.3.6", markers = "python_version >= \"3.11\""}, +] isort = ">=4.2.5,<6" mccabe = ">=0.6,<0.8" platformdirs = ">=2.2.0" tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""} +tomlkit = ">=0.10.1" typing-extensions = {version = ">=3.10.0", markers = "python_version < \"3.10\""} [package.extras] -testutil = ["gitpython (>3)"] +spelling = ["pyenchant (>=3.2,<4.0)"] +testutils = ["gitpython (>3)"] [[package]] name = "pylint-django" @@ -4467,6 +4474,17 @@ files = [ {file = "tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f"}, ] +[[package]] +name = "tomlkit" +version = "0.12.1" +description = "Style preserving TOML library" +optional = false +python-versions = ">=3.7" +files = [ + {file = "tomlkit-0.12.1-py3-none-any.whl", hash = "sha256:712cbd236609acc6a3e2e97253dfc52d4c2082982a88f61b640ecf0817eab899"}, + {file = "tomlkit-0.12.1.tar.gz", hash = "sha256:38e1ff8edb991273ec9f6181244a6a391ac30e9f5098e7535640ea6be97a7c86"}, +] + [[package]] name = "towncrier" version = "22.8.0" diff --git a/pyproject.toml b/pyproject.toml index 68e52107..4e609703 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -185,13 +185,14 @@ no-docstring-rgx="^(_|test_|Meta$)" [tool.pylint.messages_control] # Line length is enforced by Black, so pylint doesn't need to check it. # Pylint and Black disagree about how to format multi-line arrays; Black wins. -disable = """, - line-too-long, - too-few-public-methods, - too-many-lines, - too-many-ancestors, - nb-incorrect-base-class, - """ +disable = [ + "line-too-long", + "nb-incorrect-base-class", + "too-few-public-methods", + "too-many-ancestors", + "too-many-arguments", + "too-many-lines", +] [tool.pylint.miscellaneous] # Don't flag TODO as a failure, let us commit with things that still need to be done in the code From cf492c51807903c1191c32b16c71b109c7027082 Mon Sep 17 00:00:00 2001 From: Jan Snasel Date: Thu, 26 Oct 2023 12:53:04 +0000 Subject: [PATCH 21/93] feat: Updated Mattermost preview compose service to `9.0.1` --- development/creds.example.env | 2 +- development/mattermost/docker-compose.yml | 5 +- development/mattermost/dump.sql | 5991 ++++++++++++------ development/mattermost/nautobot_bootstrap.py | 18 +- tasks.py | 41 +- 5 files changed, 4151 insertions(+), 1906 deletions(-) diff --git a/development/creds.example.env b/development/creds.example.env index 34f27de1..fef92421 100644 --- a/development/creds.example.env +++ b/development/creds.example.env @@ -29,7 +29,7 @@ MYSQL_PASSWORD=${NAUTOBOT_DB_PASSWORD} # = Chat Platforms =================== # - Mattermost ----------------------- -MATTERMOST_API_TOKEN="5qsffxoapt883qfdygbdgf17jy" +MATTERMOST_API_TOKEN="nsutx44ibbd69r5hjjmd3hx4sw" # - Microsoft Teams ------------------ # MICROSOFT_APP_ID="changeme" diff --git a/development/mattermost/docker-compose.yml b/development/mattermost/docker-compose.yml index f1041801..db35af18 100644 --- a/development/mattermost/docker-compose.yml +++ b/development/mattermost/docker-compose.yml @@ -10,10 +10,11 @@ services: worker: <<: *nautobot mattermost: - image: "mattermost/mattermost-preview:7.8.9" + image: "mattermost/mattermost-preview:9.0.1" hostname: "mattermost" environment: MM_LOGSETTINGS_SENDCRASHREPORTS: "false" + MM_SERVICESETTINGS_ALLOWCORSFROM: "*" MM_SERVICESETTINGS_ALLOWEDUNTRUSTEDINTERNALCONNECTIONS: "0.0.0.0/0" MM_SERVICESETTINGS_ENABLEDEVELOPER: "true" MM_SERVICESETTINGS_ENABLEDIAGNOSTICS: "false" @@ -23,6 +24,6 @@ services: - "8065:8065" volumes: - "./mattermost/dump.sql:/docker-entrypoint-initdb.d/dump.sql" - - "mattermost-data:/var/lib/mysql" + - "mattermost-data:/var/lib/postgresql/data" volumes: mattermost-data: {} diff --git a/development/mattermost/dump.sql b/development/mattermost/dump.sql index f0e3cb82..f353bb8d 100644 --- a/development/mattermost/dump.sql +++ b/development/mattermost/dump.sql @@ -1,1863 +1,4130 @@ +-- +-- PostgreSQL database dump +-- + +-- Dumped from database version 12.16 (Debian 12.16-1.pgdg120+1) +-- Dumped by pg_dump version 12.16 (Debian 12.16-1.pgdg120+1) + +SET statement_timeout = 0; +SET lock_timeout = 0; +SET idle_in_transaction_session_timeout = 0; +SET client_encoding = 'UTF8'; +SET standard_conforming_strings = on; +SELECT pg_catalog.set_config('search_path', '', false); +SET check_function_bodies = false; +SET xmloption = content; +SET client_min_messages = warning; +SET row_security = off; + +-- +-- Name: channel_type; Type: TYPE; Schema: public; Owner: mmuser +-- + +CREATE TYPE public.channel_type AS ENUM ( + 'P', + 'G', + 'O', + 'D' +); + + +ALTER TYPE public.channel_type OWNER TO mmuser; + +-- +-- Name: team_type; Type: TYPE; Schema: public; Owner: mmuser +-- + +CREATE TYPE public.team_type AS ENUM ( + 'I', + 'O' +); + + +ALTER TYPE public.team_type OWNER TO mmuser; + +-- +-- Name: upload_session_type; Type: TYPE; Schema: public; Owner: mmuser +-- + +CREATE TYPE public.upload_session_type AS ENUM ( + 'attachment', + 'import' +); + + +ALTER TYPE public.upload_session_type OWNER TO mmuser; + +SET default_tablespace = ''; + +SET default_table_access_method = heap; + +-- +-- Name: audits; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.audits ( + id character varying(26) NOT NULL, + createat bigint, + userid character varying(26), + action character varying(512), + extrainfo character varying(1024), + ipaddress character varying(64), + sessionid character varying(26) +); + + +ALTER TABLE public.audits OWNER TO mmuser; + +-- +-- Name: bots; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.bots ( + userid character varying(26) NOT NULL, + description character varying(1024), + ownerid character varying(190), + createat bigint, + updateat bigint, + deleteat bigint, + lasticonupdate bigint +); + + +ALTER TABLE public.bots OWNER TO mmuser; + +-- +-- Name: channelmemberhistory; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.channelmemberhistory ( + channelid character varying(26) NOT NULL, + userid character varying(26) NOT NULL, + jointime bigint NOT NULL, + leavetime bigint +); + + +ALTER TABLE public.channelmemberhistory OWNER TO mmuser; + +-- +-- Name: channelmembers; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.channelmembers ( + channelid character varying(26) NOT NULL, + userid character varying(26) NOT NULL, + roles character varying(256), + lastviewedat bigint, + msgcount bigint, + mentioncount bigint, + notifyprops jsonb, + lastupdateat bigint, + schemeuser boolean, + schemeadmin boolean, + schemeguest boolean, + mentioncountroot bigint, + msgcountroot bigint, + urgentmentioncount bigint +); + + +ALTER TABLE public.channelmembers OWNER TO mmuser; + +-- +-- Name: channels; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.channels ( + id character varying(26) NOT NULL, + createat bigint, + updateat bigint, + deleteat bigint, + teamid character varying(26), + type public.channel_type, + displayname character varying(64), + name character varying(64), + header character varying(1024), + purpose character varying(250), + lastpostat bigint, + totalmsgcount bigint, + extraupdateat bigint, + creatorid character varying(26), + schemeid character varying(26), + groupconstrained boolean, + shared boolean, + totalmsgcountroot bigint, + lastrootpostat bigint DEFAULT '0'::bigint +); + + +ALTER TABLE public.channels OWNER TO mmuser; + +-- +-- Name: clusterdiscovery; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.clusterdiscovery ( + id character varying(26) NOT NULL, + type character varying(64), + clustername character varying(64), + hostname character varying(512), + gossipport integer, + port integer, + createat bigint, + lastpingat bigint +); + + +ALTER TABLE public.clusterdiscovery OWNER TO mmuser; + +-- +-- Name: commands; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.commands ( + id character varying(26) NOT NULL, + token character varying(26), + createat bigint, + updateat bigint, + deleteat bigint, + creatorid character varying(26), + teamid character varying(26), + trigger character varying(128), + method character varying(1), + username character varying(64), + iconurl character varying(1024), + autocomplete boolean, + autocompletedesc character varying(1024), + autocompletehint character varying(1024), + displayname character varying(64), + description character varying(128), + url character varying(1024), + pluginid character varying(190) +); + + +ALTER TABLE public.commands OWNER TO mmuser; + +-- +-- Name: commandwebhooks; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.commandwebhooks ( + id character varying(26) NOT NULL, + createat bigint, + commandid character varying(26), + userid character varying(26), + channelid character varying(26), + rootid character varying(26), + usecount integer +); + + +ALTER TABLE public.commandwebhooks OWNER TO mmuser; + +-- +-- Name: compliances; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.compliances ( + id character varying(26) NOT NULL, + createat bigint, + userid character varying(26), + status character varying(64), + count integer, + "desc" character varying(512), + type character varying(64), + startat bigint, + endat bigint, + keywords character varying(512), + emails character varying(1024) +); + + +ALTER TABLE public.compliances OWNER TO mmuser; + +-- +-- Name: db_lock; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.db_lock ( + id character varying(64) NOT NULL, + expireat bigint +); + + +ALTER TABLE public.db_lock OWNER TO mmuser; + +-- +-- Name: db_migrations; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.db_migrations ( + version bigint NOT NULL, + name character varying NOT NULL +); + + +ALTER TABLE public.db_migrations OWNER TO mmuser; + +-- +-- Name: drafts; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.drafts ( + createat bigint, + updateat bigint, + deleteat bigint, + userid character varying(26) NOT NULL, + channelid character varying(26) NOT NULL, + rootid character varying(26) DEFAULT ''::character varying NOT NULL, + message character varying(65535), + props character varying(8000), + fileids character varying(300), + priority text +); + + +ALTER TABLE public.drafts OWNER TO mmuser; + +-- +-- Name: emoji; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.emoji ( + id character varying(26) NOT NULL, + createat bigint, + updateat bigint, + deleteat bigint, + creatorid character varying(26), + name character varying(64) +); + + +ALTER TABLE public.emoji OWNER TO mmuser; + +-- +-- Name: fileinfo; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.fileinfo ( + id character varying(26) NOT NULL, + creatorid character varying(26), + postid character varying(26), + createat bigint, + updateat bigint, + deleteat bigint, + path character varying(512), + thumbnailpath character varying(512), + previewpath character varying(512), + name character varying(256), + extension character varying(64), + size bigint, + mimetype character varying(256), + width integer, + height integer, + haspreviewimage boolean, + minipreview bytea, + content text, + remoteid character varying(26), + archived boolean DEFAULT false NOT NULL, + channelid character varying(26) +) +WITH (autovacuum_vacuum_scale_factor='0.1', autovacuum_analyze_scale_factor='0.05'); + + +ALTER TABLE public.fileinfo OWNER TO mmuser; + +-- +-- Name: groupchannels; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.groupchannels ( + groupid character varying(26) NOT NULL, + autoadd boolean, + schemeadmin boolean, + createat bigint, + deleteat bigint, + updateat bigint, + channelid character varying(26) NOT NULL +); + + +ALTER TABLE public.groupchannels OWNER TO mmuser; + +-- +-- Name: groupmembers; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.groupmembers ( + groupid character varying(26) NOT NULL, + userid character varying(26) NOT NULL, + createat bigint, + deleteat bigint +); + + +ALTER TABLE public.groupmembers OWNER TO mmuser; + +-- +-- Name: groupteams; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.groupteams ( + groupid character varying(26) NOT NULL, + autoadd boolean, + schemeadmin boolean, + createat bigint, + deleteat bigint, + updateat bigint, + teamid character varying(26) NOT NULL +); + + +ALTER TABLE public.groupteams OWNER TO mmuser; + +-- +-- Name: incomingwebhooks; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.incomingwebhooks ( + id character varying(26) NOT NULL, + createat bigint, + updateat bigint, + deleteat bigint, + userid character varying(26), + channelid character varying(26), + teamid character varying(26), + displayname character varying(64), + description character varying(500), + username character varying(255), + iconurl character varying(1024), + channellocked boolean +); + + +ALTER TABLE public.incomingwebhooks OWNER TO mmuser; + +-- +-- Name: ir_category; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.ir_category ( + id character varying(26) NOT NULL, + name character varying(512) NOT NULL, + teamid character varying(26) NOT NULL, + userid character varying(26) NOT NULL, + collapsed boolean DEFAULT false, + createat bigint NOT NULL, + updateat bigint DEFAULT 0 NOT NULL, + deleteat bigint DEFAULT 0 NOT NULL +); + + +ALTER TABLE public.ir_category OWNER TO mmuser; + +-- +-- Name: ir_category_item; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.ir_category_item ( + type character varying(1) NOT NULL, + categoryid character varying(26) NOT NULL, + itemid character varying(26) NOT NULL +); + + +ALTER TABLE public.ir_category_item OWNER TO mmuser; + +-- +-- Name: ir_channelaction; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.ir_channelaction ( + id character varying(26) NOT NULL, + channelid character varying(26), + enabled boolean DEFAULT false, + deleteat bigint DEFAULT 0 NOT NULL, + actiontype character varying(65535) NOT NULL, + triggertype character varying(65535) NOT NULL, + payload json NOT NULL +); + + +ALTER TABLE public.ir_channelaction OWNER TO mmuser; + +-- +-- Name: ir_incident; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.ir_incident ( + id character varying(26) NOT NULL, + name character varying(1024) NOT NULL, + description character varying(4096) NOT NULL, + isactive boolean NOT NULL, + commanderuserid character varying(26) NOT NULL, + teamid character varying(26) NOT NULL, + channelid character varying(26) NOT NULL, + createat bigint NOT NULL, + endat bigint DEFAULT 0 NOT NULL, + deleteat bigint DEFAULT 0 NOT NULL, + activestage bigint NOT NULL, + postid character varying(26) DEFAULT ''::text NOT NULL, + playbookid character varying(26) DEFAULT ''::text NOT NULL, + checklistsjson json NOT NULL, + activestagetitle character varying(1024) DEFAULT ''::text, + reminderpostid character varying(26), + broadcastchannelid character varying(26) DEFAULT ''::text, + previousreminder bigint DEFAULT 0 NOT NULL, + remindermessagetemplate character varying(65535) DEFAULT ''::text, + currentstatus character varying(1024) DEFAULT 'Active'::text NOT NULL, + reporteruserid character varying(26) DEFAULT ''::text NOT NULL, + concatenatedinviteduserids character varying(65535) DEFAULT ''::text, + defaultcommanderid character varying(26) DEFAULT ''::text, + announcementchannelid character varying(26) DEFAULT ''::text, + concatenatedwebhookoncreationurls character varying(65535) DEFAULT ''::text, + concatenatedinvitedgroupids character varying(65535) DEFAULT ''::text, + retrospective character varying(65535) DEFAULT ''::text, + messageonjoin character varying(65535) DEFAULT ''::text, + retrospectivepublishedat bigint DEFAULT 0 NOT NULL, + retrospectivereminderintervalseconds bigint DEFAULT 0 NOT NULL, + retrospectivewascanceled boolean DEFAULT false, + concatenatedwebhookonstatusupdateurls character varying(65535) DEFAULT ''::text, + laststatusupdateat bigint DEFAULT 0, + exportchannelonfinishedenabled boolean DEFAULT false NOT NULL, + categorizechannelenabled boolean DEFAULT false, + categoryname character varying(65535) DEFAULT ''::text, + concatenatedbroadcastchannelids character varying(65535), + channelidtorootid character varying(65535) DEFAULT ''::text, + remindertimerdefaultseconds bigint DEFAULT 0 NOT NULL, + statusupdateenabled boolean DEFAULT true, + retrospectiveenabled boolean DEFAULT true, + statusupdatebroadcastchannelsenabled boolean DEFAULT false, + statusupdatebroadcastwebhooksenabled boolean DEFAULT false, + summarymodifiedat bigint DEFAULT 0 NOT NULL, + createchannelmemberonnewparticipant boolean DEFAULT true, + removechannelmemberonremovedparticipant boolean DEFAULT true, + runtype character varying(32) DEFAULT 'playbook'::character varying +); + + +ALTER TABLE public.ir_incident OWNER TO mmuser; + +-- +-- Name: ir_metric; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.ir_metric ( + incidentid character varying(26) NOT NULL, + metricconfigid character varying(26) NOT NULL, + value bigint, + published boolean NOT NULL +); + + +ALTER TABLE public.ir_metric OWNER TO mmuser; + +-- +-- Name: ir_metricconfig; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.ir_metricconfig ( + id character varying(26) NOT NULL, + playbookid character varying(26) NOT NULL, + title character varying(512) NOT NULL, + description character varying(4096) NOT NULL, + type character varying(32) NOT NULL, + target bigint, + ordering smallint DEFAULT 0 NOT NULL, + deleteat bigint DEFAULT 0 NOT NULL +); + + +ALTER TABLE public.ir_metricconfig OWNER TO mmuser; + +-- +-- Name: ir_playbook; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.ir_playbook ( + id character varying(26) NOT NULL, + title character varying(1024) NOT NULL, + description character varying(4096) NOT NULL, + teamid character varying(26) NOT NULL, + createpublicincident boolean NOT NULL, + createat bigint NOT NULL, + deleteat bigint DEFAULT 0 NOT NULL, + checklistsjson json NOT NULL, + numstages bigint DEFAULT 0 NOT NULL, + numsteps bigint DEFAULT 0 NOT NULL, + broadcastchannelid character varying(26) DEFAULT ''::text, + remindermessagetemplate character varying(65535) DEFAULT ''::text, + remindertimerdefaultseconds bigint DEFAULT 0 NOT NULL, + concatenatedinviteduserids character varying(65535) DEFAULT ''::text, + inviteusersenabled boolean DEFAULT false, + defaultcommanderid character varying(26) DEFAULT ''::text, + defaultcommanderenabled boolean DEFAULT false, + announcementchannelid character varying(26) DEFAULT ''::text, + announcementchannelenabled boolean DEFAULT false, + concatenatedwebhookoncreationurls character varying(65535) DEFAULT ''::text, + webhookoncreationenabled boolean DEFAULT false, + concatenatedinvitedgroupids character varying(65535) DEFAULT ''::text, + messageonjoin character varying(65535) DEFAULT ''::text, + messageonjoinenabled boolean DEFAULT false, + retrospectivereminderintervalseconds bigint DEFAULT 0 NOT NULL, + retrospectivetemplate character varying(65535), + concatenatedwebhookonstatusupdateurls character varying(65535) DEFAULT ''::text, + webhookonstatusupdateenabled boolean DEFAULT false, + concatenatedsignalanykeywords character varying(65535) DEFAULT ''::text, + signalanykeywordsenabled boolean DEFAULT false, + updateat bigint DEFAULT 0 NOT NULL, + exportchannelonfinishedenabled boolean DEFAULT false NOT NULL, + categorizechannelenabled boolean DEFAULT false, + categoryname character varying(65535) DEFAULT ''::text, + concatenatedbroadcastchannelids character varying(65535), + broadcastenabled boolean DEFAULT false, + runsummarytemplate character varying(65535) DEFAULT ''::text, + channelnametemplate character varying(65535) DEFAULT ''::text, + statusupdateenabled boolean DEFAULT true, + retrospectiveenabled boolean DEFAULT true, + public boolean DEFAULT false, + runsummarytemplateenabled boolean DEFAULT true, + createchannelmemberonnewparticipant boolean DEFAULT true, + removechannelmemberonremovedparticipant boolean DEFAULT true, + channelid character varying(26) DEFAULT ''::character varying, + channelmode character varying(32) DEFAULT 'create_new_channel'::character varying +); + + +ALTER TABLE public.ir_playbook OWNER TO mmuser; + +-- +-- Name: ir_playbookautofollow; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.ir_playbookautofollow ( + playbookid character varying(26) NOT NULL, + userid character varying(26) NOT NULL +); + + +ALTER TABLE public.ir_playbookautofollow OWNER TO mmuser; + +-- +-- Name: ir_playbookmember; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.ir_playbookmember ( + playbookid character varying(26) NOT NULL, + memberid character varying(26) NOT NULL, + roles character varying(65535) +); + + +ALTER TABLE public.ir_playbookmember OWNER TO mmuser; + +-- +-- Name: ir_run_participants; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.ir_run_participants ( + userid character varying(26) NOT NULL, + incidentid character varying(26) NOT NULL, + isfollower boolean DEFAULT false NOT NULL, + isparticipant boolean DEFAULT false +); + + +ALTER TABLE public.ir_run_participants OWNER TO mmuser; + +-- +-- Name: ir_statusposts; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.ir_statusposts ( + incidentid character varying(26) NOT NULL, + postid character varying(26) NOT NULL +); + + +ALTER TABLE public.ir_statusposts OWNER TO mmuser; + +-- +-- Name: ir_system; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.ir_system ( + skey character varying(64) NOT NULL, + svalue character varying(1024) +); + + +ALTER TABLE public.ir_system OWNER TO mmuser; + +-- +-- Name: ir_timelineevent; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.ir_timelineevent ( + id character varying(26) NOT NULL, + incidentid character varying(26) NOT NULL, + createat bigint NOT NULL, + deleteat bigint DEFAULT 0 NOT NULL, + eventat bigint NOT NULL, + eventtype character varying(32) DEFAULT ''::text NOT NULL, + summary character varying(256) DEFAULT ''::text NOT NULL, + details character varying(4096) DEFAULT ''::text NOT NULL, + postid character varying(26) DEFAULT ''::text NOT NULL, + subjectuserid character varying(26) DEFAULT ''::text NOT NULL, + creatoruserid character varying(26) DEFAULT ''::text NOT NULL +); + + +ALTER TABLE public.ir_timelineevent OWNER TO mmuser; + +-- +-- Name: ir_userinfo; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.ir_userinfo ( + id character varying(26) NOT NULL, + lastdailytododmat bigint, + digestnotificationsettingsjson json +); + + +ALTER TABLE public.ir_userinfo OWNER TO mmuser; + +-- +-- Name: ir_viewedchannel; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.ir_viewedchannel ( + channelid character varying(26) NOT NULL, + userid character varying(26) NOT NULL +); + + +ALTER TABLE public.ir_viewedchannel OWNER TO mmuser; + +-- +-- Name: jobs; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.jobs ( + id character varying(26) NOT NULL, + type character varying(32), + priority bigint, + createat bigint, + startat bigint, + lastactivityat bigint, + status character varying(32), + progress bigint, + data jsonb +); + + +ALTER TABLE public.jobs OWNER TO mmuser; + +-- +-- Name: licenses; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.licenses ( + id character varying(26) NOT NULL, + createat bigint, + bytes character varying(10000) +); + + +ALTER TABLE public.licenses OWNER TO mmuser; + +-- +-- Name: linkmetadata; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.linkmetadata ( + hash bigint NOT NULL, + url character varying(2048), + "timestamp" bigint, + type character varying(16), + data jsonb +); + + +ALTER TABLE public.linkmetadata OWNER TO mmuser; + +-- +-- Name: notifyadmin; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.notifyadmin ( + userid character varying(26) NOT NULL, + createat bigint, + requiredplan character varying(100) NOT NULL, + requiredfeature character varying(255) NOT NULL, + trial boolean NOT NULL, + sentat bigint +); + + +ALTER TABLE public.notifyadmin OWNER TO mmuser; + +-- +-- Name: oauthaccessdata; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.oauthaccessdata ( + token character varying(26) NOT NULL, + refreshtoken character varying(26), + redirecturi character varying(256), + clientid character varying(26), + userid character varying(26), + expiresat bigint, + scope character varying(128) +); + + +ALTER TABLE public.oauthaccessdata OWNER TO mmuser; + +-- +-- Name: oauthapps; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.oauthapps ( + id character varying(26) NOT NULL, + creatorid character varying(26), + createat bigint, + updateat bigint, + clientsecret character varying(128), + name character varying(64), + description character varying(512), + callbackurls character varying(1024), + homepage character varying(256), + istrusted boolean, + iconurl character varying(512), + mattermostappid character varying(32) DEFAULT ''::character varying NOT NULL +); + + +ALTER TABLE public.oauthapps OWNER TO mmuser; + +-- +-- Name: oauthauthdata; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.oauthauthdata ( + clientid character varying(26), + userid character varying(26), + code character varying(128) NOT NULL, + expiresin integer, + createat bigint, + redirecturi character varying(256), + state character varying(1024), + scope character varying(128) +); + + +ALTER TABLE public.oauthauthdata OWNER TO mmuser; + +-- +-- Name: outgoingwebhooks; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.outgoingwebhooks ( + id character varying(26) NOT NULL, + token character varying(26), + createat bigint, + updateat bigint, + deleteat bigint, + creatorid character varying(26), + channelid character varying(26), + teamid character varying(26), + triggerwords character varying(1024), + callbackurls character varying(1024), + displayname character varying(64), + contenttype character varying(128), + triggerwhen integer, + username character varying(64), + iconurl character varying(1024), + description character varying(500) +); + + +ALTER TABLE public.outgoingwebhooks OWNER TO mmuser; + +-- +-- Name: persistentnotifications; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.persistentnotifications ( + postid character varying(26) NOT NULL, + createat bigint, + lastsentat bigint, + deleteat bigint, + sentcount smallint +); + + +ALTER TABLE public.persistentnotifications OWNER TO mmuser; + +-- +-- Name: pluginkeyvaluestore; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.pluginkeyvaluestore ( + pluginid character varying(190) NOT NULL, + pkey character varying(150) NOT NULL, + pvalue bytea, + expireat bigint +); + + +ALTER TABLE public.pluginkeyvaluestore OWNER TO mmuser; + +-- +-- Name: postacknowledgements; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.postacknowledgements ( + postid character varying(26) NOT NULL, + userid character varying(26) NOT NULL, + acknowledgedat bigint +); + + +ALTER TABLE public.postacknowledgements OWNER TO mmuser; + +-- +-- Name: postreminders; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.postreminders ( + postid character varying(26) NOT NULL, + userid character varying(26) NOT NULL, + targettime bigint +); + + +ALTER TABLE public.postreminders OWNER TO mmuser; + +-- +-- Name: posts; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.posts ( + id character varying(26) NOT NULL, + createat bigint, + updateat bigint, + deleteat bigint, + userid character varying(26), + channelid character varying(26), + rootid character varying(26), + originalid character varying(26), + message character varying(65535), + type character varying(26), + props jsonb, + hashtags character varying(1000), + filenames character varying(4000), + fileids character varying(300), + hasreactions boolean, + editat bigint, + ispinned boolean, + remoteid character varying(26) +) +WITH (autovacuum_vacuum_scale_factor='0.1', autovacuum_analyze_scale_factor='0.05'); + + +ALTER TABLE public.posts OWNER TO mmuser; + +-- +-- Name: postspriority; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.postspriority ( + postid character varying(26) NOT NULL, + channelid character varying(26) NOT NULL, + priority character varying(32) NOT NULL, + requestedack boolean, + persistentnotifications boolean +); + + +ALTER TABLE public.postspriority OWNER TO mmuser; + +-- +-- Name: preferences; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.preferences ( + userid character varying(26) NOT NULL, + category character varying(32) NOT NULL, + name character varying(32) NOT NULL, + value character varying(2000) +) +WITH (autovacuum_vacuum_scale_factor='0.1', autovacuum_analyze_scale_factor='0.05'); + + +ALTER TABLE public.preferences OWNER TO mmuser; + +-- +-- Name: productnoticeviewstate; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.productnoticeviewstate ( + userid character varying(26) NOT NULL, + noticeid character varying(26) NOT NULL, + viewed integer, + "timestamp" bigint +); + + +ALTER TABLE public.productnoticeviewstate OWNER TO mmuser; + +-- +-- Name: publicchannels; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.publicchannels ( + id character varying(26) NOT NULL, + deleteat bigint, + teamid character varying(26), + displayname character varying(64), + name character varying(64), + header character varying(1024), + purpose character varying(250) +); + + +ALTER TABLE public.publicchannels OWNER TO mmuser; + +-- +-- Name: reactions; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.reactions ( + userid character varying(26) NOT NULL, + postid character varying(26) NOT NULL, + emojiname character varying(64) NOT NULL, + createat bigint, + updateat bigint, + deleteat bigint, + remoteid character varying(26), + channelid character varying(26) DEFAULT ''::character varying NOT NULL +); + + +ALTER TABLE public.reactions OWNER TO mmuser; + +-- +-- Name: recentsearches; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.recentsearches ( + userid character(26) NOT NULL, + searchpointer integer NOT NULL, + query jsonb, + createat bigint NOT NULL +); + + +ALTER TABLE public.recentsearches OWNER TO mmuser; + +-- +-- Name: remoteclusters; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.remoteclusters ( + remoteid character varying(26) NOT NULL, + remoteteamid character varying(26), + name character varying(64) NOT NULL, + displayname character varying(64), + siteurl character varying(512), + createat bigint, + lastpingat bigint, + token character varying(26), + remotetoken character varying(26), + topics character varying(512), + creatorid character varying(26) +); + + +ALTER TABLE public.remoteclusters OWNER TO mmuser; + +-- +-- Name: retentionpolicies; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.retentionpolicies ( + id character varying(26) NOT NULL, + displayname character varying(64), + postduration bigint +); + + +ALTER TABLE public.retentionpolicies OWNER TO mmuser; + +-- +-- Name: retentionpolicieschannels; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.retentionpolicieschannels ( + policyid character varying(26), + channelid character varying(26) NOT NULL +); + + +ALTER TABLE public.retentionpolicieschannels OWNER TO mmuser; + +-- +-- Name: retentionpoliciesteams; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.retentionpoliciesteams ( + policyid character varying(26), + teamid character varying(26) NOT NULL +); + + +ALTER TABLE public.retentionpoliciesteams OWNER TO mmuser; + +-- +-- Name: roles; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.roles ( + id character varying(26) NOT NULL, + name character varying(64), + displayname character varying(128), + description character varying(1024), + createat bigint, + updateat bigint, + deleteat bigint, + permissions text, + schememanaged boolean, + builtin boolean +); + + +ALTER TABLE public.roles OWNER TO mmuser; + +-- +-- Name: schemes; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.schemes ( + id character varying(26) NOT NULL, + name character varying(64), + displayname character varying(128), + description character varying(1024), + createat bigint, + updateat bigint, + deleteat bigint, + scope character varying(32), + defaultteamadminrole character varying(64), + defaultteamuserrole character varying(64), + defaultchanneladminrole character varying(64), + defaultchanneluserrole character varying(64), + defaultteamguestrole character varying(64), + defaultchannelguestrole character varying(64), + defaultplaybookadminrole character varying(64) DEFAULT ''::character varying, + defaultplaybookmemberrole character varying(64) DEFAULT ''::character varying, + defaultrunadminrole character varying(64) DEFAULT ''::character varying, + defaultrunmemberrole character varying(64) DEFAULT ''::character varying +); + + +ALTER TABLE public.schemes OWNER TO mmuser; + +-- +-- Name: sessions; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.sessions ( + id character varying(26) NOT NULL, + token character varying(26), + createat bigint, + expiresat bigint, + lastactivityat bigint, + userid character varying(26), + deviceid character varying(512), + roles character varying(256), + isoauth boolean, + props jsonb, + expirednotify boolean +); + + +ALTER TABLE public.sessions OWNER TO mmuser; + +-- +-- Name: sharedchannelattachments; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.sharedchannelattachments ( + id character varying(26) NOT NULL, + fileid character varying(26), + remoteid character varying(26), + createat bigint, + lastsyncat bigint +); + + +ALTER TABLE public.sharedchannelattachments OWNER TO mmuser; + +-- +-- Name: sharedchannelremotes; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.sharedchannelremotes ( + id character varying(26) NOT NULL, + channelid character varying(26) NOT NULL, + creatorid character varying(26), + createat bigint, + updateat bigint, + isinviteaccepted boolean, + isinviteconfirmed boolean, + remoteid character varying(26), + lastpostupdateat bigint, + lastpostid character varying(26) +); + + +ALTER TABLE public.sharedchannelremotes OWNER TO mmuser; + +-- +-- Name: sharedchannels; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.sharedchannels ( + channelid character varying(26) NOT NULL, + teamid character varying(26), + home boolean, + readonly boolean, + sharename character varying(64), + sharedisplayname character varying(64), + sharepurpose character varying(250), + shareheader character varying(1024), + creatorid character varying(26), + createat bigint, + updateat bigint, + remoteid character varying(26) +); + + +ALTER TABLE public.sharedchannels OWNER TO mmuser; + +-- +-- Name: sharedchannelusers; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.sharedchannelusers ( + id character varying(26) NOT NULL, + userid character varying(26), + remoteid character varying(26), + createat bigint, + lastsyncat bigint, + channelid character varying(26) +); + + +ALTER TABLE public.sharedchannelusers OWNER TO mmuser; + +-- +-- Name: sidebarcategories; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.sidebarcategories ( + id character varying(128) NOT NULL, + userid character varying(26), + teamid character varying(26), + sortorder bigint, + sorting character varying(64), + type character varying(64), + displayname character varying(64), + muted boolean, + collapsed boolean +); + + +ALTER TABLE public.sidebarcategories OWNER TO mmuser; + +-- +-- Name: sidebarchannels; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.sidebarchannels ( + channelid character varying(26) NOT NULL, + userid character varying(26) NOT NULL, + categoryid character varying(128) NOT NULL, + sortorder bigint +); + + +ALTER TABLE public.sidebarchannels OWNER TO mmuser; + +-- +-- Name: status; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.status ( + userid character varying(26) NOT NULL, + status character varying(32), + manual boolean, + lastactivityat bigint, + dndendtime bigint, + prevstatus character varying(32) +); + + +ALTER TABLE public.status OWNER TO mmuser; + +-- +-- Name: systems; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.systems ( + name character varying(64) NOT NULL, + value character varying(1024) +); + + +ALTER TABLE public.systems OWNER TO mmuser; + +-- +-- Name: teammembers; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.teammembers ( + teamid character varying(26) NOT NULL, + userid character varying(26) NOT NULL, + roles character varying(256), + deleteat bigint, + schemeuser boolean, + schemeadmin boolean, + schemeguest boolean, + createat bigint DEFAULT 0 +); + + +ALTER TABLE public.teammembers OWNER TO mmuser; + +-- +-- Name: teams; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.teams ( + id character varying(26) NOT NULL, + createat bigint, + updateat bigint, + deleteat bigint, + displayname character varying(64), + name character varying(64), + description character varying(255), + email character varying(128), + type public.team_type, + companyname character varying(64), + alloweddomains character varying(1000), + inviteid character varying(32), + schemeid character varying(26), + allowopeninvite boolean, + lastteamiconupdate bigint, + groupconstrained boolean, + cloudlimitsarchived boolean DEFAULT false NOT NULL +); + + +ALTER TABLE public.teams OWNER TO mmuser; + +-- +-- Name: termsofservice; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.termsofservice ( + id character varying(26) NOT NULL, + createat bigint, + userid character varying(26), + text character varying(65535) +); + + +ALTER TABLE public.termsofservice OWNER TO mmuser; + +-- +-- Name: threadmemberships; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.threadmemberships ( + postid character varying(26) NOT NULL, + userid character varying(26) NOT NULL, + following boolean, + lastviewed bigint, + lastupdated bigint, + unreadmentions bigint +) +WITH (autovacuum_vacuum_scale_factor='0.1', autovacuum_analyze_scale_factor='0.05'); + + +ALTER TABLE public.threadmemberships OWNER TO mmuser; + +-- +-- Name: threads; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.threads ( + postid character varying(26) NOT NULL, + replycount bigint, + lastreplyat bigint, + participants jsonb, + channelid character varying(26), + threaddeleteat bigint, + threadteamid character varying(26) +); + + +ALTER TABLE public.threads OWNER TO mmuser; + +-- +-- Name: tokens; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.tokens ( + token character varying(64) NOT NULL, + createat bigint, + type character varying(64), + extra character varying(2048) +); + + +ALTER TABLE public.tokens OWNER TO mmuser; + +-- +-- Name: trueupreviewhistory; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.trueupreviewhistory ( + duedate bigint NOT NULL, + completed boolean +); + + +ALTER TABLE public.trueupreviewhistory OWNER TO mmuser; + +-- +-- Name: uploadsessions; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.uploadsessions ( + id character varying(26) NOT NULL, + type public.upload_session_type, + createat bigint, + userid character varying(26), + channelid character varying(26), + filename character varying(256), + path character varying(512), + filesize bigint, + fileoffset bigint, + remoteid character varying(26), + reqfileid character varying(26) +); + + +ALTER TABLE public.uploadsessions OWNER TO mmuser; + +-- +-- Name: useraccesstokens; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.useraccesstokens ( + id character varying(26) NOT NULL, + token character varying(26), + userid character varying(26), + description character varying(512), + isactive boolean +); + + +ALTER TABLE public.useraccesstokens OWNER TO mmuser; + +-- +-- Name: usergroups; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.usergroups ( + id character varying(26) NOT NULL, + name character varying(64), + displayname character varying(128), + description character varying(1024), + source character varying(64), + remoteid character varying(48), + createat bigint, + updateat bigint, + deleteat bigint, + allowreference boolean +); + + +ALTER TABLE public.usergroups OWNER TO mmuser; + +-- +-- Name: users; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.users ( + id character varying(26) NOT NULL, + createat bigint, + updateat bigint, + deleteat bigint, + username character varying(64), + password character varying(128), + authdata character varying(128), + authservice character varying(32), + email character varying(128), + emailverified boolean, + nickname character varying(64), + firstname character varying(64), + lastname character varying(64), + roles character varying(256), + allowmarketing boolean, + props jsonb, + notifyprops jsonb, + lastpasswordupdate bigint, + lastpictureupdate bigint, + failedattempts integer, + locale character varying(5), + mfaactive boolean, + mfasecret character varying(128), + "position" character varying(128), + timezone jsonb, + remoteid character varying(26) +); + + +ALTER TABLE public.users OWNER TO mmuser; + +-- +-- Name: usertermsofservice; Type: TABLE; Schema: public; Owner: mmuser +-- + +CREATE TABLE public.usertermsofservice ( + userid character varying(26) NOT NULL, + termsofserviceid character varying(26), + createat bigint +); + + +ALTER TABLE public.usertermsofservice OWNER TO mmuser; + +-- +-- Data for Name: audits; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.audits VALUES ('dkj3tzm46inzubfgf8tcdp7pgw', 1698320750982, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/users/login', 'attempt - login_id=', '10.166.35.2', ''); +INSERT INTO public.audits VALUES ('xtxom8758j8mxxdhrtcycp1tyo', 1698320751056, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/users/login', 'authenticated', '10.166.35.2', ''); +INSERT INTO public.audits VALUES ('1u86rwj3ybbpfxmyxunew5iiyo', 1698320751070, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/users/login', 'success session_user=5md7bsji6pbijpxitu8bwezaqy', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('epra3qoyoifddyceqttxptsq4c', 1698320751647, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/system/onboarding/complete', 'attempt', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('ipozu9wift8fbms4rb9ix7kenw', 1698320870617, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/config', 'updateConfig', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('8fp9etosrfdfxy6z178qwzw4wy', 1698321187446, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/config', 'updateConfig', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('yb5cthepg7gd7xe6y1es4q3i8o', 1698321288420, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/users/w7uyhzuo7fnfueen6og9cxmn9h/image', '', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('jbu85hiszig9xxmz6r3omg4nwy', 1698321288523, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/users/w7uyhzuo7fnfueen6og9cxmn9h/tokens', '', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('pyhkh6us4tf8ic1qrcfm3n894a', 1698321288537, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/users/w7uyhzuo7fnfueen6og9cxmn9h/tokens', 'success - token_id=7xnejgyhj7nxtmq6t95iah7n7c', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('cu16juhnu7b4fn8owx5nxfhfsy', 1698321288591, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/users/w7uyhzuo7fnfueen6og9cxmn9h/roles', 'user=w7uyhzuo7fnfueen6og9cxmn9h roles=system_user system_admin', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('ox8eh5qg3b8didjy49qxt3e4zw', 1698321530586, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/commands', 'attempt', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('e8mxhfjtnjyh3eksti7mmujsmo', 1698321530615, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/commands', 'success', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('zekyg5c5bfgqbx4kzfdh8syrba', 1698322016025, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/commands', 'attempt', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('ku9ztthjwtdw8fh1apbd8m7bwc', 1698322016048, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/commands', 'success', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('xujye8uua78q9rzccctgu8hpsa', 1698322240876, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/commands', 'attempt', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('5beieks3zbf83xehax7g5jqfuh', 1698322240899, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/commands', 'success', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('j1pfzdoo5tffmfwey58nfoijuy', 1698322317970, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/commands', 'attempt', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('jp4ubo31ebydjbx6rq9scoh5br', 1698322317993, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/commands', 'success', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('fugumx1egbdz5psurrtzwd4pdr', 1698322371244, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/commands', 'attempt', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('k9w475y7qjdkpksbp8yqjbuirc', 1698322371257, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/commands', 'success', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('hoq9u8pfotfg3mm9kwmm7j85hr', 1698322417402, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/commands', 'attempt', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('jzd5mhtq8briiqgy98mr11k6xe', 1698322417424, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/commands', 'success', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('xwd9hbd5hby88fic55cgwkx3mo', 1698322479254, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/commands', 'attempt', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('kjjukwgn4pffufedkzd5toeacw', 1698322479277, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/commands', 'success', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('r9kxec153td49bpghdq3nme61h', 1698322532935, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/commands', 'attempt', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('7zx6716r4fnutmhfqt49jehmoc', 1698322532958, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/commands', 'success', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('n9iyafdkfpbhmxmmif9zfafjmh', 1698322585562, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/commands', 'attempt', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); +INSERT INTO public.audits VALUES ('88uom3gn4bbgigihxcyzxt1wch', 1698322585586, '5md7bsji6pbijpxitu8bwezaqy', '/api/v4/commands', 'success', '10.166.35.2', 'xprkr99nfirmb8j4pdfzqhhtar'); + + +-- +-- Data for Name: bots; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.bots VALUES ('jmcgoiar5brr9nx8s7g3394c8e', 'Feedbackbot collects user feedback to improve Mattermost. [Learn more](https://mattermost.com/pl/default-nps).', 'com.mattermost.nps', 1698320582722, 1698320582722, 0, 0); +INSERT INTO public.bots VALUES ('mt3fq81mrbbydrefss1h9zfxhw', 'Playbooks bot.', 'playbooks', 1698320583270, 1698320583270, 0, 0); +INSERT INTO public.bots VALUES ('qicfanjtzbgsf8qh8zkosdq96e', 'Calls Bot', 'com.mattermost.calls', 1698320583530, 1698320583530, 0, 0); +INSERT INTO public.bots VALUES ('dnyqmp4u5tgetr9or6in55xobr', '', '5md7bsji6pbijpxitu8bwezaqy', 1698321000016, 1698321000016, 0, 0); +INSERT INTO public.bots VALUES ('w7uyhzuo7fnfueen6og9cxmn9h', 'Nautobot Mattermost Bot', '5md7bsji6pbijpxitu8bwezaqy', 1698321288290, 1698321288290, 0, 0); + + +-- +-- Data for Name: channelmemberhistory; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.channelmemberhistory VALUES ('wjcp9j9mjfbe3f8t3mp5544y1w', '5md7bsji6pbijpxitu8bwezaqy', 1698320784767, NULL); +INSERT INTO public.channelmemberhistory VALUES ('g44m7cnnkjn6tbqsica1ste4jw', '5md7bsji6pbijpxitu8bwezaqy', 1698320784798, NULL); +INSERT INTO public.channelmemberhistory VALUES ('686m6w41q3bidjcxrsuymudgba', 'w7uyhzuo7fnfueen6og9cxmn9h', 1698321288312, NULL); +INSERT INTO public.channelmemberhistory VALUES ('686m6w41q3bidjcxrsuymudgba', '5md7bsji6pbijpxitu8bwezaqy', 1698321288318, NULL); +INSERT INTO public.channelmemberhistory VALUES ('wjcp9j9mjfbe3f8t3mp5544y1w', 'w7uyhzuo7fnfueen6og9cxmn9h', 1698321691905, NULL); +INSERT INTO public.channelmemberhistory VALUES ('g44m7cnnkjn6tbqsica1ste4jw', 'w7uyhzuo7fnfueen6og9cxmn9h', 1698321691933, NULL); + + +-- +-- Data for Name: channelmembers; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.channelmembers VALUES ('g44m7cnnkjn6tbqsica1ste4jw', '5md7bsji6pbijpxitu8bwezaqy', '', 0, 0, 0, '{"push": "default", "email": "default", "desktop": "default", "mark_unread": "all", "ignore_channel_mentions": "default", "channel_auto_follow_threads": "off"}', 1698320784790, true, true, false, 0, 0, 0); +INSERT INTO public.channelmembers VALUES ('686m6w41q3bidjcxrsuymudgba', 'w7uyhzuo7fnfueen6og9cxmn9h', '', 0, 0, 0, '{"push": "default", "email": "default", "desktop": "default", "mark_unread": "all", "ignore_channel_mentions": "default", "channel_auto_follow_threads": "off"}', 1698321288298, true, false, false, 0, 0, 0); +INSERT INTO public.channelmembers VALUES ('686m6w41q3bidjcxrsuymudgba', '5md7bsji6pbijpxitu8bwezaqy', '', 1698321288325, 1, 0, '{"push": "default", "email": "default", "desktop": "default", "mark_unread": "all", "ignore_channel_mentions": "default", "channel_auto_follow_threads": "off"}', 1698321288325, true, false, false, 0, 1, 0); +INSERT INTO public.channelmembers VALUES ('wjcp9j9mjfbe3f8t3mp5544y1w', 'w7uyhzuo7fnfueen6og9cxmn9h', '', 0, 0, 0, '{"push": "default", "email": "default", "desktop": "default", "mark_unread": "all", "ignore_channel_mentions": "default", "channel_auto_follow_threads": "off"}', 1698321691897, true, false, false, 0, 0, 0); +INSERT INTO public.channelmembers VALUES ('g44m7cnnkjn6tbqsica1ste4jw', 'w7uyhzuo7fnfueen6og9cxmn9h', '', 0, 0, 1, '{"push": "default", "email": "default", "desktop": "default", "mark_unread": "all", "ignore_channel_mentions": "default", "channel_auto_follow_threads": "off"}', 1698321691953, true, false, false, 1, 0, 0); +INSERT INTO public.channelmembers VALUES ('wjcp9j9mjfbe3f8t3mp5544y1w', '5md7bsji6pbijpxitu8bwezaqy', '', 1698322063240, 1, 0, '{"push": "default", "email": "default", "desktop": "default", "mark_unread": "all", "ignore_channel_mentions": "default", "channel_auto_follow_threads": "off"}', 1698322063240, true, true, false, 0, 1, 0); + + +-- +-- Data for Name: channels; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.channels VALUES ('686m6w41q3bidjcxrsuymudgba', 1698321288297, 1698321288297, 0, '', 'D', '', '5md7bsji6pbijpxitu8bwezaqy__w7uyhzuo7fnfueen6og9cxmn9h', '', '', 1698321288325, 1, 0, 'w7uyhzuo7fnfueen6og9cxmn9h', NULL, NULL, false, 1, 1698321288325); +INSERT INTO public.channels VALUES ('g44m7cnnkjn6tbqsica1ste4jw', 1698320784731, 1698320784731, 0, 'rkpuunm3rp8fffhzkjxw63usyc', 'O', 'Off-Topic', 'off-topic', '', '', 1698321691939, 0, 0, '', NULL, NULL, NULL, 0, 1698321691939); +INSERT INTO public.channels VALUES ('wjcp9j9mjfbe3f8t3mp5544y1w', 1698320784722, 1698320784722, 0, 'rkpuunm3rp8fffhzkjxw63usyc', 'O', 'Town Square', 'town-square', '', '', 1698322063240, 1, 0, '', NULL, NULL, NULL, 1, 1698322063240); + + +-- +-- Data for Name: clusterdiscovery; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: commands; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.commands VALUES ('pkksc6zkt7g65q7jtwadpgs9rr', 'u7p1an973bd1jqg75i3y7pxj7y', 1698321530602, 1698321530602, 0, '5md7bsji6pbijpxitu8bwezaqy', 'rkpuunm3rp8fffhzkjxw63usyc', 'clear', 'P', '', '', false, '', '', 'Clear', 'Clear Slash Command', 'http://nautobot:8080/api/plugins/chatops/mattermost/slash_command/', ''); +INSERT INTO public.commands VALUES ('z3egwchjfb85zkstcdupcge8pc', 'ncygprhkt3rrxr4rkytcaa7c9c', 1698322016041, 1698322016041, 0, '5md7bsji6pbijpxitu8bwezaqy', 'rkpuunm3rp8fffhzkjxw63usyc', 'nautobot', 'P', '', '', false, '', '', 'Nautobot', 'Nautobot Slash Command', 'http://nautobot:8080/api/plugins/chatops/mattermost/slash_command/', ''); +INSERT INTO public.commands VALUES ('qfd8w7rpq7neuphzmo3miaw1jr', 'b9wrs7paz7fi5ragz9uurwd9fa', 1698322240892, 1698322240892, 0, '5md7bsji6pbijpxitu8bwezaqy', 'rkpuunm3rp8fffhzkjxw63usyc', 'aci', 'P', '', '', false, '', '', 'Cisco ACI', 'Cisco ACI Slash Command', 'http://nautobot:8080/api/plugins/chatops/mattermost/slash_command/', ''); +INSERT INTO public.commands VALUES ('ifttckqrjpyrxr7ks1w5qjm81c', '4hz941bgtpde9g75sesdp7tp1h', 1698322317986, 1698322317986, 0, '5md7bsji6pbijpxitu8bwezaqy', 'rkpuunm3rp8fffhzkjxw63usyc', 'ansible', 'P', '', '', false, '', '', 'Ansible', 'Ansible Slash Command', 'http://nautobot:8080/api/plugins/chatops/mattermost/slash_command/', ''); +INSERT INTO public.commands VALUES ('a4u4gwfa6tggtc6kziyryxsk3a', '71o3ku7jwjyxup6biu1way1h5y', 1698322371251, 1698322371251, 0, '5md7bsji6pbijpxitu8bwezaqy', 'rkpuunm3rp8fffhzkjxw63usyc', 'arista', 'P', '', '', false, '', '', 'Arista CloudVision', 'Arista CloudVision Slash Command', 'http://nautobot:8080/api/plugins/chatops/mattermost/slash_command/', ''); +INSERT INTO public.commands VALUES ('urmj87oqbbynir8nzc33by1f4c', '3wxwh3m8mjrzxr11psersqkwue', 1698322417418, 1698322417418, 0, '5md7bsji6pbijpxitu8bwezaqy', 'rkpuunm3rp8fffhzkjxw63usyc', 'grafana', 'P', '', '', false, '', '', 'Grafana', 'Grafana Slash Command', 'http://nautobot:8080/api/plugins/chatops/mattermost/slash_command/', ''); +INSERT INTO public.commands VALUES ('mw51fho6ojd3fxqmrgfkt9xykw', 'ppm316za33ritm3xgpobcmmgre', 1698322479271, 1698322479271, 0, '5md7bsji6pbijpxitu8bwezaqy', 'rkpuunm3rp8fffhzkjxw63usyc', 'ipfabric', 'P', '', '', false, '', '', 'IP Fabric', 'IP Fabric Slash Command', 'http://nautobot:8080/api/plugins/chatops/mattermost/slash_command/', ''); +INSERT INTO public.commands VALUES ('11cwjihduffn3ceybits6n5zty', '11ix54hycjr4dmxcgw4d77qc4w', 1698322532951, 1698322532951, 0, '5md7bsji6pbijpxitu8bwezaqy', 'rkpuunm3rp8fffhzkjxw63usyc', 'meraki', 'P', '', '', false, '', '', 'Cisco Meraki', 'Cisco Meraki Slash Command', 'http://nautobot:8080/api/plugins/chatops/mattermost/slash_command/', ''); +INSERT INTO public.commands VALUES ('p43ko8rim3r89d78yexbg3fiww', 'fh1kbk45xtgm8r48jzr39ru1ww', 1698322585580, 1698322585580, 0, '5md7bsji6pbijpxitu8bwezaqy', 'rkpuunm3rp8fffhzkjxw63usyc', 'panorama', 'P', '', '', false, '', '', 'Panorama', 'Panorama Slash Command', 'http://nautobot:8080/api/plugins/chatops/mattermost/slash_command/', ''); + + +-- +-- Data for Name: commandwebhooks; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: compliances; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: db_lock; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: db_migrations; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.db_migrations VALUES (1, 'create_teams'); +INSERT INTO public.db_migrations VALUES (2, 'create_team_members'); +INSERT INTO public.db_migrations VALUES (3, 'create_cluster_discovery'); +INSERT INTO public.db_migrations VALUES (4, 'create_command_webhooks'); +INSERT INTO public.db_migrations VALUES (5, 'create_compliances'); +INSERT INTO public.db_migrations VALUES (6, 'create_emojis'); +INSERT INTO public.db_migrations VALUES (7, 'create_user_groups'); +INSERT INTO public.db_migrations VALUES (8, 'create_group_members'); +INSERT INTO public.db_migrations VALUES (9, 'create_group_teams'); +INSERT INTO public.db_migrations VALUES (10, 'create_group_channels'); +INSERT INTO public.db_migrations VALUES (11, 'create_link_metadata'); +INSERT INTO public.db_migrations VALUES (12, 'create_commands'); +INSERT INTO public.db_migrations VALUES (13, 'create_incoming_webhooks'); +INSERT INTO public.db_migrations VALUES (14, 'create_outgoing_webhooks'); +INSERT INTO public.db_migrations VALUES (15, 'create_systems'); +INSERT INTO public.db_migrations VALUES (16, 'create_reactions'); +INSERT INTO public.db_migrations VALUES (17, 'create_roles'); +INSERT INTO public.db_migrations VALUES (18, 'create_schemes'); +INSERT INTO public.db_migrations VALUES (19, 'create_licenses'); +INSERT INTO public.db_migrations VALUES (20, 'create_posts'); +INSERT INTO public.db_migrations VALUES (21, 'create_product_notice_view_state'); +INSERT INTO public.db_migrations VALUES (22, 'create_sessions'); +INSERT INTO public.db_migrations VALUES (23, 'create_terms_of_service'); +INSERT INTO public.db_migrations VALUES (24, 'create_audits'); +INSERT INTO public.db_migrations VALUES (25, 'create_oauth_access_data'); +INSERT INTO public.db_migrations VALUES (26, 'create_preferences'); +INSERT INTO public.db_migrations VALUES (27, 'create_status'); +INSERT INTO public.db_migrations VALUES (28, 'create_tokens'); +INSERT INTO public.db_migrations VALUES (29, 'create_bots'); +INSERT INTO public.db_migrations VALUES (30, 'create_user_access_tokens'); +INSERT INTO public.db_migrations VALUES (31, 'create_remote_clusters'); +INSERT INTO public.db_migrations VALUES (32, 'create_sharedchannels'); +INSERT INTO public.db_migrations VALUES (33, 'create_sidebar_channels'); +INSERT INTO public.db_migrations VALUES (34, 'create_oauthauthdata'); +INSERT INTO public.db_migrations VALUES (35, 'create_sharedchannelattachments'); +INSERT INTO public.db_migrations VALUES (36, 'create_sharedchannelusers'); +INSERT INTO public.db_migrations VALUES (37, 'create_sharedchannelremotes'); +INSERT INTO public.db_migrations VALUES (38, 'create_jobs'); +INSERT INTO public.db_migrations VALUES (39, 'create_channel_member_history'); +INSERT INTO public.db_migrations VALUES (40, 'create_sidebar_categories'); +INSERT INTO public.db_migrations VALUES (41, 'create_upload_sessions'); +INSERT INTO public.db_migrations VALUES (42, 'create_threads'); +INSERT INTO public.db_migrations VALUES (43, 'thread_memberships'); +INSERT INTO public.db_migrations VALUES (44, 'create_user_terms_of_service'); +INSERT INTO public.db_migrations VALUES (45, 'create_plugin_key_value_store'); +INSERT INTO public.db_migrations VALUES (46, 'create_users'); +INSERT INTO public.db_migrations VALUES (47, 'create_file_info'); +INSERT INTO public.db_migrations VALUES (48, 'create_oauth_apps'); +INSERT INTO public.db_migrations VALUES (49, 'create_channels'); +INSERT INTO public.db_migrations VALUES (50, 'create_channelmembers'); +INSERT INTO public.db_migrations VALUES (51, 'create_msg_root_count'); +INSERT INTO public.db_migrations VALUES (52, 'create_public_channels'); +INSERT INTO public.db_migrations VALUES (53, 'create_retention_policies'); +INSERT INTO public.db_migrations VALUES (54, 'create_crt_channelmembership_count'); +INSERT INTO public.db_migrations VALUES (55, 'create_crt_thread_count_and_unreads'); +INSERT INTO public.db_migrations VALUES (56, 'upgrade_channels_v6.0'); +INSERT INTO public.db_migrations VALUES (57, 'upgrade_command_webhooks_v6.0'); +INSERT INTO public.db_migrations VALUES (58, 'upgrade_channelmembers_v6.0'); +INSERT INTO public.db_migrations VALUES (59, 'upgrade_users_v6.0'); +INSERT INTO public.db_migrations VALUES (60, 'upgrade_jobs_v6.0'); +INSERT INTO public.db_migrations VALUES (61, 'upgrade_link_metadata_v6.0'); +INSERT INTO public.db_migrations VALUES (62, 'upgrade_sessions_v6.0'); +INSERT INTO public.db_migrations VALUES (63, 'upgrade_threads_v6.0'); +INSERT INTO public.db_migrations VALUES (64, 'upgrade_status_v6.0'); +INSERT INTO public.db_migrations VALUES (65, 'upgrade_groupchannels_v6.0'); +INSERT INTO public.db_migrations VALUES (66, 'upgrade_posts_v6.0'); +INSERT INTO public.db_migrations VALUES (67, 'upgrade_channelmembers_v6.1'); +INSERT INTO public.db_migrations VALUES (68, 'upgrade_teammembers_v6.1'); +INSERT INTO public.db_migrations VALUES (69, 'upgrade_jobs_v6.1'); +INSERT INTO public.db_migrations VALUES (70, 'upgrade_cte_v6.1'); +INSERT INTO public.db_migrations VALUES (71, 'upgrade_sessions_v6.1'); +INSERT INTO public.db_migrations VALUES (72, 'upgrade_schemes_v6.3'); +INSERT INTO public.db_migrations VALUES (73, 'upgrade_plugin_key_value_store_v6.3'); +INSERT INTO public.db_migrations VALUES (74, 'upgrade_users_v6.3'); +INSERT INTO public.db_migrations VALUES (75, 'alter_upload_sessions_index'); +INSERT INTO public.db_migrations VALUES (76, 'upgrade_lastrootpostat'); +INSERT INTO public.db_migrations VALUES (77, 'upgrade_users_v6.5'); +INSERT INTO public.db_migrations VALUES (78, 'create_oauth_mattermost_app_id'); +INSERT INTO public.db_migrations VALUES (79, 'usergroups_displayname_index'); +INSERT INTO public.db_migrations VALUES (80, 'posts_createat_id'); +INSERT INTO public.db_migrations VALUES (81, 'threads_deleteat'); +INSERT INTO public.db_migrations VALUES (82, 'upgrade_oauth_mattermost_app_id'); +INSERT INTO public.db_migrations VALUES (83, 'threads_threaddeleteat'); +INSERT INTO public.db_migrations VALUES (84, 'recent_searches'); +INSERT INTO public.db_migrations VALUES (85, 'fileinfo_add_archived_column'); +INSERT INTO public.db_migrations VALUES (86, 'add_cloud_limits_archived'); +INSERT INTO public.db_migrations VALUES (87, 'sidebar_categories_index'); +INSERT INTO public.db_migrations VALUES (88, 'remaining_migrations'); +INSERT INTO public.db_migrations VALUES (89, 'add-channelid-to-reaction'); +INSERT INTO public.db_migrations VALUES (90, 'create_enums'); +INSERT INTO public.db_migrations VALUES (91, 'create_post_reminder'); +INSERT INTO public.db_migrations VALUES (92, 'add_createat_to_teamembers'); +INSERT INTO public.db_migrations VALUES (93, 'notify_admin'); +INSERT INTO public.db_migrations VALUES (94, 'threads_teamid'); +INSERT INTO public.db_migrations VALUES (95, 'remove_posts_parentid'); +INSERT INTO public.db_migrations VALUES (96, 'threads_threadteamid'); +INSERT INTO public.db_migrations VALUES (97, 'create_posts_priority'); +INSERT INTO public.db_migrations VALUES (98, 'create_post_acknowledgements'); +INSERT INTO public.db_migrations VALUES (99, 'create_drafts'); +INSERT INTO public.db_migrations VALUES (100, 'add_draft_priority_column'); +INSERT INTO public.db_migrations VALUES (101, 'create_true_up_review_history'); +INSERT INTO public.db_migrations VALUES (102, 'posts_originalid_index'); +INSERT INTO public.db_migrations VALUES (103, 'add_sentat_to_notifyadmin'); +INSERT INTO public.db_migrations VALUES (104, 'upgrade_notifyadmin'); +INSERT INTO public.db_migrations VALUES (105, 'remove_tokens'); +INSERT INTO public.db_migrations VALUES (106, 'fileinfo_channelid'); +INSERT INTO public.db_migrations VALUES (107, 'threadmemberships_cleanup'); +INSERT INTO public.db_migrations VALUES (108, 'remove_orphaned_oauth_preferences'); +INSERT INTO public.db_migrations VALUES (109, 'create_persistent_notifications'); +INSERT INTO public.db_migrations VALUES (111, 'update_vacuuming'); + + +-- +-- Data for Name: drafts; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: emoji; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: fileinfo; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: groupchannels; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: groupmembers; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: groupteams; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: incomingwebhooks; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: ir_category; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: ir_category_item; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: ir_channelaction; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: ir_incident; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: ir_metric; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: ir_metricconfig; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: ir_playbook; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: ir_playbookautofollow; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: ir_playbookmember; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: ir_run_participants; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: ir_statusposts; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: ir_system; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.ir_system VALUES ('DatabaseVersion', '0.63.0'); + + +-- +-- Data for Name: ir_timelineevent; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: ir_userinfo; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.ir_userinfo VALUES ('5md7bsji6pbijpxitu8bwezaqy', 1698320802132, '{"disable_daily_digest":false,"disable_weekly_digest":false}'); + + +-- +-- Data for Name: ir_viewedchannel; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: jobs; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.jobs VALUES ('sq83iy4bgidn3gdf4745rkzcco', 'migrations', 0, 1698320643330, 1698320652909, 1698320653134, 'success', 0, '{"last_done": "{\"current_table\":\"ChannelMembers\",\"last_team_id\":\"00000000000000000000000000\",\"last_channel_id\":\"00000000000000000000000000\",\"last_user\":\"00000000000000000000000000\"}", "migration_key": "migration_advanced_permissions_phase_2"}'); + + +-- +-- Data for Name: licenses; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: linkmetadata; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: notifyadmin; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: oauthaccessdata; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: oauthapps; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: oauthauthdata; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: outgoingwebhooks; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: persistentnotifications; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: pluginkeyvaluestore; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.pluginkeyvaluestore VALUES ('com.mattermost.nps', 'ServerUpgrade-9.0.0', '\x7b227365727665725f76657273696f6e223a22392e302e30222c22757067726164655f6174223a22323032332d31302d32365431313a34333a30322e3735323732333133315a227d', 0); +INSERT INTO public.pluginkeyvaluestore VALUES ('com.mattermost.nps', 'WelcomeFeedbackMigration', '\x7b224372656174654174223a22323032332d31302d32365431313a34333a30322e3735323732333133315a227d', 0); +INSERT INTO public.pluginkeyvaluestore VALUES ('com.mattermost.nps', 'Survey-9.0.0', '\x7b227365727665725f76657273696f6e223a22392e302e30222c226372656174655f6174223a22323032332d31302d32365431313a34333a30322e3735323732333133315a222c2273746172745f6174223a22323032332d31322d31305431313a34333a30322e3735323732333133315a227d', 0); +INSERT INTO public.pluginkeyvaluestore VALUES ('com.mattermost.nps', 'LastAdminNotice', '\x22323032332d31302d32365431313a34333a30322e3735323732333133315a22', 0); +INSERT INTO public.pluginkeyvaluestore VALUES ('playbooks', 'mmi_botid', '\x6d7433667138316d726262796472656673733168397a66786877', 0); +INSERT INTO public.pluginkeyvaluestore VALUES ('com.mattermost.calls', 'mmi_botid', '\x71696366616e6a747a62677366387168387a6b6f736471393665', 0); + + +-- +-- Data for Name: postacknowledgements; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: postreminders; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: posts; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.posts VALUES ('tncer1pq7brn5gx3cp9pmoaqtw', 1698320784773, 1698320784773, 0, '5md7bsji6pbijpxitu8bwezaqy', 'wjcp9j9mjfbe3f8t3mp5544y1w', '', '', 'admin joined the team.', 'system_join_team', '{"username": "admin"}', '', '[]', '[]', false, 0, false, NULL); +INSERT INTO public.posts VALUES ('apr119z86fg1tbuub5x6u6pune', 1698320784805, 1698320784805, 0, '5md7bsji6pbijpxitu8bwezaqy', 'g44m7cnnkjn6tbqsica1ste4jw', '', '', 'admin joined the channel.', 'system_join_channel', '{"username": "admin"}', '', '[]', '[]', false, 0, false, NULL); +INSERT INTO public.posts VALUES ('33p1sunyyb8cmxbqwrxotgyuqe', 1698321288325, 1698321288325, 0, 'w7uyhzuo7fnfueen6og9cxmn9h', '686m6w41q3bidjcxrsuymudgba', '', '', 'Please add me to teams and channels you want me to interact in. To do this, use the browser or Mattermost Desktop App.', 'add_bot_teams_channels', '{"from_bot": "true"}', '', '[]', '[]', false, 0, false, NULL); +INSERT INTO public.posts VALUES ('okcnrhyu638furtk9x7s6z9dnc', 1698321691911, 1698321691911, 0, '5md7bsji6pbijpxitu8bwezaqy', 'wjcp9j9mjfbe3f8t3mp5544y1w', '', '', 'nautobot added to the team by admin.', 'system_add_to_team', '{"userId": "5md7bsji6pbijpxitu8bwezaqy", "username": "admin", "addedUserId": "w7uyhzuo7fnfueen6og9cxmn9h", "addedUsername": "nautobot"}', '', '[]', '[]', false, 0, false, NULL); +INSERT INTO public.posts VALUES ('tn88sqa4cbbnig5wu1hgj6rb7w', 1698321691939, 1698321691939, 0, '5md7bsji6pbijpxitu8bwezaqy', 'g44m7cnnkjn6tbqsica1ste4jw', '', '', 'nautobot added to the channel by admin.', 'system_add_to_channel', '{"userId": "5md7bsji6pbijpxitu8bwezaqy", "username": "admin", "addedUserId": "w7uyhzuo7fnfueen6og9cxmn9h", "addedUsername": "nautobot"}', '', '[]', '[]', false, 0, false, NULL); +INSERT INTO public.posts VALUES ('3e3uz4acwt8h3cxu4xs83zcyzc', 1698322063240, 1698322063240, 0, 'w7uyhzuo7fnfueen6og9cxmn9h', 'wjcp9j9mjfbe3f8t3mp5544y1w', '', '', '', '', '{"from_bot": "true", "attachments": [{"id": 0, "ts": null, "text": "More Chat commands can be found at [Nautobot Apps](https://www.networktocode.com/nautobot/apps/)", "color": "", "title": "", "fields": null, "footer": "", "pretext": "", "fallback": "", "image_url": "", "thumb_url": "", "title_link": "", "author_icon": "", "author_link": "", "author_name": "", "footer_icon": ""}]}', '', '[]', '[]', false, 0, false, NULL); + + +-- +-- Data for Name: postspriority; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: preferences; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.preferences VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'tutorial_step', '5md7bsji6pbijpxitu8bwezaqy', '0'); +INSERT INTO public.preferences VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'recommended_next_steps', 'hide', 'true'); +INSERT INTO public.preferences VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'onboarding_task_list', 'onboarding_task_list_show', 'false'); +INSERT INTO public.preferences VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'onboarding_task_list', 'onboarding_task_list_open', 'false'); +INSERT INTO public.preferences VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'touched', 'add_channels_cta', 'true'); +INSERT INTO public.preferences VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'channel_approximate_view_time', 'wjcp9j9mjfbe3f8t3mp5544y1w', '1698321177534'); +INSERT INTO public.preferences VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'direct_channel_show', 'w7uyhzuo7fnfueen6og9cxmn9h', 'true'); +INSERT INTO public.preferences VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'channel_open_time', '686m6w41q3bidjcxrsuymudgba', '1698321657708'); +INSERT INTO public.preferences VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'drafts', 'drafts_tour_tip_showed', '{"drafts_tour_tip_showed":true}'); + + +-- +-- Data for Name: productnoticeviewstate; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.productnoticeviewstate VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'gfycat_deprecation_7.8', 1, 1698320750); +INSERT INTO public.productnoticeviewstate VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'gif_deprecation_7.9_7.10', 1, 1698320750); +INSERT INTO public.productnoticeviewstate VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'gfycat_deprecation_8.0', 1, 1698320750); +INSERT INTO public.productnoticeviewstate VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'gfycat_deprecation_8.1', 1, 1698320750); +INSERT INTO public.productnoticeviewstate VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'boards_deprecations', 1, 1698320750); +INSERT INTO public.productnoticeviewstate VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'boards_deprecations_user_2', 1, 1698320750); +INSERT INTO public.productnoticeviewstate VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'desktop_upgrade_v5.5', 1, 1698320750); +INSERT INTO public.productnoticeviewstate VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'server_upgrade_v9.1', 1, 1698320750); +INSERT INTO public.productnoticeviewstate VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'crt-admin-disabled', 1, 1698320750); +INSERT INTO public.productnoticeviewstate VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'crt-admin-default_off', 1, 1698320750); +INSERT INTO public.productnoticeviewstate VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'crt-user-default-on', 1, 1698320750); +INSERT INTO public.productnoticeviewstate VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'crt-user-always-on', 1, 1698320750); +INSERT INTO public.productnoticeviewstate VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'unsupported-server-v5.37', 1, 1698320750); + + +-- +-- Data for Name: publicchannels; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.publicchannels VALUES ('wjcp9j9mjfbe3f8t3mp5544y1w', 0, 'rkpuunm3rp8fffhzkjxw63usyc', 'Town Square', 'town-square', '', ''); +INSERT INTO public.publicchannels VALUES ('g44m7cnnkjn6tbqsica1ste4jw', 0, 'rkpuunm3rp8fffhzkjxw63usyc', 'Off-Topic', 'off-topic', '', ''); + + +-- +-- Data for Name: reactions; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: recentsearches; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: remoteclusters; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: retentionpolicies; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: retentionpolicieschannels; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: retentionpoliciesteams; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: roles; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.roles VALUES ('9pr4dapegp8p5rrwf8xwyuwudw', 'team_admin', 'authentication.roles.team_admin.name', 'authentication.roles.team_admin.description', 1698320577304, 1698320582267, 0, ' convert_public_channel_to_private use_group_mentions delete_others_posts manage_slash_commands manage_private_channel_members manage_others_outgoing_webhooks use_channel_mentions create_post manage_team_roles manage_incoming_webhooks playbook_public_manage_roles add_reaction manage_public_channel_members remove_reaction playbook_private_manage_roles manage_others_slash_commands import_team delete_post remove_user_from_team convert_private_channel_to_public read_private_channel_groups manage_channel_roles manage_outgoing_webhooks read_public_channel_groups manage_others_incoming_webhooks manage_team', true, true); +INSERT INTO public.roles VALUES ('w6wassz9nfd6jfkfou79njg5kr', 'system_post_all_public', 'authentication.roles.system_post_all_public.name', 'authentication.roles.system_post_all_public.description', 1698320577261, 1698320582223, 0, ' create_post_public use_channel_mentions use_group_mentions', false, true); +INSERT INTO public.roles VALUES ('4tg91kitxbr45k11ia1rfp9dsw', 'system_user_access_token', 'authentication.roles.system_user_access_token.name', 'authentication.roles.system_user_access_token.description', 1698320577267, 1698320582229, 0, ' revoke_user_access_token create_user_access_token read_user_access_token', false, true); +INSERT INTO public.roles VALUES ('bqrqkffoqpgt3yru89wr8p3ihh', 'channel_user', 'authentication.roles.channel_user.name', 'authentication.roles.channel_user.description', 1698320577285, 1698320582248, 0, ' edit_post read_public_channel_groups delete_public_channel add_reaction read_private_channel_groups manage_public_channel_properties read_channel_content use_group_mentions delete_post upload_file use_channel_mentions manage_public_channel_members manage_private_channel_members read_channel remove_reaction create_post manage_private_channel_properties get_public_link delete_private_channel', true, true); +INSERT INTO public.roles VALUES ('eg9aoait5pgy5yd5upto6fr5bh', 'custom_group_user', 'authentication.roles.custom_group_user.name', 'authentication.roles.custom_group_user.description', 1698320577310, 1698320582273, 0, '', false, false); +INSERT INTO public.roles VALUES ('zorc97yr9igdp8dgifag5u64tw', 'team_user', 'authentication.roles.team_user.name', 'authentication.roles.team_user.description', 1698320577291, 1698320582254, 0, ' invite_user list_team_channels create_private_channel playbook_private_create playbook_public_create join_public_channels create_public_channel view_team read_public_channel add_user_to_team', true, true); +INSERT INTO public.roles VALUES ('mjokx7qp3jdd7eidqhsx4td6ec', 'playbook_member', 'authentication.roles.playbook_member.name', 'authentication.roles.playbook_member.description', 1698320577316, 1698320582279, 0, ' playbook_public_view playbook_public_manage_members playbook_public_manage_properties playbook_private_view playbook_private_manage_members playbook_private_manage_properties run_create', true, true); +INSERT INTO public.roles VALUES ('p8mkk11gqbfquxr45q4cknakya', 'channel_admin', 'authentication.roles.channel_admin.name', 'authentication.roles.channel_admin.description', 1698320577338, 1698320582291, 0, ' use_channel_mentions add_reaction use_group_mentions manage_channel_roles manage_private_channel_members create_post read_public_channel_groups remove_reaction manage_public_channel_members read_private_channel_groups', true, true); +INSERT INTO public.roles VALUES ('qe1epqnnwinz9m15dhdowkbaqh', 'team_guest', 'authentication.roles.team_guest.name', 'authentication.roles.team_guest.description', 1698320577344, 1698320582298, 0, ' view_team', true, true); +INSERT INTO public.roles VALUES ('dbtf1b6357n7db1h9raanwjzse', 'run_member', 'authentication.roles.run_member.name', 'authentication.roles.run_member.description', 1698320577350, 1698320582304, 0, ' run_view', true, true); +INSERT INTO public.roles VALUES ('oe6ongueziywtgmqo4d9c4igjo', 'team_post_all', 'authentication.roles.team_post_all.name', 'authentication.roles.team_post_all.description', 1698320577297, 1698320582261, 0, ' use_channel_mentions use_group_mentions create_post', false, true); +INSERT INTO public.roles VALUES ('aomdi3k85fr1bdnmmt5hcgzj7a', 'playbook_admin', 'authentication.roles.playbook_admin.name', 'authentication.roles.playbook_admin.description', 1698320577332, 1698320582285, 0, ' playbook_private_manage_members playbook_private_manage_roles playbook_private_manage_properties playbook_public_make_private playbook_public_manage_members playbook_public_manage_roles playbook_public_manage_properties', true, true); +INSERT INTO public.roles VALUES ('9t14j3hzmbndfbkpsoh9arngbr', 'system_guest', 'authentication.roles.global_guest.name', 'authentication.roles.global_guest.description', 1698320577356, 1698320582310, 0, ' create_direct_channel create_group_channel', true, true); +INSERT INTO public.roles VALUES ('9h3q73uhopdfmgu1yi88gc99do', 'system_post_all', 'authentication.roles.system_post_all.name', 'authentication.roles.system_post_all.description', 1698320577369, 1698320582316, 0, ' use_channel_mentions create_post use_group_mentions', false, true); +INSERT INTO public.roles VALUES ('6kfpmc99fjgotg88k6qkr853dr', 'system_admin', 'authentication.roles.global_admin.name', 'authentication.roles.global_admin.description', 1698320577322, 1698320582322, 0, ' manage_team sysconsole_read_environment_rate_limiting use_slash_commands sysconsole_read_site_notices remove_others_reactions test_s3 sysconsole_read_site_file_sharing_and_downloads sysconsole_write_site_posts create_group_channel manage_others_slash_commands sysconsole_read_user_management_permissions sysconsole_read_authentication_saml manage_team_roles promote_guest add_saml_public_cert create_post sysconsole_read_authentication_signup sysconsole_write_authentication_email create_post_bleve_indexes_job create_user_access_token playbook_public_manage_roles sysconsole_write_reporting_server_logs manage_system_wide_oauth sysconsole_read_user_management_users read_audits sysconsole_write_environment_push_notification_server manage_jobs list_public_teams get_saml_cert_status test_elasticsearch sysconsole_read_user_management_teams add_saml_idp_cert reload_config manage_roles sysconsole_write_experimental_features manage_shared_channels create_post_public sysconsole_write_site_announcement_banner sysconsole_read_site_announcement_banner sysconsole_write_compliance_data_retention_policy convert_public_channel_to_private list_private_teams playbook_private_manage_properties sysconsole_read_environment_image_proxy create_direct_channel create_elasticsearch_post_aggregation_job sysconsole_read_environment_session_lengths sysconsole_read_compliance_data_retention_policy test_ldap view_members recycle_database_connections edit_post sysconsole_write_user_management_teams playbook_private_manage_members create_private_channel sysconsole_read_site_emoji playbook_private_manage_roles manage_private_channel_properties read_jobs import_team read_other_users_teams sysconsole_write_integrations_integration_management read_private_channel_groups manage_public_channel_members sysconsole_read_integrations_gif sysconsole_write_user_management_system_roles remove_ldap_private_cert sysconsole_read_integrations_integration_management sysconsole_read_authentication_mfa use_group_mentions assign_system_admin_role sysconsole_write_authentication_saml sysconsole_read_environment_elasticsearch add_ldap_private_cert sysconsole_read_products_boards sysconsole_read_user_management_groups sysconsole_write_site_users_and_teams delete_post delete_custom_group remove_user_from_team read_bots sysconsole_write_environment_database playbook_private_make_public sysconsole_read_authentication_ldap join_public_teams playbook_public_manage_properties read_elasticsearch_post_aggregation_job read_others_bots edit_others_posts sysconsole_write_site_customization sysconsole_read_billing revoke_user_access_token playbook_private_view sysconsole_write_environment_developer sysconsole_write_compliance_compliance_export sysconsole_read_compliance_custom_terms_of_service manage_others_incoming_webhooks sysconsole_read_integrations_bot_accounts get_public_link sysconsole_write_site_public_links edit_other_users create_bot sysconsole_write_environment_image_proxy read_public_channel_groups sysconsole_read_environment_database sysconsole_read_reporting_site_statistics join_public_channels manage_bots create_post_ephemeral sysconsole_write_integrations_gif invalidate_email_invite sysconsole_read_authentication_openid delete_private_channel sysconsole_write_experimental_feature_flags add_ldap_public_cert run_manage_members sysconsole_read_experimental_feature_flags sysconsole_write_billing sysconsole_write_environment_high_availability sysconsole_write_environment_rate_limiting sysconsole_read_site_users_and_teams sysconsole_write_reporting_team_statistics manage_private_channel_members read_elasticsearch_post_indexing_job read_data_retention_job sysconsole_read_environment_developer invalidate_caches get_analytics create_compliance_export_job create_team invite_guest remove_saml_idp_cert manage_incoming_webhooks sysconsole_read_site_customization playbook_public_make_private run_view sysconsole_read_compliance_compliance_monitoring sysconsole_read_environment_push_notification_server manage_channel_roles assign_bot delete_emojis sysconsole_read_about_edition_and_license read_channel delete_public_channel sysconsole_read_site_public_links read_user_access_token playbook_public_view view_team sysconsole_write_environment_performance_monitoring add_saml_private_cert manage_outgoing_webhooks sysconsole_write_authentication_mfa sysconsole_read_environment_performance_monitoring run_create manage_slash_commands sysconsole_write_authentication_ldap create_emojis delete_others_posts manage_others_outgoing_webhooks upload_file sysconsole_write_site_emoji sysconsole_write_authentication_password playbook_private_create run_manage_properties sysconsole_read_experimental_features get_saml_metadata_from_idp sysconsole_write_environment_file_storage sysconsole_read_reporting_server_logs sysconsole_write_site_notifications sysconsole_read_experimental_bleve sysconsole_write_user_management_groups read_channel_content join_private_teams sysconsole_read_user_management_system_roles sysconsole_write_integrations_cors playbook_public_create sysconsole_read_site_notifications add_reaction sysconsole_write_integrations_bot_accounts sysconsole_write_about_edition_and_license sysconsole_read_site_localization remove_saml_private_cert read_deleted_posts sysconsole_read_user_management_channels manage_license_information playbook_public_manage_members sysconsole_write_site_file_sharing_and_downloads read_ldap_sync_job sysconsole_write_authentication_openid manage_custom_group_members sysconsole_read_environment_web_server add_user_to_team delete_others_emojis remove_reaction restore_custom_group edit_brand sysconsole_write_environment_logging manage_public_channel_properties sysconsole_read_compliance_compliance_export sysconsole_read_plugins invite_user sysconsole_read_environment_high_availability remove_ldap_public_cert sysconsole_write_authentication_signup sysconsole_read_environment_logging list_team_channels manage_others_bots sysconsole_write_user_management_channels create_ldap_sync_job read_compliance_export_job sysconsole_read_reporting_team_statistics list_users_without_team sysconsole_write_compliance_custom_terms_of_service read_public_channel sysconsole_read_environment_smtp sysconsole_write_environment_web_server manage_system sysconsole_read_authentication_guest_access sysconsole_read_site_posts sysconsole_write_user_management_users sysconsole_write_plugins test_email create_elasticsearch_post_indexing_job create_data_retention_job manage_oauth remove_saml_public_cert sysconsole_write_reporting_site_statistics sysconsole_write_environment_smtp demote_to_guest sysconsole_write_environment_session_lengths create_public_channel sysconsole_write_products_boards download_compliance_export_result sysconsole_write_site_notices manage_secure_connections read_license_information sysconsole_write_user_management_permissions sysconsole_read_integrations_cors use_channel_mentions purge_bleve_indexes sysconsole_write_environment_elasticsearch sysconsole_write_authentication_guest_access test_site_url sysconsole_read_authentication_password sysconsole_write_compliance_compliance_monitoring sysconsole_read_environment_file_storage edit_custom_group create_custom_group sysconsole_write_site_localization get_logs purge_elasticsearch_indexes convert_private_channel_to_public sysconsole_read_authentication_email sysconsole_write_experimental_bleve', true, true); +INSERT INTO public.roles VALUES ('rmjt5xak738gmcx5afckhkr47r', 'team_post_all_public', 'authentication.roles.team_post_all_public.name', 'authentication.roles.team_post_all_public.description', 1698320577243, 1698320582211, 0, ' use_channel_mentions create_post_public use_group_mentions', false, true); +INSERT INTO public.roles VALUES ('b9ef3k1qefgkmxhkpi4rsp9q8h', 'run_admin', 'authentication.roles.run_admin.name', 'authentication.roles.run_admin.description', 1698320577249, 1698320582217, 0, ' run_manage_members run_manage_properties', true, true); +INSERT INTO public.roles VALUES ('afhpw8yxipymzn7694us6pj43o', 'system_read_only_admin', 'authentication.roles.system_read_only_admin.name', 'authentication.roles.system_read_only_admin.description', 1698320577273, 1698320582236, 0, ' sysconsole_read_environment_logging list_private_teams sysconsole_read_about_edition_and_license sysconsole_read_authentication_password read_private_channel_groups sysconsole_read_environment_web_server sysconsole_read_environment_session_lengths sysconsole_read_environment_push_notification_server read_elasticsearch_post_aggregation_job sysconsole_read_environment_performance_monitoring sysconsole_read_compliance_data_retention_policy sysconsole_read_integrations_gif read_data_retention_job sysconsole_read_reporting_site_statistics sysconsole_read_environment_high_availability sysconsole_read_site_emoji sysconsole_read_experimental_feature_flags sysconsole_read_site_localization view_team download_compliance_export_result sysconsole_read_reporting_team_statistics test_ldap read_elasticsearch_post_indexing_job sysconsole_read_user_management_users sysconsole_read_authentication_ldap read_public_channel sysconsole_read_plugins read_compliance_export_job sysconsole_read_environment_smtp read_license_information sysconsole_read_site_file_sharing_and_downloads sysconsole_read_integrations_integration_management list_public_teams sysconsole_read_reporting_server_logs sysconsole_read_site_public_links sysconsole_read_user_management_channels sysconsole_read_site_announcement_banner sysconsole_read_authentication_mfa read_other_users_teams sysconsole_read_user_management_permissions sysconsole_read_authentication_guest_access sysconsole_read_integrations_cors sysconsole_read_site_users_and_teams sysconsole_read_user_management_groups sysconsole_read_site_posts sysconsole_read_user_management_teams sysconsole_read_compliance_compliance_export sysconsole_read_site_notices sysconsole_read_authentication_signup sysconsole_read_authentication_email read_ldap_sync_job sysconsole_read_environment_file_storage get_analytics sysconsole_read_environment_elasticsearch sysconsole_read_experimental_bleve sysconsole_read_environment_database sysconsole_read_products_boards sysconsole_read_environment_image_proxy sysconsole_read_site_notifications sysconsole_read_site_customization read_public_channel_groups sysconsole_read_compliance_custom_terms_of_service read_channel sysconsole_read_experimental_features sysconsole_read_environment_developer sysconsole_read_authentication_saml sysconsole_read_integrations_bot_accounts read_audits sysconsole_read_authentication_openid get_logs sysconsole_read_compliance_compliance_monitoring sysconsole_read_environment_rate_limiting', false, true); +INSERT INTO public.roles VALUES ('rdgehgkxwidixmkboktwgd5m5e', 'channel_guest', 'authentication.roles.channel_guest.name', 'authentication.roles.channel_guest.description', 1698320577381, 1698320582335, 0, ' add_reaction remove_reaction upload_file edit_post create_post use_channel_mentions read_channel read_channel_content', true, true); +INSERT INTO public.roles VALUES ('k6f5zc76mjbuucmb1t3bedkano', 'system_custom_group_admin', 'authentication.roles.system_custom_group_admin.name', 'authentication.roles.system_custom_group_admin.description', 1698320577387, 1698320582341, 0, ' delete_custom_group restore_custom_group manage_custom_group_members create_custom_group edit_custom_group', false, true); +INSERT INTO public.roles VALUES ('hfzk9bc7gf8wp8af8b3gtncb6c', 'system_user', 'authentication.roles.global_user.name', 'authentication.roles.global_user.description', 1698320577363, 1698320582347, 0, ' delete_emojis create_team restore_custom_group create_custom_group create_emojis delete_custom_group create_direct_channel view_members list_public_teams edit_custom_group join_public_teams manage_custom_group_members create_group_channel', true, true); +INSERT INTO public.roles VALUES ('fe3n8qmbrb8hupsnsayok1x5by', 'system_manager', 'authentication.roles.system_manager.name', 'authentication.roles.system_manager.description', 1698320577279, 1698320582242, 0, ' sysconsole_write_site_emoji sysconsole_write_environment_session_lengths read_license_information sysconsole_write_site_file_sharing_and_downloads sysconsole_read_plugins sysconsole_write_user_management_permissions read_public_channel_groups sysconsole_write_integrations_cors sysconsole_read_environment_file_storage test_elasticsearch create_elasticsearch_post_indexing_job test_site_url read_public_channel read_elasticsearch_post_aggregation_job sysconsole_read_authentication_mfa sysconsole_read_environment_smtp sysconsole_read_site_announcement_banner sysconsole_write_user_management_teams read_ldap_sync_job sysconsole_read_user_management_teams sysconsole_read_environment_high_availability sysconsole_write_environment_high_availability sysconsole_write_products_boards sysconsole_read_authentication_openid sysconsole_write_environment_web_server reload_config sysconsole_write_site_public_links sysconsole_read_site_customization remove_user_from_team add_user_to_team sysconsole_write_integrations_gif sysconsole_read_environment_developer sysconsole_write_site_localization get_logs sysconsole_read_integrations_integration_management sysconsole_read_environment_web_server sysconsole_read_authentication_ldap sysconsole_read_user_management_permissions sysconsole_read_environment_push_notification_server recycle_database_connections test_s3 purge_elasticsearch_indexes manage_team_roles edit_brand delete_public_channel join_public_teams sysconsole_read_authentication_password manage_private_channel_members sysconsole_read_environment_database list_public_teams manage_public_channel_properties sysconsole_write_site_notices sysconsole_read_site_notices sysconsole_read_site_posts sysconsole_write_environment_push_notification_server sysconsole_read_environment_session_lengths sysconsole_read_site_localization sysconsole_write_site_announcement_banner sysconsole_read_products_boards sysconsole_write_site_customization sysconsole_write_site_users_and_teams sysconsole_write_user_management_channels read_elasticsearch_post_indexing_job sysconsole_read_environment_elasticsearch invalidate_caches sysconsole_read_integrations_gif sysconsole_write_user_management_groups get_analytics sysconsole_write_site_posts read_channel sysconsole_read_site_notifications sysconsole_read_site_file_sharing_and_downloads sysconsole_read_reporting_site_statistics sysconsole_write_environment_file_storage manage_private_channel_properties sysconsole_read_environment_image_proxy sysconsole_write_environment_logging join_private_teams sysconsole_read_site_users_and_teams sysconsole_read_authentication_signup sysconsole_write_environment_image_proxy sysconsole_write_environment_database delete_private_channel sysconsole_write_environment_performance_monitoring read_private_channel_groups sysconsole_read_authentication_saml sysconsole_read_user_management_groups sysconsole_read_site_public_links sysconsole_read_reporting_team_statistics sysconsole_read_integrations_bot_accounts sysconsole_write_environment_elasticsearch sysconsole_read_authentication_guest_access list_private_teams sysconsole_write_environment_rate_limiting sysconsole_read_user_management_channels sysconsole_read_environment_rate_limiting create_elasticsearch_post_aggregation_job view_team sysconsole_read_integrations_cors sysconsole_write_environment_developer convert_public_channel_to_private manage_team manage_channel_roles sysconsole_read_reporting_server_logs sysconsole_write_site_notifications test_ldap sysconsole_read_about_edition_and_license sysconsole_read_authentication_email sysconsole_write_integrations_bot_accounts convert_private_channel_to_public sysconsole_read_site_emoji manage_public_channel_members sysconsole_write_integrations_integration_management sysconsole_read_environment_performance_monitoring sysconsole_write_environment_smtp sysconsole_read_environment_logging test_email', false, true); +INSERT INTO public.roles VALUES ('fr37w1fkii87bnt9f8j1y1wdzw', 'system_user_manager', 'authentication.roles.system_user_manager.name', 'authentication.roles.system_user_manager.description', 1698320577375, 1698320582328, 0, ' manage_public_channel_properties test_ldap manage_team_roles read_public_channel manage_private_channel_properties sysconsole_read_authentication_guest_access sysconsole_read_authentication_email list_private_teams join_private_teams add_user_to_team sysconsole_write_user_management_teams read_ldap_sync_job sysconsole_read_authentication_signup sysconsole_read_authentication_ldap sysconsole_read_user_management_permissions join_public_teams convert_private_channel_to_public sysconsole_write_user_management_channels sysconsole_write_user_management_groups read_private_channel_groups sysconsole_read_user_management_teams sysconsole_read_authentication_saml list_public_teams read_channel sysconsole_read_authentication_openid sysconsole_read_user_management_channels manage_team delete_private_channel view_team manage_private_channel_members sysconsole_read_user_management_groups remove_user_from_team manage_public_channel_members read_public_channel_groups convert_public_channel_to_private sysconsole_read_authentication_password delete_public_channel manage_channel_roles sysconsole_read_authentication_mfa', false, true); + + +-- +-- Data for Name: schemes; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: sessions; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.sessions VALUES ('ugcm3rkgaig7tntdiwka6bp79r', 'ji7mf5m9dfnyjmu4gcnwt31xne', 1698320583554, 0, 1698320583554, 'qicfanjtzbgsf8qh8zkosdq96e', '', '', false, '{}', false); +INSERT INTO public.sessions VALUES ('tccpu59ortge9bdfunua675bcy', 'nsutx44ibbd69r5hjjmd3hx4sw', 1698321933089, 4851921933089, 1698321933089, 'w7uyhzuo7fnfueen6og9cxmn9h', '', 'system_user system_admin', false, '{"type": "UserAccessToken", "is_bot": "true", "is_guest": "false", "user_access_token_id": "7xnejgyhj7nxtmq6t95iah7n7c"}', false); +INSERT INTO public.sessions VALUES ('xprkr99nfirmb8j4pdfzqhhtar', 'gocaadsyk3bo5qwqf9tks47wko', 1698320751063, 1700912751063, 1698322855604, '5md7bsji6pbijpxitu8bwezaqy', '', 'system_admin system_user', false, '{"os": "Linux", "csrf": "wzkjmmqeaifz3qaa6dz57m614w", "isSaml": "false", "browser": "Chrome/118.0", "isMobile": "false", "is_guest": "false", "platform": "Linux", "isOAuthUser": "false"}', false); +INSERT INTO public.sessions VALUES ('bbs5ngiidbrticjza5sfs679ac', 'gsxpu5po9fnxmncgcbgkgcfo7a', 1698324524225, 0, 1698324524225, 'qicfanjtzbgsf8qh8zkosdq96e', '', '', false, '{}', false); + + +-- +-- Data for Name: sharedchannelattachments; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: sharedchannelremotes; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: sharedchannels; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: sharedchannelusers; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: sidebarcategories; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.sidebarcategories VALUES ('favorites_5md7bsji6pbijpxitu8bwezaqy_rkpuunm3rp8fffhzkjxw63usyc', '5md7bsji6pbijpxitu8bwezaqy', 'rkpuunm3rp8fffhzkjxw63usyc', 0, '', 'favorites', 'Favorites', false, false); +INSERT INTO public.sidebarcategories VALUES ('channels_5md7bsji6pbijpxitu8bwezaqy_rkpuunm3rp8fffhzkjxw63usyc', '5md7bsji6pbijpxitu8bwezaqy', 'rkpuunm3rp8fffhzkjxw63usyc', 10, '', 'channels', 'Channels', false, false); +INSERT INTO public.sidebarcategories VALUES ('direct_messages_5md7bsji6pbijpxitu8bwezaqy_rkpuunm3rp8fffhzkjxw63usyc', '5md7bsji6pbijpxitu8bwezaqy', 'rkpuunm3rp8fffhzkjxw63usyc', 20, 'recent', 'direct_messages', 'Direct Messages', false, false); +INSERT INTO public.sidebarcategories VALUES ('favorites_w7uyhzuo7fnfueen6og9cxmn9h_rkpuunm3rp8fffhzkjxw63usyc', 'w7uyhzuo7fnfueen6og9cxmn9h', 'rkpuunm3rp8fffhzkjxw63usyc', 0, '', 'favorites', 'Favorites', false, false); +INSERT INTO public.sidebarcategories VALUES ('channels_w7uyhzuo7fnfueen6og9cxmn9h_rkpuunm3rp8fffhzkjxw63usyc', 'w7uyhzuo7fnfueen6og9cxmn9h', 'rkpuunm3rp8fffhzkjxw63usyc', 10, '', 'channels', 'Channels', false, false); +INSERT INTO public.sidebarcategories VALUES ('direct_messages_w7uyhzuo7fnfueen6og9cxmn9h_rkpuunm3rp8fffhzkjxw63usyc', 'w7uyhzuo7fnfueen6og9cxmn9h', 'rkpuunm3rp8fffhzkjxw63usyc', 20, 'recent', 'direct_messages', 'Direct Messages', false, false); + + +-- +-- Data for Name: sidebarchannels; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: status; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.status VALUES ('w7uyhzuo7fnfueen6og9cxmn9h', 'offline', false, 1698322063254, 0, ''); +INSERT INTO public.status VALUES ('5md7bsji6pbijpxitu8bwezaqy', 'offline', false, 1698323059687, 0, ''); + + +-- +-- Data for Name: systems; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.systems VALUES ('CRTChannelMembershipCountsMigrationComplete', 'true'); +INSERT INTO public.systems VALUES ('CRTThreadCountsAndUnreadsMigrationComplete', 'true'); +INSERT INTO public.systems VALUES ('AsymmetricSigningKey', '{"ecdsa_key":{"curve":"P-256","x":93265069825403552412139318495871668021796740157055378512852007170438861396546,"y":59624988667333768029494324774170511219568387297490421502531189241744540499512,"d":109950753027899581247934453758674695621655017250419947179614439678360020797909}}'); +INSERT INTO public.systems VALUES ('DiagnosticId', 'x5xrikiotffufxawscso75zwue'); +INSERT INTO public.systems VALUES ('LastSecurityTime', '1698320577245'); +INSERT INTO public.systems VALUES ('FirstServerRunTimestamp', '1698320577245'); +INSERT INTO public.systems VALUES ('AdvancedPermissionsMigrationComplete', 'true'); +INSERT INTO public.systems VALUES ('EmojisPermissionsMigrationComplete', 'true'); +INSERT INTO public.systems VALUES ('GuestRolesCreationMigrationComplete', 'true'); +INSERT INTO public.systems VALUES ('SystemConsoleRolesCreationMigrationComplete', 'true'); +INSERT INTO public.systems VALUES ('CustomGroupAdminRoleCreationMigrationComplete', 'true'); +INSERT INTO public.systems VALUES ('emoji_permissions_split', 'true'); +INSERT INTO public.systems VALUES ('webhook_permissions_split', 'true'); +INSERT INTO public.systems VALUES ('list_join_public_private_teams', 'true'); +INSERT INTO public.systems VALUES ('remove_permanent_delete_user', 'true'); +INSERT INTO public.systems VALUES ('add_bot_permissions', 'true'); +INSERT INTO public.systems VALUES ('apply_channel_manage_delete_to_channel_user', 'true'); +INSERT INTO public.systems VALUES ('remove_channel_manage_delete_from_team_user', 'true'); +INSERT INTO public.systems VALUES ('view_members_new_permission', 'true'); +INSERT INTO public.systems VALUES ('add_manage_guests_permissions', 'true'); +INSERT INTO public.systems VALUES ('channel_moderations_permissions', 'true'); +INSERT INTO public.systems VALUES ('add_use_group_mentions_permission', 'true'); +INSERT INTO public.systems VALUES ('add_system_console_permissions', 'true'); +INSERT INTO public.systems VALUES ('add_convert_channel_permissions', 'true'); +INSERT INTO public.systems VALUES ('manage_shared_channel_permissions', 'true'); +INSERT INTO public.systems VALUES ('manage_secure_connections_permissions', 'true'); +INSERT INTO public.systems VALUES ('add_system_roles_permissions', 'true'); +INSERT INTO public.systems VALUES ('add_billing_permissions', 'true'); +INSERT INTO public.systems VALUES ('download_compliance_export_results', 'true'); +INSERT INTO public.systems VALUES ('experimental_subsection_permissions', 'true'); +INSERT INTO public.systems VALUES ('authentication_subsection_permissions', 'true'); +INSERT INTO public.systems VALUES ('integrations_subsection_permissions', 'true'); +INSERT INTO public.systems VALUES ('site_subsection_permissions', 'true'); +INSERT INTO public.systems VALUES ('compliance_subsection_permissions', 'true'); +INSERT INTO public.systems VALUES ('environment_subsection_permissions', 'true'); +INSERT INTO public.systems VALUES ('about_subsection_permissions', 'true'); +INSERT INTO public.systems VALUES ('reporting_subsection_permissions', 'true'); +INSERT INTO public.systems VALUES ('test_email_ancillary_permission', 'true'); +INSERT INTO public.systems VALUES ('playbooks_permissions', 'true'); +INSERT INTO public.systems VALUES ('custom_groups_permissions', 'true'); +INSERT INTO public.systems VALUES ('playbooks_manage_roles', 'true'); +INSERT INTO public.systems VALUES ('products_boards', 'true'); +INSERT INTO public.systems VALUES ('custom_groups_permission_restore', 'true'); +INSERT INTO public.systems VALUES ('read_channel_content_permissions', 'true'); +INSERT INTO public.systems VALUES ('ContentExtractionConfigDefaultTrueMigrationComplete', 'true'); +INSERT INTO public.systems VALUES ('PlaybookRolesCreationMigrationComplete', 'true'); +INSERT INTO public.systems VALUES ('RemainingSchemaMigrations', 'true'); +INSERT INTO public.systems VALUES ('PostPriorityConfigDefaultTrueMigrationComplete', 'true'); +INSERT INTO public.systems VALUES ('PostActionCookieSecret', '{"key":"ixkFbhBo6vjg/slqcncUU4xI8QjzAUk62i5NrW5mShQ="}'); +INSERT INTO public.systems VALUES ('InstallationDate', '1698320582714'); +INSERT INTO public.systems VALUES ('migration_advanced_permissions_phase_2', 'true'); +INSERT INTO public.systems VALUES ('OrganizationName', 'Network To Code LLC'); +INSERT INTO public.systems VALUES ('FirstAdminSetupComplete', 'true'); + + +-- +-- Data for Name: teammembers; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.teammembers VALUES ('rkpuunm3rp8fffhzkjxw63usyc', '5md7bsji6pbijpxitu8bwezaqy', '', 0, true, true, false, 1698320784737); +INSERT INTO public.teammembers VALUES ('rkpuunm3rp8fffhzkjxw63usyc', 'w7uyhzuo7fnfueen6og9cxmn9h', '', 0, true, false, false, 1698321691864); + + +-- +-- Data for Name: teams; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.teams VALUES ('rkpuunm3rp8fffhzkjxw63usyc', 1698320784707, 1698320784707, 0, 'Network To Code LLC', 'network-to-code-llc', '', 'admin@example.com', 'O', '', '', '68tc1nu46i8yif7w13qmndumih', '', false, 0, false, false); + + +-- +-- Data for Name: termsofservice; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: threadmemberships; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: threads; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: tokens; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: trueupreviewhistory; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: uploadsessions; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: useraccesstokens; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.useraccesstokens VALUES ('7xnejgyhj7nxtmq6t95iah7n7c', 'nsutx44ibbd69r5hjjmd3hx4sw', 'w7uyhzuo7fnfueen6og9cxmn9h', 'Default Token', true); + + +-- +-- Data for Name: usergroups; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Data for Name: users; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + +INSERT INTO public.users VALUES ('jmcgoiar5brr9nx8s7g3394c8e', 1698320582714, 1698320582739, 0, 'feedbackbot', '', NULL, '', 'feedbackbot@localhost', false, '', 'Feedbackbot', '', 'system_user', false, '{}', '{"push": "mention", "email": "true", "channel": "true", "desktop": "mention", "comments": "never", "first_name": "false", "push_status": "away", "mention_keys": "", "push_threads": "all", "desktop_sound": "true", "email_threads": "all", "desktop_threads": "all"}', 1698320582714, 1698320582739, 0, 'en', false, '', '', '{"manualTimezone": "", "automaticTimezone": "", "useAutomaticTimezone": "true"}', NULL); +INSERT INTO public.users VALUES ('qicfanjtzbgsf8qh8zkosdq96e', 1698320583519, 1698320583519, 0, 'calls', '', NULL, '', 'calls@localhost', false, '', 'Calls', '', 'system_user', false, '{}', '{"push": "mention", "email": "true", "channel": "true", "desktop": "mention", "comments": "never", "first_name": "false", "push_status": "away", "mention_keys": "", "push_threads": "all", "desktop_sound": "true", "email_threads": "all", "desktop_threads": "all"}', 1698320583519, 0, 0, 'en', false, '', '', '{"manualTimezone": "", "automaticTimezone": "", "useAutomaticTimezone": "true"}', NULL); +INSERT INTO public.users VALUES ('5md7bsji6pbijpxitu8bwezaqy', 1698320750878, 1698320784745, 0, 'admin', '$2a$10$fXSIHTK.8qvMjMZV0dNbH.0ialIcCVDywEog0BpF.NgXIrO4muYIS', NULL, '', 'admin@example.com', false, '', '', '', 'system_admin system_user', false, '{}', '{"push": "mention", "email": "true", "channel": "true", "desktop": "mention", "comments": "never", "first_name": "false", "push_status": "away", "mention_keys": "", "push_threads": "all", "desktop_sound": "true", "email_threads": "all", "desktop_threads": "all"}', 1698320750878, 0, 0, 'en', false, '', '', '{"manualTimezone": "", "automaticTimezone": "", "useAutomaticTimezone": "true"}', NULL); +INSERT INTO public.users VALUES ('dnyqmp4u5tgetr9or6in55xobr', 1698321000002, 1698321000002, 0, 'system-bot', '', NULL, '', 'system-bot@localhost', false, '', 'System', '', 'system_user', false, '{}', '{"push": "mention", "email": "true", "channel": "true", "desktop": "mention", "comments": "never", "first_name": "false", "push_status": "away", "mention_keys": "", "push_threads": "all", "desktop_sound": "true", "email_threads": "all", "desktop_threads": "all"}', 1698321000002, 0, 0, 'en', false, '', '', '{"manualTimezone": "", "automaticTimezone": "", "useAutomaticTimezone": "true"}', NULL); +INSERT INTO public.users VALUES ('w7uyhzuo7fnfueen6og9cxmn9h', 1698321288273, 1698321691881, 0, 'nautobot', '', NULL, '', 'nautobot@localhost', false, '', 'Nautobot', '', 'system_user system_admin', false, '{}', '{"push": "mention", "email": "true", "channel": "true", "desktop": "mention", "comments": "never", "first_name": "false", "push_status": "away", "mention_keys": "", "push_threads": "all", "desktop_sound": "true", "email_threads": "all", "desktop_threads": "all"}', 1698321288273, -1698321288413, 0, 'en', false, '', '', '{"manualTimezone": "", "automaticTimezone": "", "useAutomaticTimezone": "true"}', NULL); +INSERT INTO public.users VALUES ('mt3fq81mrbbydrefss1h9zfxhw', 1698320583260, 1698324524015, 0, 'playbooks', '', NULL, '', 'playbooks@localhost', false, '', 'Playbooks', '', 'system_user', false, '{}', '{"push": "mention", "email": "true", "channel": "true", "desktop": "mention", "comments": "never", "first_name": "false", "push_status": "away", "mention_keys": "", "push_threads": "all", "desktop_sound": "true", "email_threads": "all", "desktop_threads": "all"}', 1698320583260, 1698324524015, 0, 'en', false, '', '', '{"manualTimezone": "", "automaticTimezone": "", "useAutomaticTimezone": "true"}', NULL); + + +-- +-- Data for Name: usertermsofservice; Type: TABLE DATA; Schema: public; Owner: mmuser +-- + + + +-- +-- Name: audits audits_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.audits + ADD CONSTRAINT audits_pkey PRIMARY KEY (id); + + +-- +-- Name: bots bots_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.bots + ADD CONSTRAINT bots_pkey PRIMARY KEY (userid); + + +-- +-- Name: channelmemberhistory channelmemberhistory_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.channelmemberhistory + ADD CONSTRAINT channelmemberhistory_pkey PRIMARY KEY (channelid, userid, jointime); + + +-- +-- Name: channelmembers channelmembers_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.channelmembers + ADD CONSTRAINT channelmembers_pkey PRIMARY KEY (channelid, userid); + + +-- +-- Name: channels channels_name_teamid_key; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.channels + ADD CONSTRAINT channels_name_teamid_key UNIQUE (name, teamid); + + +-- +-- Name: channels channels_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.channels + ADD CONSTRAINT channels_pkey PRIMARY KEY (id); + + +-- +-- Name: clusterdiscovery clusterdiscovery_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.clusterdiscovery + ADD CONSTRAINT clusterdiscovery_pkey PRIMARY KEY (id); + + +-- +-- Name: commands commands_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.commands + ADD CONSTRAINT commands_pkey PRIMARY KEY (id); + + +-- +-- Name: commandwebhooks commandwebhooks_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.commandwebhooks + ADD CONSTRAINT commandwebhooks_pkey PRIMARY KEY (id); + + +-- +-- Name: compliances compliances_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.compliances + ADD CONSTRAINT compliances_pkey PRIMARY KEY (id); + + +-- +-- Name: db_lock db_lock_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.db_lock + ADD CONSTRAINT db_lock_pkey PRIMARY KEY (id); + + +-- +-- Name: db_migrations db_migrations_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.db_migrations + ADD CONSTRAINT db_migrations_pkey PRIMARY KEY (version); + + +-- +-- Name: drafts drafts_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.drafts + ADD CONSTRAINT drafts_pkey PRIMARY KEY (userid, channelid, rootid); + + +-- +-- Name: emoji emoji_name_deleteat_key; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.emoji + ADD CONSTRAINT emoji_name_deleteat_key UNIQUE (name, deleteat); + + +-- +-- Name: emoji emoji_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.emoji + ADD CONSTRAINT emoji_pkey PRIMARY KEY (id); + + +-- +-- Name: fileinfo fileinfo_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.fileinfo + ADD CONSTRAINT fileinfo_pkey PRIMARY KEY (id); + + +-- +-- Name: groupchannels groupchannels_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.groupchannels + ADD CONSTRAINT groupchannels_pkey PRIMARY KEY (groupid, channelid); + + +-- +-- Name: groupmembers groupmembers_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.groupmembers + ADD CONSTRAINT groupmembers_pkey PRIMARY KEY (groupid, userid); + + +-- +-- Name: groupteams groupteams_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.groupteams + ADD CONSTRAINT groupteams_pkey PRIMARY KEY (groupid, teamid); + + +-- +-- Name: incomingwebhooks incomingwebhooks_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.incomingwebhooks + ADD CONSTRAINT incomingwebhooks_pkey PRIMARY KEY (id); + + +-- +-- Name: ir_category_item ir_category_item_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_category_item + ADD CONSTRAINT ir_category_item_pkey PRIMARY KEY (categoryid, itemid, type); + + +-- +-- Name: ir_category ir_category_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_category + ADD CONSTRAINT ir_category_pkey PRIMARY KEY (id); + + +-- +-- Name: ir_channelaction ir_channelaction_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_channelaction + ADD CONSTRAINT ir_channelaction_pkey PRIMARY KEY (id); + + +-- +-- Name: ir_incident ir_incident_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_incident + ADD CONSTRAINT ir_incident_pkey PRIMARY KEY (id); + + +-- +-- Name: ir_metric ir_metric_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_metric + ADD CONSTRAINT ir_metric_pkey PRIMARY KEY (incidentid, metricconfigid); + + +-- +-- Name: ir_metricconfig ir_metricconfig_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_metricconfig + ADD CONSTRAINT ir_metricconfig_pkey PRIMARY KEY (id); + + +-- +-- Name: ir_playbook ir_playbook_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_playbook + ADD CONSTRAINT ir_playbook_pkey PRIMARY KEY (id); + + +-- +-- Name: ir_playbookautofollow ir_playbookautofollow_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_playbookautofollow + ADD CONSTRAINT ir_playbookautofollow_pkey PRIMARY KEY (playbookid, userid); + + +-- +-- Name: ir_playbookmember ir_playbookmember_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_playbookmember + ADD CONSTRAINT ir_playbookmember_pkey PRIMARY KEY (memberid, playbookid); + + +-- +-- Name: ir_playbookmember ir_playbookmember_playbookid_memberid_key; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_playbookmember + ADD CONSTRAINT ir_playbookmember_playbookid_memberid_key UNIQUE (playbookid, memberid); + + +-- +-- Name: ir_run_participants ir_run_participants_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_run_participants + ADD CONSTRAINT ir_run_participants_pkey PRIMARY KEY (incidentid, userid); + + +-- +-- Name: ir_statusposts ir_statusposts_incidentid_postid_key; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_statusposts + ADD CONSTRAINT ir_statusposts_incidentid_postid_key UNIQUE (incidentid, postid); + + +-- +-- Name: ir_statusposts ir_statusposts_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_statusposts + ADD CONSTRAINT ir_statusposts_pkey PRIMARY KEY (incidentid, postid); + + +-- +-- Name: ir_system ir_system_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_system + ADD CONSTRAINT ir_system_pkey PRIMARY KEY (skey); + + +-- +-- Name: ir_timelineevent ir_timelineevent_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_timelineevent + ADD CONSTRAINT ir_timelineevent_pkey PRIMARY KEY (id); + + +-- +-- Name: ir_userinfo ir_userinfo_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_userinfo + ADD CONSTRAINT ir_userinfo_pkey PRIMARY KEY (id); + + +-- +-- Name: ir_viewedchannel ir_viewedchannel_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_viewedchannel + ADD CONSTRAINT ir_viewedchannel_pkey PRIMARY KEY (channelid, userid); + + +-- +-- Name: jobs jobs_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.jobs + ADD CONSTRAINT jobs_pkey PRIMARY KEY (id); + + +-- +-- Name: licenses licenses_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.licenses + ADD CONSTRAINT licenses_pkey PRIMARY KEY (id); + + +-- +-- Name: linkmetadata linkmetadata_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.linkmetadata + ADD CONSTRAINT linkmetadata_pkey PRIMARY KEY (hash); + + +-- +-- Name: notifyadmin notifyadmin_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.notifyadmin + ADD CONSTRAINT notifyadmin_pkey PRIMARY KEY (userid, requiredfeature, requiredplan); + + +-- +-- Name: oauthaccessdata oauthaccessdata_clientid_userid_key; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.oauthaccessdata + ADD CONSTRAINT oauthaccessdata_clientid_userid_key UNIQUE (clientid, userid); + + +-- +-- Name: oauthaccessdata oauthaccessdata_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.oauthaccessdata + ADD CONSTRAINT oauthaccessdata_pkey PRIMARY KEY (token); + + +-- +-- Name: oauthapps oauthapps_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.oauthapps + ADD CONSTRAINT oauthapps_pkey PRIMARY KEY (id); + + +-- +-- Name: oauthauthdata oauthauthdata_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.oauthauthdata + ADD CONSTRAINT oauthauthdata_pkey PRIMARY KEY (code); + + +-- +-- Name: outgoingwebhooks outgoingwebhooks_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.outgoingwebhooks + ADD CONSTRAINT outgoingwebhooks_pkey PRIMARY KEY (id); + + +-- +-- Name: persistentnotifications persistentnotifications_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.persistentnotifications + ADD CONSTRAINT persistentnotifications_pkey PRIMARY KEY (postid); + + +-- +-- Name: pluginkeyvaluestore pluginkeyvaluestore_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.pluginkeyvaluestore + ADD CONSTRAINT pluginkeyvaluestore_pkey PRIMARY KEY (pluginid, pkey); + + +-- +-- Name: postacknowledgements postacknowledgements_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.postacknowledgements + ADD CONSTRAINT postacknowledgements_pkey PRIMARY KEY (postid, userid); + + +-- +-- Name: postreminders postreminders_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.postreminders + ADD CONSTRAINT postreminders_pkey PRIMARY KEY (postid, userid); + + +-- +-- Name: posts posts_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.posts + ADD CONSTRAINT posts_pkey PRIMARY KEY (id); + + +-- +-- Name: postspriority postspriority_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.postspriority + ADD CONSTRAINT postspriority_pkey PRIMARY KEY (postid); + + +-- +-- Name: preferences preferences_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.preferences + ADD CONSTRAINT preferences_pkey PRIMARY KEY (userid, category, name); + + +-- +-- Name: productnoticeviewstate productnoticeviewstate_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.productnoticeviewstate + ADD CONSTRAINT productnoticeviewstate_pkey PRIMARY KEY (userid, noticeid); + + +-- +-- Name: publicchannels publicchannels_name_teamid_key; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.publicchannels + ADD CONSTRAINT publicchannels_name_teamid_key UNIQUE (name, teamid); + + +-- +-- Name: publicchannels publicchannels_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.publicchannels + ADD CONSTRAINT publicchannels_pkey PRIMARY KEY (id); + + +-- +-- Name: reactions reactions_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.reactions + ADD CONSTRAINT reactions_pkey PRIMARY KEY (postid, userid, emojiname); + + +-- +-- Name: recentsearches recentsearches_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.recentsearches + ADD CONSTRAINT recentsearches_pkey PRIMARY KEY (userid, searchpointer); + + +-- +-- Name: remoteclusters remoteclusters_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.remoteclusters + ADD CONSTRAINT remoteclusters_pkey PRIMARY KEY (remoteid, name); + + +-- +-- Name: retentionpolicies retentionpolicies_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.retentionpolicies + ADD CONSTRAINT retentionpolicies_pkey PRIMARY KEY (id); + + +-- +-- Name: retentionpolicieschannels retentionpolicieschannels_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.retentionpolicieschannels + ADD CONSTRAINT retentionpolicieschannels_pkey PRIMARY KEY (channelid); + + +-- +-- Name: retentionpoliciesteams retentionpoliciesteams_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.retentionpoliciesteams + ADD CONSTRAINT retentionpoliciesteams_pkey PRIMARY KEY (teamid); + + +-- +-- Name: roles roles_name_key; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.roles + ADD CONSTRAINT roles_name_key UNIQUE (name); + + +-- +-- Name: roles roles_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.roles + ADD CONSTRAINT roles_pkey PRIMARY KEY (id); + + +-- +-- Name: schemes schemes_name_key; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.schemes + ADD CONSTRAINT schemes_name_key UNIQUE (name); + + +-- +-- Name: schemes schemes_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.schemes + ADD CONSTRAINT schemes_pkey PRIMARY KEY (id); + + +-- +-- Name: sessions sessions_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.sessions + ADD CONSTRAINT sessions_pkey PRIMARY KEY (id); + + +-- +-- Name: sharedchannelattachments sharedchannelattachments_fileid_remoteid_key; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.sharedchannelattachments + ADD CONSTRAINT sharedchannelattachments_fileid_remoteid_key UNIQUE (fileid, remoteid); + + +-- +-- Name: sharedchannelattachments sharedchannelattachments_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.sharedchannelattachments + ADD CONSTRAINT sharedchannelattachments_pkey PRIMARY KEY (id); + + +-- +-- Name: sharedchannelremotes sharedchannelremotes_channelid_remoteid_key; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.sharedchannelremotes + ADD CONSTRAINT sharedchannelremotes_channelid_remoteid_key UNIQUE (channelid, remoteid); + + +-- +-- Name: sharedchannelremotes sharedchannelremotes_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.sharedchannelremotes + ADD CONSTRAINT sharedchannelremotes_pkey PRIMARY KEY (id, channelid); + + +-- +-- Name: sharedchannels sharedchannels_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.sharedchannels + ADD CONSTRAINT sharedchannels_pkey PRIMARY KEY (channelid); + + +-- +-- Name: sharedchannels sharedchannels_sharename_teamid_key; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.sharedchannels + ADD CONSTRAINT sharedchannels_sharename_teamid_key UNIQUE (sharename, teamid); + + +-- +-- Name: sharedchannelusers sharedchannelusers_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.sharedchannelusers + ADD CONSTRAINT sharedchannelusers_pkey PRIMARY KEY (id); + + +-- +-- Name: sharedchannelusers sharedchannelusers_userid_channelid_remoteid_key; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.sharedchannelusers + ADD CONSTRAINT sharedchannelusers_userid_channelid_remoteid_key UNIQUE (userid, channelid, remoteid); + + +-- +-- Name: sidebarcategories sidebarcategories_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.sidebarcategories + ADD CONSTRAINT sidebarcategories_pkey PRIMARY KEY (id); + + +-- +-- Name: sidebarchannels sidebarchannels_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.sidebarchannels + ADD CONSTRAINT sidebarchannels_pkey PRIMARY KEY (channelid, userid, categoryid); + + +-- +-- Name: status status_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.status + ADD CONSTRAINT status_pkey PRIMARY KEY (userid); + + +-- +-- Name: systems systems_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.systems + ADD CONSTRAINT systems_pkey PRIMARY KEY (name); + + +-- +-- Name: teammembers teammembers_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.teammembers + ADD CONSTRAINT teammembers_pkey PRIMARY KEY (teamid, userid); + + +-- +-- Name: teams teams_name_key; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.teams + ADD CONSTRAINT teams_name_key UNIQUE (name); + + +-- +-- Name: teams teams_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.teams + ADD CONSTRAINT teams_pkey PRIMARY KEY (id); + + +-- +-- Name: termsofservice termsofservice_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.termsofservice + ADD CONSTRAINT termsofservice_pkey PRIMARY KEY (id); + + +-- +-- Name: threadmemberships threadmemberships_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.threadmemberships + ADD CONSTRAINT threadmemberships_pkey PRIMARY KEY (postid, userid); + + +-- +-- Name: threads threads_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.threads + ADD CONSTRAINT threads_pkey PRIMARY KEY (postid); + + +-- +-- Name: tokens tokens_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.tokens + ADD CONSTRAINT tokens_pkey PRIMARY KEY (token); + + +-- +-- Name: trueupreviewhistory trueupreviewhistory_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.trueupreviewhistory + ADD CONSTRAINT trueupreviewhistory_pkey PRIMARY KEY (duedate); + + +-- +-- Name: uploadsessions uploadsessions_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.uploadsessions + ADD CONSTRAINT uploadsessions_pkey PRIMARY KEY (id); + + +-- +-- Name: useraccesstokens useraccesstokens_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.useraccesstokens + ADD CONSTRAINT useraccesstokens_pkey PRIMARY KEY (id); + + +-- +-- Name: useraccesstokens useraccesstokens_token_key; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.useraccesstokens + ADD CONSTRAINT useraccesstokens_token_key UNIQUE (token); + + +-- +-- Name: usergroups usergroups_name_key; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.usergroups + ADD CONSTRAINT usergroups_name_key UNIQUE (name); + + +-- +-- Name: usergroups usergroups_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.usergroups + ADD CONSTRAINT usergroups_pkey PRIMARY KEY (id); + + +-- +-- Name: usergroups usergroups_source_remoteid_key; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.usergroups + ADD CONSTRAINT usergroups_source_remoteid_key UNIQUE (source, remoteid); + + +-- +-- Name: users users_authdata_key; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.users + ADD CONSTRAINT users_authdata_key UNIQUE (authdata); + + +-- +-- Name: users users_email_key; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.users + ADD CONSTRAINT users_email_key UNIQUE (email); + + +-- +-- Name: users users_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.users + ADD CONSTRAINT users_pkey PRIMARY KEY (id); + + +-- +-- Name: users users_username_key; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.users + ADD CONSTRAINT users_username_key UNIQUE (username); + + +-- +-- Name: usertermsofservice usertermsofservice_pkey; Type: CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.usertermsofservice + ADD CONSTRAINT usertermsofservice_pkey PRIMARY KEY (userid); + + +-- +-- Name: idx_audits_user_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_audits_user_id ON public.audits USING btree (userid); + + +-- +-- Name: idx_channel_search_txt; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_channel_search_txt ON public.channels USING gin (to_tsvector('english'::regconfig, (((((name)::text || ' '::text) || (displayname)::text) || ' '::text) || (purpose)::text))); + + +-- +-- Name: idx_channelmembers_channel_id_scheme_guest_user_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_channelmembers_channel_id_scheme_guest_user_id ON public.channelmembers USING btree (channelid, schemeguest, userid); + + +-- +-- Name: idx_channelmembers_user_id_channel_id_last_viewed_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_channelmembers_user_id_channel_id_last_viewed_at ON public.channelmembers USING btree (userid, channelid, lastviewedat); + + +-- +-- Name: idx_channels_create_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_channels_create_at ON public.channels USING btree (createat); + + +-- +-- Name: idx_channels_delete_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_channels_delete_at ON public.channels USING btree (deleteat); + + +-- +-- Name: idx_channels_displayname_lower; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_channels_displayname_lower ON public.channels USING btree (lower((displayname)::text)); + + +-- +-- Name: idx_channels_name_lower; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_channels_name_lower ON public.channels USING btree (lower((name)::text)); + + +-- +-- Name: idx_channels_scheme_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_channels_scheme_id ON public.channels USING btree (schemeid); + + +-- +-- Name: idx_channels_team_id_display_name; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_channels_team_id_display_name ON public.channels USING btree (teamid, displayname); + + +-- +-- Name: idx_channels_team_id_type; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_channels_team_id_type ON public.channels USING btree (teamid, type); + + +-- +-- Name: idx_channels_update_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_channels_update_at ON public.channels USING btree (updateat); + + +-- +-- Name: idx_command_create_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_command_create_at ON public.commands USING btree (createat); + + +-- +-- Name: idx_command_delete_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_command_delete_at ON public.commands USING btree (deleteat); + + +-- +-- Name: idx_command_team_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_command_team_id ON public.commands USING btree (teamid); + + +-- +-- Name: idx_command_update_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_command_update_at ON public.commands USING btree (updateat); + + +-- +-- Name: idx_command_webhook_create_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_command_webhook_create_at ON public.commandwebhooks USING btree (createat); + + +-- +-- Name: idx_emoji_create_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_emoji_create_at ON public.emoji USING btree (createat); + + +-- +-- Name: idx_emoji_delete_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_emoji_delete_at ON public.emoji USING btree (deleteat); + + +-- +-- Name: idx_emoji_update_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_emoji_update_at ON public.emoji USING btree (updateat); + + +-- +-- Name: idx_fileinfo_channel_id_create_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_fileinfo_channel_id_create_at ON public.fileinfo USING btree (channelid, createat); + + +-- +-- Name: idx_fileinfo_content_txt; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_fileinfo_content_txt ON public.fileinfo USING gin (to_tsvector('english'::regconfig, content)); + + +-- +-- Name: idx_fileinfo_create_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_fileinfo_create_at ON public.fileinfo USING btree (createat); + + +-- +-- Name: idx_fileinfo_delete_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_fileinfo_delete_at ON public.fileinfo USING btree (deleteat); + + +-- +-- Name: idx_fileinfo_extension_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_fileinfo_extension_at ON public.fileinfo USING btree (extension); + + +-- +-- Name: idx_fileinfo_name_splitted; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_fileinfo_name_splitted ON public.fileinfo USING gin (to_tsvector('english'::regconfig, translate((name)::text, '.,-'::text, ' '::text))); + + +-- +-- Name: idx_fileinfo_name_txt; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_fileinfo_name_txt ON public.fileinfo USING gin (to_tsvector('english'::regconfig, (name)::text)); + + +-- +-- Name: idx_fileinfo_postid_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_fileinfo_postid_at ON public.fileinfo USING btree (postid); + + +-- +-- Name: idx_fileinfo_update_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_fileinfo_update_at ON public.fileinfo USING btree (updateat); + + +-- +-- Name: idx_groupchannels_channelid; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_groupchannels_channelid ON public.groupchannels USING btree (channelid); + + +-- +-- Name: idx_groupchannels_schemeadmin; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_groupchannels_schemeadmin ON public.groupchannels USING btree (schemeadmin); + + +-- +-- Name: idx_groupmembers_create_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_groupmembers_create_at ON public.groupmembers USING btree (createat); + + +-- +-- Name: idx_groupteams_schemeadmin; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_groupteams_schemeadmin ON public.groupteams USING btree (schemeadmin); + + +-- +-- Name: idx_groupteams_teamid; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_groupteams_teamid ON public.groupteams USING btree (teamid); + + +-- +-- Name: idx_incoming_webhook_create_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_incoming_webhook_create_at ON public.incomingwebhooks USING btree (createat); + + +-- +-- Name: idx_incoming_webhook_delete_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_incoming_webhook_delete_at ON public.incomingwebhooks USING btree (deleteat); + + +-- +-- Name: idx_incoming_webhook_team_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_incoming_webhook_team_id ON public.incomingwebhooks USING btree (teamid); + + +-- +-- Name: idx_incoming_webhook_update_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_incoming_webhook_update_at ON public.incomingwebhooks USING btree (updateat); + + +-- +-- Name: idx_incoming_webhook_user_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_incoming_webhook_user_id ON public.incomingwebhooks USING btree (userid); + + +-- +-- Name: idx_jobs_status_type; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_jobs_status_type ON public.jobs USING btree (status, type); + + +-- +-- Name: idx_jobs_type; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_jobs_type ON public.jobs USING btree (type); + + +-- +-- Name: idx_link_metadata_url_timestamp; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_link_metadata_url_timestamp ON public.linkmetadata USING btree (url, "timestamp"); + + +-- +-- Name: idx_notice_views_notice_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_notice_views_notice_id ON public.productnoticeviewstate USING btree (noticeid); + + +-- +-- Name: idx_notice_views_timestamp; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_notice_views_timestamp ON public.productnoticeviewstate USING btree ("timestamp"); + + +-- +-- Name: idx_oauthaccessdata_refresh_token; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_oauthaccessdata_refresh_token ON public.oauthaccessdata USING btree (refreshtoken); + + +-- +-- Name: idx_oauthaccessdata_user_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_oauthaccessdata_user_id ON public.oauthaccessdata USING btree (userid); + + +-- +-- Name: idx_oauthapps_creator_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_oauthapps_creator_id ON public.oauthapps USING btree (creatorid); + + +-- +-- Name: idx_outgoing_webhook_create_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_outgoing_webhook_create_at ON public.outgoingwebhooks USING btree (createat); + + +-- +-- Name: idx_outgoing_webhook_delete_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_outgoing_webhook_delete_at ON public.outgoingwebhooks USING btree (deleteat); + + +-- +-- Name: idx_outgoing_webhook_team_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_outgoing_webhook_team_id ON public.outgoingwebhooks USING btree (teamid); + + +-- +-- Name: idx_outgoing_webhook_update_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_outgoing_webhook_update_at ON public.outgoingwebhooks USING btree (updateat); + + +-- +-- Name: idx_postreminders_targettime; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_postreminders_targettime ON public.postreminders USING btree (targettime); + + +-- +-- Name: idx_posts_channel_id_delete_at_create_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_posts_channel_id_delete_at_create_at ON public.posts USING btree (channelid, deleteat, createat); + + +-- +-- Name: idx_posts_channel_id_update_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_posts_channel_id_update_at ON public.posts USING btree (channelid, updateat); + + +-- +-- Name: idx_posts_create_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_posts_create_at ON public.posts USING btree (createat); + + +-- +-- Name: idx_posts_create_at_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_posts_create_at_id ON public.posts USING btree (createat, id); + + +-- +-- Name: idx_posts_delete_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_posts_delete_at ON public.posts USING btree (deleteat); + + +-- +-- Name: idx_posts_hashtags_txt; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_posts_hashtags_txt ON public.posts USING gin (to_tsvector('english'::regconfig, (hashtags)::text)); + + +-- +-- Name: idx_posts_is_pinned; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_posts_is_pinned ON public.posts USING btree (ispinned); + + +-- +-- Name: idx_posts_message_txt; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_posts_message_txt ON public.posts USING gin (to_tsvector('english'::regconfig, (message)::text)); + + +-- +-- Name: idx_posts_original_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_posts_original_id ON public.posts USING btree (originalid); + + +-- +-- Name: idx_posts_root_id_delete_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_posts_root_id_delete_at ON public.posts USING btree (rootid, deleteat); + + +-- +-- Name: idx_posts_update_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_posts_update_at ON public.posts USING btree (updateat); + + +-- +-- Name: idx_posts_user_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_posts_user_id ON public.posts USING btree (userid); + + +-- +-- Name: idx_preferences_category; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_preferences_category ON public.preferences USING btree (category); + + +-- +-- Name: idx_preferences_name; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_preferences_name ON public.preferences USING btree (name); + + +-- +-- Name: idx_publicchannels_delete_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_publicchannels_delete_at ON public.publicchannels USING btree (deleteat); + + +-- +-- Name: idx_publicchannels_displayname_lower; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_publicchannels_displayname_lower ON public.publicchannels USING btree (lower((displayname)::text)); + + +-- +-- Name: idx_publicchannels_name_lower; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_publicchannels_name_lower ON public.publicchannels USING btree (lower((name)::text)); + + +-- +-- Name: idx_publicchannels_search_txt; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_publicchannels_search_txt ON public.publicchannels USING gin (to_tsvector('english'::regconfig, (((((name)::text || ' '::text) || (displayname)::text) || ' '::text) || (purpose)::text))); + + +-- +-- Name: idx_publicchannels_team_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_publicchannels_team_id ON public.publicchannels USING btree (teamid); + + +-- +-- Name: idx_reactions_channel_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_reactions_channel_id ON public.reactions USING btree (channelid); + + +-- +-- Name: idx_retentionpolicies_displayname; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_retentionpolicies_displayname ON public.retentionpolicies USING btree (displayname); + + +-- +-- Name: idx_retentionpolicieschannels_policyid; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_retentionpolicieschannels_policyid ON public.retentionpolicieschannels USING btree (policyid); + + +-- +-- Name: idx_retentionpoliciesteams_policyid; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_retentionpoliciesteams_policyid ON public.retentionpoliciesteams USING btree (policyid); + + +-- +-- Name: idx_schemes_channel_admin_role; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_schemes_channel_admin_role ON public.schemes USING btree (defaultchanneladminrole); + + +-- +-- Name: idx_schemes_channel_guest_role; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_schemes_channel_guest_role ON public.schemes USING btree (defaultchannelguestrole); + + +-- +-- Name: idx_schemes_channel_user_role; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_schemes_channel_user_role ON public.schemes USING btree (defaultchanneluserrole); + + +-- +-- Name: idx_sessions_create_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_sessions_create_at ON public.sessions USING btree (createat); + + +-- +-- Name: idx_sessions_expires_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_sessions_expires_at ON public.sessions USING btree (expiresat); + + +-- +-- Name: idx_sessions_last_activity_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_sessions_last_activity_at ON public.sessions USING btree (lastactivityat); + + +-- +-- Name: idx_sessions_token; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_sessions_token ON public.sessions USING btree (token); + + +-- +-- Name: idx_sessions_user_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_sessions_user_id ON public.sessions USING btree (userid); + + +-- +-- Name: idx_sharedchannelusers_remote_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_sharedchannelusers_remote_id ON public.sharedchannelusers USING btree (remoteid); + + +-- +-- Name: idx_sidebarcategories_userid_teamid; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_sidebarcategories_userid_teamid ON public.sidebarcategories USING btree (userid, teamid); + + +-- +-- Name: idx_status_status_dndendtime; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_status_status_dndendtime ON public.status USING btree (status, dndendtime); + + +-- +-- Name: idx_teammembers_createat; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_teammembers_createat ON public.teammembers USING btree (createat); + + +-- +-- Name: idx_teammembers_delete_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_teammembers_delete_at ON public.teammembers USING btree (deleteat); + + +-- +-- Name: idx_teammembers_user_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_teammembers_user_id ON public.teammembers USING btree (userid); + + +-- +-- Name: idx_teams_create_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_teams_create_at ON public.teams USING btree (createat); + + +-- +-- Name: idx_teams_delete_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_teams_delete_at ON public.teams USING btree (deleteat); + + +-- +-- Name: idx_teams_invite_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_teams_invite_id ON public.teams USING btree (inviteid); + + +-- +-- Name: idx_teams_scheme_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_teams_scheme_id ON public.teams USING btree (schemeid); + + +-- +-- Name: idx_teams_update_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_teams_update_at ON public.teams USING btree (updateat); + + +-- +-- Name: idx_thread_memberships_last_update_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_thread_memberships_last_update_at ON public.threadmemberships USING btree (lastupdated); + + +-- +-- Name: idx_thread_memberships_last_view_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_thread_memberships_last_view_at ON public.threadmemberships USING btree (lastviewed); + + +-- +-- Name: idx_thread_memberships_user_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_thread_memberships_user_id ON public.threadmemberships USING btree (userid); + + +-- +-- Name: idx_threads_channel_id_last_reply_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_threads_channel_id_last_reply_at ON public.threads USING btree (channelid, lastreplyat); + + +-- +-- Name: idx_uploadsessions_create_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_uploadsessions_create_at ON public.uploadsessions USING btree (createat); + + +-- +-- Name: idx_uploadsessions_type; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_uploadsessions_type ON public.uploadsessions USING btree (type); + + +-- +-- Name: idx_uploadsessions_user_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_uploadsessions_user_id ON public.uploadsessions USING btree (userid); + + +-- +-- Name: idx_user_access_tokens_user_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_user_access_tokens_user_id ON public.useraccesstokens USING btree (userid); + + +-- +-- Name: idx_usergroups_delete_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_usergroups_delete_at ON public.usergroups USING btree (deleteat); + + +-- +-- Name: idx_usergroups_displayname; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_usergroups_displayname ON public.usergroups USING btree (displayname); + + +-- +-- Name: idx_usergroups_remote_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_usergroups_remote_id ON public.usergroups USING btree (remoteid); + + +-- +-- Name: idx_users_all_no_full_name_txt; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_users_all_no_full_name_txt ON public.users USING gin (to_tsvector('english'::regconfig, (((((username)::text || ' '::text) || (nickname)::text) || ' '::text) || (email)::text))); + + +-- +-- Name: idx_users_all_txt; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_users_all_txt ON public.users USING gin (to_tsvector('english'::regconfig, (((((((((username)::text || ' '::text) || (firstname)::text) || ' '::text) || (lastname)::text) || ' '::text) || (nickname)::text) || ' '::text) || (email)::text))); + + +-- +-- Name: idx_users_create_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_users_create_at ON public.users USING btree (createat); + + +-- +-- Name: idx_users_delete_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_users_delete_at ON public.users USING btree (deleteat); + + +-- +-- Name: idx_users_email_lower_textpattern; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_users_email_lower_textpattern ON public.users USING btree (lower((email)::text) text_pattern_ops); + + +-- +-- Name: idx_users_firstname_lower_textpattern; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_users_firstname_lower_textpattern ON public.users USING btree (lower((firstname)::text) text_pattern_ops); + + +-- +-- Name: idx_users_lastname_lower_textpattern; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_users_lastname_lower_textpattern ON public.users USING btree (lower((lastname)::text) text_pattern_ops); + + +-- +-- Name: idx_users_names_no_full_name_txt; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_users_names_no_full_name_txt ON public.users USING gin (to_tsvector('english'::regconfig, (((username)::text || ' '::text) || (nickname)::text))); + + +-- +-- Name: idx_users_names_txt; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_users_names_txt ON public.users USING gin (to_tsvector('english'::regconfig, (((((((username)::text || ' '::text) || (firstname)::text) || ' '::text) || (lastname)::text) || ' '::text) || (nickname)::text))); + + +-- +-- Name: idx_users_nickname_lower_textpattern; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_users_nickname_lower_textpattern ON public.users USING btree (lower((nickname)::text) text_pattern_ops); + + +-- +-- Name: idx_users_update_at; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_users_update_at ON public.users USING btree (updateat); + + +-- +-- Name: idx_users_username_lower_textpattern; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX idx_users_username_lower_textpattern ON public.users USING btree (lower((username)::text) text_pattern_ops); + + +-- +-- Name: ir_category_item_categoryid; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX ir_category_item_categoryid ON public.ir_category_item USING btree (categoryid); + + +-- +-- Name: ir_category_teamid_userid; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX ir_category_teamid_userid ON public.ir_category USING btree (teamid, userid); + + +-- +-- Name: ir_channelaction_channelid; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX ir_channelaction_channelid ON public.ir_channelaction USING btree (channelid); + + +-- +-- Name: ir_incident_channelid; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX ir_incident_channelid ON public.ir_incident USING btree (channelid); + + +-- +-- Name: ir_incident_teamid; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX ir_incident_teamid ON public.ir_incident USING btree (teamid); + + +-- +-- Name: ir_incident_teamid_commanderuserid; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX ir_incident_teamid_commanderuserid ON public.ir_incident USING btree (teamid, commanderuserid); + + +-- +-- Name: ir_metric_incidentid; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX ir_metric_incidentid ON public.ir_metric USING btree (incidentid); + + +-- +-- Name: ir_metric_metricconfigid; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX ir_metric_metricconfigid ON public.ir_metric USING btree (metricconfigid); + + +-- +-- Name: ir_metricconfig_playbookid; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX ir_metricconfig_playbookid ON public.ir_metricconfig USING btree (playbookid); + + +-- +-- Name: ir_playbook_teamid; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX ir_playbook_teamid ON public.ir_playbook USING btree (teamid); + + +-- +-- Name: ir_playbook_updateat; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX ir_playbook_updateat ON public.ir_playbook USING btree (updateat); + + +-- +-- Name: ir_playbookmember_memberid; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX ir_playbookmember_memberid ON public.ir_playbookmember USING btree (memberid); + + +-- +-- Name: ir_playbookmember_playbookid; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX ir_playbookmember_playbookid ON public.ir_playbookmember USING btree (playbookid); + + +-- +-- Name: ir_run_participants_incidentid; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX ir_run_participants_incidentid ON public.ir_run_participants USING btree (incidentid); + + +-- +-- Name: ir_run_participants_userid; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX ir_run_participants_userid ON public.ir_run_participants USING btree (userid); + + +-- +-- Name: ir_statusposts_incidentid; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX ir_statusposts_incidentid ON public.ir_statusposts USING btree (incidentid); + + +-- +-- Name: ir_statusposts_postid; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX ir_statusposts_postid ON public.ir_statusposts USING btree (postid); + + +-- +-- Name: ir_timelineevent_id; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX ir_timelineevent_id ON public.ir_timelineevent USING btree (id); + + +-- +-- Name: ir_timelineevent_incidentid; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE INDEX ir_timelineevent_incidentid ON public.ir_timelineevent USING btree (incidentid); + + +-- +-- Name: remote_clusters_site_url_unique; Type: INDEX; Schema: public; Owner: mmuser +-- + +CREATE UNIQUE INDEX remote_clusters_site_url_unique ON public.remoteclusters USING btree (siteurl, remoteteamid); + + +-- +-- Name: retentionpolicieschannels fk_retentionpolicieschannels_retentionpolicies; Type: FK CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.retentionpolicieschannels + ADD CONSTRAINT fk_retentionpolicieschannels_retentionpolicies FOREIGN KEY (policyid) REFERENCES public.retentionpolicies(id) ON DELETE CASCADE; + + +-- +-- Name: retentionpoliciesteams fk_retentionpoliciesteams_retentionpolicies; Type: FK CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.retentionpoliciesteams + ADD CONSTRAINT fk_retentionpoliciesteams_retentionpolicies FOREIGN KEY (policyid) REFERENCES public.retentionpolicies(id) ON DELETE CASCADE; + + +-- +-- Name: ir_category_item ir_category_item_categoryid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_category_item + ADD CONSTRAINT ir_category_item_categoryid_fkey FOREIGN KEY (categoryid) REFERENCES public.ir_category(id); + + +-- +-- Name: ir_metric ir_metric_incidentid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_metric + ADD CONSTRAINT ir_metric_incidentid_fkey FOREIGN KEY (incidentid) REFERENCES public.ir_incident(id); + + +-- +-- Name: ir_metric ir_metric_metricconfigid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_metric + ADD CONSTRAINT ir_metric_metricconfigid_fkey FOREIGN KEY (metricconfigid) REFERENCES public.ir_metricconfig(id); + + +-- +-- Name: ir_metricconfig ir_metricconfig_playbookid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_metricconfig + ADD CONSTRAINT ir_metricconfig_playbookid_fkey FOREIGN KEY (playbookid) REFERENCES public.ir_playbook(id); + + +-- +-- Name: ir_playbookautofollow ir_playbookautofollow_playbookid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_playbookautofollow + ADD CONSTRAINT ir_playbookautofollow_playbookid_fkey FOREIGN KEY (playbookid) REFERENCES public.ir_playbook(id); + + +-- +-- Name: ir_playbookmember ir_playbookmember_playbookid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_playbookmember + ADD CONSTRAINT ir_playbookmember_playbookid_fkey FOREIGN KEY (playbookid) REFERENCES public.ir_playbook(id); + + +-- +-- Name: ir_run_participants ir_run_participants_incidentid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_run_participants + ADD CONSTRAINT ir_run_participants_incidentid_fkey FOREIGN KEY (incidentid) REFERENCES public.ir_incident(id); + + +-- +-- Name: ir_statusposts ir_statusposts_incidentid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_statusposts + ADD CONSTRAINT ir_statusposts_incidentid_fkey FOREIGN KEY (incidentid) REFERENCES public.ir_incident(id); + + +-- +-- Name: ir_timelineevent ir_timelineevent_incidentid_fkey; Type: FK CONSTRAINT; Schema: public; Owner: mmuser +-- + +ALTER TABLE ONLY public.ir_timelineevent + ADD CONSTRAINT ir_timelineevent_incidentid_fkey FOREIGN KEY (incidentid) REFERENCES public.ir_incident(id); + + +-- +-- PostgreSQL database dump complete +-- -/*!40000 DROP DATABASE IF EXISTS `mattermost_test`*/; - -CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mattermost_test` /*!40100 DEFAULT CHARACTER SET latin1 */; - -USE `mattermost_test`; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `Audits` ( - `Id` varchar(26) NOT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `UserId` varchar(26) DEFAULT NULL, - `Action` text, - `ExtraInfo` text, - `IpAddress` varchar(64) DEFAULT NULL, - `SessionId` varchar(26) DEFAULT NULL, - PRIMARY KEY (`Id`), - KEY `idx_audits_user_id` (`UserId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `Bots` ( - `UserId` varchar(26) NOT NULL, - `Description` text, - `OwnerId` varchar(190) DEFAULT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `UpdateAt` bigint(20) DEFAULT NULL, - `DeleteAt` bigint(20) DEFAULT NULL, - `LastIconUpdate` bigint(20) DEFAULT NULL, - PRIMARY KEY (`UserId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `ChannelMemberHistory` ( - `ChannelId` varchar(26) NOT NULL, - `UserId` varchar(26) NOT NULL, - `JoinTime` bigint(20) NOT NULL, - `LeaveTime` bigint(20) DEFAULT NULL, - PRIMARY KEY (`ChannelId`,`UserId`,`JoinTime`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `ChannelMembers` ( - `ChannelId` varchar(26) NOT NULL, - `UserId` varchar(26) NOT NULL, - `Roles` text, - `LastViewedAt` bigint(20) DEFAULT NULL, - `MsgCount` bigint(20) DEFAULT NULL, - `MentionCount` bigint(20) DEFAULT NULL, - `NotifyProps` json DEFAULT NULL, - `LastUpdateAt` bigint(20) DEFAULT NULL, - `SchemeUser` tinyint(4) DEFAULT NULL, - `SchemeAdmin` tinyint(4) DEFAULT NULL, - `SchemeGuest` tinyint(4) DEFAULT NULL, - `MentionCountRoot` bigint(20) DEFAULT NULL, - `MsgCountRoot` bigint(20) DEFAULT NULL, - `UrgentMentionCount` bigint(20) DEFAULT NULL, - PRIMARY KEY (`ChannelId`,`UserId`), - KEY `idx_channelmembers_user_id_channel_id_last_viewed_at` (`UserId`,`ChannelId`,`LastViewedAt`), - KEY `idx_channelmembers_channel_id_scheme_guest_user_id` (`ChannelId`,`SchemeGuest`,`UserId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `Channels` ( - `Id` varchar(26) NOT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `UpdateAt` bigint(20) DEFAULT NULL, - `DeleteAt` bigint(20) DEFAULT NULL, - `TeamId` varchar(26) DEFAULT NULL, - `Type` enum('D','O','G','P') DEFAULT NULL, - `DisplayName` varchar(64) DEFAULT NULL, - `Name` varchar(64) DEFAULT NULL, - `Header` text, - `Purpose` varchar(250) DEFAULT NULL, - `LastPostAt` bigint(20) DEFAULT NULL, - `TotalMsgCount` bigint(20) DEFAULT NULL, - `ExtraUpdateAt` bigint(20) DEFAULT NULL, - `CreatorId` varchar(26) DEFAULT NULL, - `SchemeId` varchar(26) DEFAULT NULL, - `GroupConstrained` tinyint(1) DEFAULT NULL, - `Shared` tinyint(1) DEFAULT NULL, - `TotalMsgCountRoot` bigint(20) DEFAULT NULL, - `LastRootPostAt` bigint(20) DEFAULT '0', - PRIMARY KEY (`Id`), - UNIQUE KEY `Name` (`Name`,`TeamId`), - KEY `idx_channels_update_at` (`UpdateAt`), - KEY `idx_channels_create_at` (`CreateAt`), - KEY `idx_channels_delete_at` (`DeleteAt`), - KEY `idx_channels_scheme_id` (`SchemeId`), - KEY `idx_channels_team_id_display_name` (`TeamId`,`DisplayName`), - KEY `idx_channels_team_id_type` (`TeamId`,`Type`), - FULLTEXT KEY `idx_channel_search_txt` (`Name`,`DisplayName`,`Purpose`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `ClusterDiscovery` ( - `Id` varchar(26) NOT NULL, - `Type` varchar(64) DEFAULT NULL, - `ClusterName` varchar(64) DEFAULT NULL, - `Hostname` text, - `GossipPort` int(11) DEFAULT NULL, - `Port` int(11) DEFAULT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `LastPingAt` bigint(20) DEFAULT NULL, - PRIMARY KEY (`Id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `CommandWebhooks` ( - `Id` varchar(26) NOT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `CommandId` varchar(26) DEFAULT NULL, - `UserId` varchar(26) DEFAULT NULL, - `ChannelId` varchar(26) DEFAULT NULL, - `RootId` varchar(26) DEFAULT NULL, - `UseCount` int(11) DEFAULT NULL, - PRIMARY KEY (`Id`), - KEY `idx_command_webhook_create_at` (`CreateAt`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `Commands` ( - `Id` varchar(26) NOT NULL, - `Token` varchar(26) DEFAULT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `UpdateAt` bigint(20) DEFAULT NULL, - `DeleteAt` bigint(20) DEFAULT NULL, - `CreatorId` varchar(26) DEFAULT NULL, - `TeamId` varchar(26) DEFAULT NULL, - `Trigger` varchar(128) DEFAULT NULL, - `Method` varchar(1) DEFAULT NULL, - `Username` varchar(64) DEFAULT NULL, - `IconURL` text, - `AutoComplete` tinyint(1) DEFAULT NULL, - `AutoCompleteDesc` text, - `AutoCompleteHint` text, - `DisplayName` varchar(64) DEFAULT NULL, - `Description` varchar(128) DEFAULT NULL, - `URL` text, - `PluginId` varchar(190) DEFAULT NULL, - PRIMARY KEY (`Id`), - KEY `idx_command_team_id` (`TeamId`), - KEY `idx_command_update_at` (`UpdateAt`), - KEY `idx_command_create_at` (`CreateAt`), - KEY `idx_command_delete_at` (`DeleteAt`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `Compliances` ( - `Id` varchar(26) NOT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `UserId` varchar(26) DEFAULT NULL, - `Status` varchar(64) DEFAULT NULL, - `Count` int(11) DEFAULT NULL, - `Desc` text, - `Type` varchar(64) DEFAULT NULL, - `StartAt` bigint(20) DEFAULT NULL, - `EndAt` bigint(20) DEFAULT NULL, - `Keywords` text, - `Emails` text, - PRIMARY KEY (`Id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `Drafts` ( - `CreateAt` bigint(20) DEFAULT NULL, - `UpdateAt` bigint(20) DEFAULT NULL, - `DeleteAt` bigint(20) DEFAULT NULL, - `UserId` varchar(26) NOT NULL, - `ChannelId` varchar(26) NOT NULL, - `RootId` varchar(26) NOT NULL DEFAULT '', - `Message` text, - `Props` text, - `FileIds` text, - `Priority` text, - PRIMARY KEY (`UserId`,`ChannelId`,`RootId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `Emoji` ( - `Id` varchar(26) NOT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `UpdateAt` bigint(20) DEFAULT NULL, - `DeleteAt` bigint(20) DEFAULT NULL, - `CreatorId` varchar(26) DEFAULT NULL, - `Name` varchar(64) DEFAULT NULL, - PRIMARY KEY (`Id`), - UNIQUE KEY `Name` (`Name`,`DeleteAt`), - KEY `idx_emoji_update_at` (`UpdateAt`), - KEY `idx_emoji_create_at` (`CreateAt`), - KEY `idx_emoji_delete_at` (`DeleteAt`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `FileInfo` ( - `Id` varchar(26) NOT NULL, - `CreatorId` varchar(26) DEFAULT NULL, - `PostId` varchar(26) DEFAULT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `UpdateAt` bigint(20) DEFAULT NULL, - `DeleteAt` bigint(20) DEFAULT NULL, - `Path` text, - `ThumbnailPath` text, - `PreviewPath` text, - `Name` text, - `Extension` varchar(64) DEFAULT NULL, - `Size` bigint(20) DEFAULT NULL, - `MimeType` text, - `Width` int(11) DEFAULT NULL, - `Height` int(11) DEFAULT NULL, - `HasPreviewImage` tinyint(1) DEFAULT NULL, - `MiniPreview` mediumblob, - `Content` longtext, - `RemoteId` varchar(26) DEFAULT NULL, - `Archived` tinyint(1) NOT NULL DEFAULT '0', - PRIMARY KEY (`Id`), - KEY `idx_fileinfo_update_at` (`UpdateAt`), - KEY `idx_fileinfo_create_at` (`CreateAt`), - KEY `idx_fileinfo_delete_at` (`DeleteAt`), - KEY `idx_fileinfo_postid_at` (`PostId`), - KEY `idx_fileinfo_extension_at` (`Extension`), - FULLTEXT KEY `idx_fileinfo_name_txt` (`Name`), - FULLTEXT KEY `idx_fileinfo_content_txt` (`Content`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `GroupChannels` ( - `GroupId` varchar(26) NOT NULL, - `AutoAdd` tinyint(1) DEFAULT NULL, - `SchemeAdmin` tinyint(1) DEFAULT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `DeleteAt` bigint(20) DEFAULT NULL, - `UpdateAt` bigint(20) DEFAULT NULL, - `ChannelId` varchar(26) NOT NULL, - PRIMARY KEY (`GroupId`,`ChannelId`), - KEY `idx_groupchannels_schemeadmin` (`SchemeAdmin`), - KEY `idx_groupchannels_channelid` (`ChannelId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `GroupMembers` ( - `GroupId` varchar(26) NOT NULL, - `UserId` varchar(26) NOT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `DeleteAt` bigint(20) DEFAULT NULL, - PRIMARY KEY (`GroupId`,`UserId`), - KEY `idx_groupmembers_create_at` (`CreateAt`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `GroupTeams` ( - `GroupId` varchar(26) NOT NULL, - `AutoAdd` tinyint(1) DEFAULT NULL, - `SchemeAdmin` tinyint(1) DEFAULT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `DeleteAt` bigint(20) DEFAULT NULL, - `UpdateAt` bigint(20) DEFAULT NULL, - `TeamId` varchar(26) NOT NULL, - PRIMARY KEY (`GroupId`,`TeamId`), - KEY `idx_groupteams_schemeadmin` (`SchemeAdmin`), - KEY `idx_groupteams_teamid` (`TeamId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `IR_Category` ( - `ID` varchar(26) NOT NULL, - `Name` varchar(512) NOT NULL, - `TeamID` varchar(26) NOT NULL, - `UserID` varchar(26) NOT NULL, - `Collapsed` tinyint(1) DEFAULT '0', - `CreateAt` bigint(20) NOT NULL, - `UpdateAt` bigint(20) NOT NULL DEFAULT '0', - `DeleteAt` bigint(20) NOT NULL DEFAULT '0', - PRIMARY KEY (`ID`), - KEY `IR_Category_TeamID_UserID` (`TeamID`,`UserID`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `IR_Category_Item` ( - `Type` varchar(1) NOT NULL, - `CategoryID` varchar(26) NOT NULL, - `ItemID` varchar(26) NOT NULL, - PRIMARY KEY (`CategoryID`,`ItemID`,`Type`), - KEY `IR_Category_Item_CategoryID` (`CategoryID`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `IR_ChannelAction` ( - `ID` varchar(26) NOT NULL, - `ChannelID` varchar(26) DEFAULT NULL, - `Enabled` tinyint(1) DEFAULT '0', - `DeleteAt` bigint(20) NOT NULL DEFAULT '0', - `ActionType` text NOT NULL, - `TriggerType` text NOT NULL, - `Payload` json NOT NULL, - PRIMARY KEY (`ID`), - KEY `IR_ChannelAction_ChannelID` (`ChannelID`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `IR_Incident` ( - `ID` varchar(26) NOT NULL, - `Name` varchar(1024) NOT NULL, - `Description` varchar(4096) NOT NULL, - `IsActive` tinyint(1) NOT NULL, - `CommanderUserID` varchar(26) NOT NULL, - `TeamID` varchar(26) NOT NULL, - `ChannelID` varchar(26) NOT NULL, - `CreateAt` bigint(20) NOT NULL, - `EndAt` bigint(20) NOT NULL DEFAULT '0', - `DeleteAt` bigint(20) NOT NULL DEFAULT '0', - `ActiveStage` bigint(20) NOT NULL, - `PostID` varchar(26) NOT NULL DEFAULT '', - `PlaybookID` varchar(26) NOT NULL DEFAULT '', - `ChecklistsJSON` text NOT NULL, - `ActiveStageTitle` varchar(1024) DEFAULT '', - `ReminderPostID` varchar(26) DEFAULT NULL, - `BroadcastChannelID` varchar(26) DEFAULT '', - `PreviousReminder` bigint(20) NOT NULL DEFAULT '0', - `ReminderMessageTemplate` text, - `CurrentStatus` varchar(1024) NOT NULL DEFAULT 'Active', - `ReporterUserID` varchar(26) NOT NULL DEFAULT '', - `ConcatenatedInvitedUserIDs` text, - `DefaultCommanderID` varchar(26) DEFAULT '', - `AnnouncementChannelID` varchar(26) DEFAULT '', - `ConcatenatedWebhookOnCreationURLs` text, - `ConcatenatedInvitedGroupIDs` text, - `Retrospective` text, - `MessageOnJoin` text, - `RetrospectivePublishedAt` bigint(20) NOT NULL DEFAULT '0', - `RetrospectiveReminderIntervalSeconds` bigint(20) NOT NULL DEFAULT '0', - `RetrospectiveWasCanceled` tinyint(1) DEFAULT '0', - `ConcatenatedWebhookOnStatusUpdateURLs` text, - `LastStatusUpdateAt` bigint(20) DEFAULT '0', - `ExportChannelOnFinishedEnabled` tinyint(1) NOT NULL DEFAULT '0', - `CategorizeChannelEnabled` tinyint(1) DEFAULT '0', - `CategoryName` text, - `ConcatenatedBroadcastChannelIds` text, - `ChannelIDToRootID` text, - `ReminderTimerDefaultSeconds` bigint(20) NOT NULL DEFAULT '0', - `StatusUpdateEnabled` tinyint(1) DEFAULT '1', - `RetrospectiveEnabled` tinyint(1) DEFAULT '1', - `StatusUpdateBroadcastChannelsEnabled` tinyint(1) DEFAULT '0', - `StatusUpdateBroadcastWebhooksEnabled` tinyint(1) DEFAULT '0', - `SummaryModifiedAt` bigint(20) NOT NULL DEFAULT '0', - `CreateChannelMemberOnNewParticipant` tinyint(1) DEFAULT '1', - `RemoveChannelMemberOnRemovedParticipant` tinyint(1) DEFAULT '1', - `RunType` varchar(32) DEFAULT 'playbook', - `WebhookOnCreationURL` text, - `WebhookOnStatusUpdateURL` text, - `ExportChannelOnArchiveEnabled` tinyint(1) NOT NULL DEFAULT '0', - PRIMARY KEY (`ID`), - KEY `IR_Incident_TeamID` (`TeamID`), - KEY `IR_Incident_TeamID_CommanderUserID` (`TeamID`,`CommanderUserID`), - KEY `IR_Incident_ChannelID` (`ChannelID`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `IR_Metric` ( - `IncidentID` varchar(26) NOT NULL, - `MetricConfigID` varchar(26) NOT NULL, - `Value` bigint(20) DEFAULT NULL, - `Published` tinyint(1) NOT NULL, - PRIMARY KEY (`IncidentID`,`MetricConfigID`), - KEY `IR_Metric_IncidentID` (`IncidentID`), - KEY `IR_Metric_MetricConfigID` (`MetricConfigID`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `IR_MetricConfig` ( - `ID` varchar(26) NOT NULL, - `PlaybookID` varchar(26) NOT NULL, - `Title` varchar(512) NOT NULL, - `Description` varchar(4096) NOT NULL, - `Type` varchar(32) NOT NULL, - `Target` bigint(20) DEFAULT NULL, - `Ordering` tinyint(4) NOT NULL DEFAULT '0', - `DeleteAt` bigint(20) NOT NULL DEFAULT '0', - PRIMARY KEY (`ID`), - KEY `IR_MetricConfig_PlaybookID` (`PlaybookID`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `IR_Playbook` ( - `ID` varchar(26) NOT NULL, - `Title` varchar(1024) NOT NULL, - `Description` varchar(4096) NOT NULL, - `TeamID` varchar(26) NOT NULL, - `CreatePublicIncident` tinyint(1) NOT NULL, - `CreateAt` bigint(20) NOT NULL, - `DeleteAt` bigint(20) NOT NULL DEFAULT '0', - `ChecklistsJSON` text NOT NULL, - `NumStages` bigint(20) NOT NULL DEFAULT '0', - `NumSteps` bigint(20) NOT NULL DEFAULT '0', - `BroadcastChannelID` varchar(26) DEFAULT '', - `ReminderMessageTemplate` text, - `ReminderTimerDefaultSeconds` bigint(20) NOT NULL DEFAULT '0', - `ConcatenatedInvitedUserIDs` text, - `InviteUsersEnabled` tinyint(1) DEFAULT '0', - `DefaultCommanderID` varchar(26) DEFAULT '', - `DefaultCommanderEnabled` tinyint(1) DEFAULT '0', - `AnnouncementChannelID` varchar(26) DEFAULT '', - `AnnouncementChannelEnabled` tinyint(1) DEFAULT '0', - `ConcatenatedWebhookOnCreationURLs` text, - `WebhookOnCreationEnabled` tinyint(1) DEFAULT '0', - `ConcatenatedInvitedGroupIDs` text, - `MessageOnJoin` text, - `MessageOnJoinEnabled` tinyint(1) DEFAULT '0', - `RetrospectiveReminderIntervalSeconds` bigint(20) NOT NULL DEFAULT '0', - `RetrospectiveTemplate` text, - `ConcatenatedWebhookOnStatusUpdateURLs` text, - `WebhookOnStatusUpdateEnabled` tinyint(1) DEFAULT '0', - `ConcatenatedSignalAnyKeywords` text, - `SignalAnyKeywordsEnabled` tinyint(1) DEFAULT '0', - `UpdateAt` bigint(20) NOT NULL DEFAULT '0', - `ExportChannelOnFinishedEnabled` tinyint(1) NOT NULL DEFAULT '0', - `CategorizeChannelEnabled` tinyint(1) DEFAULT '0', - `CategoryName` text, - `ConcatenatedBroadcastChannelIds` text, - `BroadcastEnabled` tinyint(1) DEFAULT '0', - `RunSummaryTemplate` text, - `ChannelNameTemplate` text, - `StatusUpdateEnabled` tinyint(1) DEFAULT '1', - `RetrospectiveEnabled` tinyint(1) DEFAULT '1', - `Public` tinyint(1) DEFAULT '0', - `RunSummaryTemplateEnabled` tinyint(1) DEFAULT '1', - `CreateChannelMemberOnNewParticipant` tinyint(1) DEFAULT '1', - `RemoveChannelMemberOnRemovedParticipant` tinyint(1) DEFAULT '1', - `ChannelID` varchar(26) DEFAULT '', - `ChannelMode` varchar(32) DEFAULT 'create_new_channel', - `WebhookOnCreationURL` text, - `WebhookOnStatusUpdateURL` text, - `ExportChannelOnArchiveEnabled` tinyint(1) NOT NULL DEFAULT '0', - PRIMARY KEY (`ID`), - KEY `IR_Playbook_TeamID` (`TeamID`), - KEY `IR_PlaybookMember_PlaybookID` (`ID`), - KEY `IR_Playbook_UpdateAt` (`UpdateAt`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `IR_PlaybookAutoFollow` ( - `PlaybookID` varchar(26) NOT NULL, - `UserID` varchar(26) NOT NULL, - PRIMARY KEY (`PlaybookID`,`UserID`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `IR_PlaybookMember` ( - `PlaybookID` varchar(26) NOT NULL, - `MemberID` varchar(26) NOT NULL, - `Roles` text, - PRIMARY KEY (`MemberID`,`PlaybookID`), - KEY `IR_PlaybookMember_PlaybookID` (`PlaybookID`), - KEY `IR_PlaybookMember_MemberID` (`MemberID`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `IR_Run_Participants` ( - `IncidentID` varchar(26) NOT NULL, - `UserID` varchar(26) NOT NULL, - `IsFollower` tinyint(1) NOT NULL DEFAULT '0', - `IsParticipant` tinyint(1) DEFAULT '0', - PRIMARY KEY (`IncidentID`,`UserID`), - KEY `IR_Run_Participants_UserID` (`UserID`), - KEY `IR_Run_Participants_IncidentID` (`IncidentID`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `IR_StatusPosts` ( - `IncidentID` varchar(26) NOT NULL, - `PostID` varchar(26) NOT NULL, - PRIMARY KEY (`IncidentID`,`PostID`), - KEY `IR_StatusPosts_IncidentID` (`IncidentID`), - KEY `IR_StatusPosts_PostID` (`PostID`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `IR_System` ( - `SKey` varchar(64) NOT NULL, - `SValue` varchar(1024) DEFAULT NULL, - PRIMARY KEY (`SKey`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `IR_TimelineEvent` ( - `ID` varchar(26) NOT NULL, - `IncidentID` varchar(26) NOT NULL, - `CreateAt` bigint(20) NOT NULL, - `DeleteAt` bigint(20) NOT NULL DEFAULT '0', - `EventAt` bigint(20) NOT NULL, - `EventType` varchar(32) NOT NULL DEFAULT '', - `Summary` varchar(256) NOT NULL DEFAULT '', - `Details` varchar(4096) NOT NULL DEFAULT '', - `PostID` varchar(26) NOT NULL DEFAULT '', - `SubjectUserID` varchar(26) NOT NULL DEFAULT '', - `CreatorUserID` varchar(26) NOT NULL DEFAULT '', - PRIMARY KEY (`ID`), - KEY `IR_TimelineEvent_ID` (`ID`), - KEY `IR_TimelineEvent_IncidentID` (`IncidentID`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `IR_UserInfo` ( - `ID` varchar(26) NOT NULL, - `LastDailyTodoDMAt` bigint(20) DEFAULT NULL, - `DigestNotificationSettingsJSON` json DEFAULT NULL, - PRIMARY KEY (`ID`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `IR_ViewedChannel` ( - `ChannelID` varchar(26) NOT NULL, - `UserID` varchar(26) NOT NULL, - PRIMARY KEY (`ChannelID`,`UserID`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `IncomingWebhooks` ( - `Id` varchar(26) NOT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `UpdateAt` bigint(20) DEFAULT NULL, - `DeleteAt` bigint(20) DEFAULT NULL, - `UserId` varchar(26) DEFAULT NULL, - `ChannelId` varchar(26) DEFAULT NULL, - `TeamId` varchar(26) DEFAULT NULL, - `DisplayName` varchar(64) DEFAULT NULL, - `Description` text, - `Username` varchar(255) DEFAULT NULL, - `IconURL` text, - `ChannelLocked` tinyint(1) DEFAULT NULL, - PRIMARY KEY (`Id`), - KEY `idx_incoming_webhook_user_id` (`UserId`), - KEY `idx_incoming_webhook_team_id` (`TeamId`), - KEY `idx_incoming_webhook_update_at` (`UpdateAt`), - KEY `idx_incoming_webhook_create_at` (`CreateAt`), - KEY `idx_incoming_webhook_delete_at` (`DeleteAt`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `Jobs` ( - `Id` varchar(26) NOT NULL, - `Type` varchar(32) DEFAULT NULL, - `Priority` bigint(20) DEFAULT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `StartAt` bigint(20) DEFAULT NULL, - `LastActivityAt` bigint(20) DEFAULT NULL, - `Status` varchar(32) DEFAULT NULL, - `Progress` bigint(20) DEFAULT NULL, - `Data` json DEFAULT NULL, - PRIMARY KEY (`Id`), - KEY `idx_jobs_type` (`Type`), - KEY `idx_jobs_status_type` (`Status`,`Type`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `Licenses` ( - `Id` varchar(26) NOT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `Bytes` text, - PRIMARY KEY (`Id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `LinkMetadata` ( - `Hash` bigint(20) NOT NULL, - `URL` text, - `Timestamp` bigint(20) DEFAULT NULL, - `Type` varchar(16) DEFAULT NULL, - `Data` json DEFAULT NULL, - PRIMARY KEY (`Hash`), - KEY `idx_link_metadata_url_timestamp` (`URL`(512),`Timestamp`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `NotifyAdmin` ( - `UserId` varchar(26) NOT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `RequiredPlan` varchar(100) NOT NULL, - `RequiredFeature` varchar(255) NOT NULL, - `Trial` tinyint(1) NOT NULL, - `SentAt` bigint(20) DEFAULT NULL, - PRIMARY KEY (`UserId`,`RequiredFeature`,`RequiredPlan`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `OAuthAccessData` ( - `Token` varchar(26) NOT NULL, - `RefreshToken` varchar(26) DEFAULT NULL, - `RedirectUri` text, - `ClientId` varchar(26) DEFAULT NULL, - `UserId` varchar(26) DEFAULT NULL, - `ExpiresAt` bigint(20) DEFAULT NULL, - `Scope` varchar(128) DEFAULT NULL, - PRIMARY KEY (`Token`), - UNIQUE KEY `ClientId` (`ClientId`,`UserId`), - KEY `idx_oauthaccessdata_user_id` (`UserId`), - KEY `idx_oauthaccessdata_refresh_token` (`RefreshToken`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `OAuthApps` ( - `Id` varchar(26) NOT NULL, - `CreatorId` varchar(26) DEFAULT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `UpdateAt` bigint(20) DEFAULT NULL, - `ClientSecret` varchar(128) DEFAULT NULL, - `Name` varchar(64) DEFAULT NULL, - `Description` text, - `CallbackUrls` text, - `Homepage` text, - `IsTrusted` tinyint(1) DEFAULT NULL, - `IconURL` text, - `MattermostAppID` varchar(32) NOT NULL DEFAULT '', - PRIMARY KEY (`Id`), - KEY `idx_oauthapps_creator_id` (`CreatorId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `OAuthAuthData` ( - `ClientId` varchar(26) DEFAULT NULL, - `UserId` varchar(26) DEFAULT NULL, - `Code` varchar(128) NOT NULL, - `ExpiresIn` int(11) DEFAULT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `RedirectUri` text, - `State` text, - `Scope` varchar(128) DEFAULT NULL, - PRIMARY KEY (`Code`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `OutgoingWebhooks` ( - `Id` varchar(26) NOT NULL, - `Token` varchar(26) DEFAULT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `UpdateAt` bigint(20) DEFAULT NULL, - `DeleteAt` bigint(20) DEFAULT NULL, - `CreatorId` varchar(26) DEFAULT NULL, - `ChannelId` varchar(26) DEFAULT NULL, - `TeamId` varchar(26) DEFAULT NULL, - `TriggerWords` text, - `CallbackURLs` text, - `DisplayName` varchar(64) DEFAULT NULL, - `ContentType` varchar(128) DEFAULT NULL, - `TriggerWhen` int(11) DEFAULT NULL, - `Username` varchar(64) DEFAULT NULL, - `IconURL` text, - `Description` text, - PRIMARY KEY (`Id`), - KEY `idx_outgoing_webhook_team_id` (`TeamId`), - KEY `idx_outgoing_webhook_update_at` (`UpdateAt`), - KEY `idx_outgoing_webhook_create_at` (`CreateAt`), - KEY `idx_outgoing_webhook_delete_at` (`DeleteAt`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `PluginKeyValueStore` ( - `PluginId` varchar(190) NOT NULL, - `PKey` varchar(150) NOT NULL, - `PValue` mediumblob, - `ExpireAt` bigint(20) DEFAULT NULL, - PRIMARY KEY (`PluginId`,`PKey`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `PostAcknowledgements` ( - `PostId` varchar(26) NOT NULL, - `UserId` varchar(26) NOT NULL, - `AcknowledgedAt` bigint(20) DEFAULT NULL, - PRIMARY KEY (`PostId`,`UserId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `PostReminders` ( - `PostId` varchar(26) NOT NULL, - `UserId` varchar(26) NOT NULL, - `TargetTime` bigint(20) DEFAULT NULL, - PRIMARY KEY (`PostId`,`UserId`), - KEY `idx_postreminders_targettime` (`TargetTime`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `Posts` ( - `Id` varchar(26) NOT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `UpdateAt` bigint(20) DEFAULT NULL, - `DeleteAt` bigint(20) DEFAULT NULL, - `UserId` varchar(26) DEFAULT NULL, - `ChannelId` varchar(26) DEFAULT NULL, - `RootId` varchar(26) DEFAULT NULL, - `OriginalId` varchar(26) DEFAULT NULL, - `Message` text, - `Type` varchar(26) DEFAULT NULL, - `Props` json DEFAULT NULL, - `Hashtags` text, - `Filenames` text, - `FileIds` text, - `HasReactions` tinyint(1) DEFAULT NULL, - `EditAt` bigint(20) DEFAULT NULL, - `IsPinned` tinyint(1) DEFAULT NULL, - `RemoteId` varchar(26) DEFAULT NULL, - PRIMARY KEY (`Id`), - KEY `idx_posts_update_at` (`UpdateAt`), - KEY `idx_posts_create_at` (`CreateAt`), - KEY `idx_posts_delete_at` (`DeleteAt`), - KEY `idx_posts_user_id` (`UserId`), - KEY `idx_posts_is_pinned` (`IsPinned`), - KEY `idx_posts_channel_id_update_at` (`ChannelId`,`UpdateAt`), - KEY `idx_posts_channel_id_delete_at_create_at` (`ChannelId`,`DeleteAt`,`CreateAt`), - KEY `idx_posts_root_id_delete_at` (`RootId`,`DeleteAt`), - KEY `idx_posts_create_at_id` (`CreateAt`,`Id`), - KEY `idx_posts_original_id` (`OriginalId`), - FULLTEXT KEY `idx_posts_message_txt` (`Message`), - FULLTEXT KEY `idx_posts_hashtags_txt` (`Hashtags`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `PostsPriority` ( - `PostId` varchar(26) NOT NULL, - `ChannelId` varchar(26) NOT NULL, - `Priority` varchar(32) NOT NULL, - `RequestedAck` tinyint(1) DEFAULT NULL, - `PersistentNotifications` tinyint(1) DEFAULT NULL, - PRIMARY KEY (`PostId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `Preferences` ( - `UserId` varchar(26) NOT NULL, - `Category` varchar(32) NOT NULL, - `Name` varchar(32) NOT NULL, - `Value` text, - PRIMARY KEY (`UserId`,`Category`,`Name`), - KEY `idx_preferences_category` (`Category`), - KEY `idx_preferences_name` (`Name`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `ProductNoticeViewState` ( - `UserId` varchar(26) NOT NULL, - `NoticeId` varchar(26) NOT NULL, - `Viewed` int(11) DEFAULT NULL, - `Timestamp` bigint(20) DEFAULT NULL, - PRIMARY KEY (`UserId`,`NoticeId`), - KEY `idx_notice_views_timestamp` (`Timestamp`), - KEY `idx_notice_views_notice_id` (`NoticeId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `PublicChannels` ( - `Id` varchar(26) NOT NULL, - `DeleteAt` bigint(20) DEFAULT NULL, - `TeamId` varchar(26) DEFAULT NULL, - `DisplayName` varchar(64) DEFAULT NULL, - `Name` varchar(64) DEFAULT NULL, - `Header` text, - `Purpose` varchar(250) DEFAULT NULL, - PRIMARY KEY (`Id`), - UNIQUE KEY `Name` (`Name`,`TeamId`), - KEY `idx_publicchannels_team_id` (`TeamId`), - KEY `idx_publicchannels_delete_at` (`DeleteAt`), - FULLTEXT KEY `idx_publicchannels_search_txt` (`Name`,`DisplayName`,`Purpose`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `Reactions` ( - `UserId` varchar(26) NOT NULL, - `PostId` varchar(26) NOT NULL, - `EmojiName` varchar(64) NOT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `UpdateAt` bigint(20) DEFAULT NULL, - `DeleteAt` bigint(20) DEFAULT NULL, - `RemoteId` varchar(26) DEFAULT NULL, - `ChannelId` varchar(26) NOT NULL DEFAULT '', - PRIMARY KEY (`PostId`,`UserId`,`EmojiName`), - KEY `idx_reactions_channel_id` (`ChannelId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `RecentSearches` ( - `UserId` char(26) NOT NULL, - `SearchPointer` int(11) NOT NULL, - `Query` json DEFAULT NULL, - `CreateAt` bigint(20) NOT NULL, - PRIMARY KEY (`UserId`,`SearchPointer`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `RemoteClusters` ( - `RemoteId` varchar(26) NOT NULL, - `RemoteTeamId` varchar(26) DEFAULT NULL, - `Name` varchar(64) NOT NULL, - `DisplayName` varchar(64) DEFAULT NULL, - `SiteURL` text, - `CreateAt` bigint(20) DEFAULT NULL, - `LastPingAt` bigint(20) DEFAULT NULL, - `Token` varchar(26) DEFAULT NULL, - `RemoteToken` varchar(26) DEFAULT NULL, - `Topics` text, - `CreatorId` varchar(26) DEFAULT NULL, - PRIMARY KEY (`RemoteId`,`Name`), - UNIQUE KEY `remote_clusters_site_url_unique` (`RemoteTeamId`,`SiteURL`(168)) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `RetentionPolicies` ( - `Id` varchar(26) NOT NULL, - `DisplayName` varchar(64) DEFAULT NULL, - `PostDuration` bigint(20) DEFAULT NULL, - PRIMARY KEY (`Id`), - KEY `IDX_RetentionPolicies_DisplayName` (`DisplayName`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `RetentionPoliciesChannels` ( - `PolicyId` varchar(26) DEFAULT NULL, - `ChannelId` varchar(26) NOT NULL, - PRIMARY KEY (`ChannelId`), - KEY `IDX_RetentionPoliciesChannels_PolicyId` (`PolicyId`), - CONSTRAINT `FK_RetentionPoliciesChannels_RetentionPolicies` FOREIGN KEY (`PolicyId`) REFERENCES `RetentionPolicies` (`Id`) ON DELETE CASCADE -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `RetentionPoliciesTeams` ( - `PolicyId` varchar(26) DEFAULT NULL, - `TeamId` varchar(26) NOT NULL, - PRIMARY KEY (`TeamId`), - KEY `IDX_RetentionPoliciesTeams_PolicyId` (`PolicyId`), - CONSTRAINT `FK_RetentionPoliciesTeams_RetentionPolicies` FOREIGN KEY (`PolicyId`) REFERENCES `RetentionPolicies` (`Id`) ON DELETE CASCADE -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `Roles` ( - `Id` varchar(26) NOT NULL, - `Name` varchar(64) DEFAULT NULL, - `DisplayName` varchar(128) DEFAULT NULL, - `Description` text, - `CreateAt` bigint(20) DEFAULT NULL, - `UpdateAt` bigint(20) DEFAULT NULL, - `DeleteAt` bigint(20) DEFAULT NULL, - `Permissions` longtext, - `SchemeManaged` tinyint(1) DEFAULT NULL, - `BuiltIn` tinyint(1) DEFAULT NULL, - PRIMARY KEY (`Id`), - UNIQUE KEY `Name` (`Name`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `Schemes` ( - `Id` varchar(26) NOT NULL, - `Name` varchar(64) DEFAULT NULL, - `DisplayName` varchar(128) DEFAULT NULL, - `Description` text, - `CreateAt` bigint(20) DEFAULT NULL, - `UpdateAt` bigint(20) DEFAULT NULL, - `DeleteAt` bigint(20) DEFAULT NULL, - `Scope` varchar(32) DEFAULT NULL, - `DefaultTeamAdminRole` varchar(64) DEFAULT NULL, - `DefaultTeamUserRole` varchar(64) DEFAULT NULL, - `DefaultChannelAdminRole` varchar(64) DEFAULT NULL, - `DefaultChannelUserRole` varchar(64) DEFAULT NULL, - `DefaultTeamGuestRole` varchar(64) DEFAULT NULL, - `DefaultChannelGuestRole` varchar(64) DEFAULT NULL, - `DefaultPlaybookAdminRole` varchar(64) DEFAULT '', - `DefaultPlaybookMemberRole` varchar(64) DEFAULT '', - `DefaultRunAdminRole` varchar(64) DEFAULT '', - `DefaultRunMemberRole` varchar(64) DEFAULT '', - PRIMARY KEY (`Id`), - UNIQUE KEY `Name` (`Name`), - KEY `idx_schemes_channel_guest_role` (`DefaultChannelGuestRole`), - KEY `idx_schemes_channel_user_role` (`DefaultChannelUserRole`), - KEY `idx_schemes_channel_admin_role` (`DefaultChannelAdminRole`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `Sessions` ( - `Id` varchar(26) NOT NULL, - `Token` varchar(26) DEFAULT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `ExpiresAt` bigint(20) DEFAULT NULL, - `LastActivityAt` bigint(20) DEFAULT NULL, - `UserId` varchar(26) DEFAULT NULL, - `DeviceId` text, - `Roles` text, - `IsOAuth` tinyint(1) DEFAULT NULL, - `Props` json DEFAULT NULL, - `ExpiredNotify` tinyint(1) DEFAULT NULL, - PRIMARY KEY (`Id`), - KEY `idx_sessions_user_id` (`UserId`), - KEY `idx_sessions_token` (`Token`), - KEY `idx_sessions_expires_at` (`ExpiresAt`), - KEY `idx_sessions_create_at` (`CreateAt`), - KEY `idx_sessions_last_activity_at` (`LastActivityAt`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `SharedChannelAttachments` ( - `Id` varchar(26) NOT NULL, - `FileId` varchar(26) DEFAULT NULL, - `RemoteId` varchar(26) DEFAULT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `LastSyncAt` bigint(20) DEFAULT NULL, - PRIMARY KEY (`Id`), - UNIQUE KEY `FileId` (`FileId`,`RemoteId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `SharedChannelRemotes` ( - `Id` varchar(26) NOT NULL, - `ChannelId` varchar(26) NOT NULL, - `CreatorId` varchar(26) DEFAULT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `UpdateAt` bigint(20) DEFAULT NULL, - `IsInviteAccepted` tinyint(1) DEFAULT NULL, - `IsInviteConfirmed` tinyint(1) DEFAULT NULL, - `RemoteId` varchar(26) DEFAULT NULL, - `LastPostUpdateAt` bigint(20) DEFAULT NULL, - `LastPostId` varchar(26) DEFAULT NULL, - PRIMARY KEY (`Id`,`ChannelId`), - UNIQUE KEY `ChannelId` (`ChannelId`,`RemoteId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `SharedChannelUsers` ( - `Id` varchar(26) NOT NULL, - `UserId` varchar(26) DEFAULT NULL, - `RemoteId` varchar(26) DEFAULT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `LastSyncAt` bigint(20) DEFAULT NULL, - `ChannelId` varchar(26) DEFAULT NULL, - PRIMARY KEY (`Id`), - UNIQUE KEY `UserId` (`UserId`,`ChannelId`,`RemoteId`), - KEY `idx_sharedchannelusers_remote_id` (`RemoteId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `SharedChannels` ( - `ChannelId` varchar(26) NOT NULL, - `TeamId` varchar(26) DEFAULT NULL, - `Home` tinyint(1) DEFAULT NULL, - `ReadOnly` tinyint(1) DEFAULT NULL, - `ShareName` varchar(64) DEFAULT NULL, - `ShareDisplayName` varchar(64) DEFAULT NULL, - `SharePurpose` varchar(250) DEFAULT NULL, - `ShareHeader` text, - `CreatorId` varchar(26) DEFAULT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `UpdateAt` bigint(20) DEFAULT NULL, - `RemoteId` varchar(26) DEFAULT NULL, - PRIMARY KEY (`ChannelId`), - UNIQUE KEY `ShareName` (`ShareName`,`TeamId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `SidebarCategories` ( - `Id` varchar(128) NOT NULL, - `UserId` varchar(26) DEFAULT NULL, - `TeamId` varchar(26) DEFAULT NULL, - `SortOrder` bigint(20) DEFAULT NULL, - `Sorting` varchar(64) DEFAULT NULL, - `Type` varchar(64) DEFAULT NULL, - `DisplayName` varchar(64) DEFAULT NULL, - `Muted` tinyint(1) DEFAULT NULL, - `Collapsed` tinyint(1) DEFAULT NULL, - PRIMARY KEY (`Id`), - KEY `idx_sidebarcategories_userid_teamid` (`UserId`,`TeamId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `SidebarChannels` ( - `ChannelId` varchar(26) NOT NULL, - `UserId` varchar(26) NOT NULL, - `CategoryId` varchar(128) NOT NULL, - `SortOrder` bigint(20) DEFAULT NULL, - PRIMARY KEY (`ChannelId`,`UserId`,`CategoryId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `Status` ( - `UserId` varchar(26) NOT NULL, - `Status` varchar(32) DEFAULT NULL, - `Manual` tinyint(1) DEFAULT NULL, - `LastActivityAt` bigint(20) DEFAULT NULL, - `DNDEndTime` bigint(20) DEFAULT NULL, - `PrevStatus` varchar(32) DEFAULT NULL, - PRIMARY KEY (`UserId`), - KEY `idx_status_status_dndendtime` (`Status`,`DNDEndTime`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `Systems` ( - `Name` varchar(64) NOT NULL, - `Value` text, - PRIMARY KEY (`Name`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `TeamMembers` ( - `TeamId` varchar(26) NOT NULL, - `UserId` varchar(26) NOT NULL, - `Roles` text, - `DeleteAt` bigint(20) DEFAULT NULL, - `SchemeUser` tinyint(4) DEFAULT NULL, - `SchemeAdmin` tinyint(4) DEFAULT NULL, - `SchemeGuest` tinyint(4) DEFAULT NULL, - `CreateAt` bigint(20) DEFAULT '0', - PRIMARY KEY (`TeamId`,`UserId`), - KEY `idx_teammembers_user_id` (`UserId`), - KEY `idx_teammembers_delete_at` (`DeleteAt`), - KEY `idx_teammembers_createat` (`CreateAt`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `Teams` ( - `Id` varchar(26) NOT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `UpdateAt` bigint(20) DEFAULT NULL, - `DeleteAt` bigint(20) DEFAULT NULL, - `DisplayName` varchar(64) DEFAULT NULL, - `Name` varchar(64) DEFAULT NULL, - `Description` varchar(255) DEFAULT NULL, - `Email` varchar(128) DEFAULT NULL, - `Type` enum('I','O') DEFAULT NULL, - `CompanyName` varchar(64) DEFAULT NULL, - `AllowedDomains` text, - `InviteId` varchar(32) DEFAULT NULL, - `SchemeId` varchar(26) DEFAULT NULL, - `AllowOpenInvite` tinyint(1) DEFAULT NULL, - `LastTeamIconUpdate` bigint(20) DEFAULT NULL, - `GroupConstrained` tinyint(1) DEFAULT NULL, - `CloudLimitsArchived` tinyint(1) NOT NULL DEFAULT '0', - PRIMARY KEY (`Id`), - UNIQUE KEY `Name` (`Name`), - KEY `idx_teams_invite_id` (`InviteId`), - KEY `idx_teams_update_at` (`UpdateAt`), - KEY `idx_teams_create_at` (`CreateAt`), - KEY `idx_teams_delete_at` (`DeleteAt`), - KEY `idx_teams_scheme_id` (`SchemeId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `TermsOfService` ( - `Id` varchar(26) NOT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `UserId` varchar(26) DEFAULT NULL, - `Text` text, - PRIMARY KEY (`Id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `ThreadMemberships` ( - `PostId` varchar(26) NOT NULL, - `UserId` varchar(26) NOT NULL, - `Following` tinyint(1) DEFAULT NULL, - `LastViewed` bigint(20) DEFAULT NULL, - `LastUpdated` bigint(20) DEFAULT NULL, - `UnreadMentions` bigint(20) DEFAULT NULL, - PRIMARY KEY (`PostId`,`UserId`), - KEY `idx_thread_memberships_last_update_at` (`LastUpdated`), - KEY `idx_thread_memberships_last_view_at` (`LastViewed`), - KEY `idx_thread_memberships_user_id` (`UserId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `Threads` ( - `PostId` varchar(26) NOT NULL, - `ReplyCount` bigint(20) DEFAULT NULL, - `LastReplyAt` bigint(20) DEFAULT NULL, - `Participants` json DEFAULT NULL, - `ChannelId` varchar(26) DEFAULT NULL, - `ThreadDeleteAt` bigint(20) DEFAULT NULL, - `ThreadTeamId` varchar(26) DEFAULT NULL, - PRIMARY KEY (`PostId`), - KEY `idx_threads_channel_id_last_reply_at` (`ChannelId`,`LastReplyAt`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `Tokens` ( - `Token` varchar(64) NOT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `Type` varchar(64) DEFAULT NULL, - `Extra` text, - PRIMARY KEY (`Token`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `TrueUpReviewHistory` ( - `DueDate` bigint(20) NOT NULL, - `Completed` tinyint(1) DEFAULT NULL, - PRIMARY KEY (`DueDate`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `UploadSessions` ( - `Id` varchar(26) NOT NULL, - `Type` enum('attachment','import') DEFAULT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `UserId` varchar(26) DEFAULT NULL, - `ChannelId` varchar(26) DEFAULT NULL, - `Filename` text, - `Path` text, - `FileSize` bigint(20) DEFAULT NULL, - `FileOffset` bigint(20) DEFAULT NULL, - `RemoteId` varchar(26) DEFAULT NULL, - `ReqFileId` varchar(26) DEFAULT NULL, - PRIMARY KEY (`Id`), - KEY `idx_uploadsessions_user_id` (`UserId`), - KEY `idx_uploadsessions_create_at` (`CreateAt`), - KEY `idx_uploadsessions_type` (`Type`) -) ENGINE=InnoDB DEFAULT CHARSET=latin1; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `UserAccessTokens` ( - `Id` varchar(26) NOT NULL, - `Token` varchar(26) DEFAULT NULL, - `UserId` varchar(26) DEFAULT NULL, - `Description` text, - `IsActive` tinyint(1) DEFAULT NULL, - PRIMARY KEY (`Id`), - UNIQUE KEY `Token` (`Token`), - KEY `idx_user_access_tokens_user_id` (`UserId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `UserGroups` ( - `Id` varchar(26) NOT NULL, - `Name` varchar(64) DEFAULT NULL, - `DisplayName` varchar(128) DEFAULT NULL, - `Description` text, - `Source` varchar(64) DEFAULT NULL, - `RemoteId` varchar(48) DEFAULT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `UpdateAt` bigint(20) DEFAULT NULL, - `DeleteAt` bigint(20) DEFAULT NULL, - `AllowReference` tinyint(1) DEFAULT NULL, - PRIMARY KEY (`Id`), - UNIQUE KEY `Name` (`Name`), - UNIQUE KEY `Source` (`Source`,`RemoteId`), - KEY `idx_usergroups_remote_id` (`RemoteId`), - KEY `idx_usergroups_delete_at` (`DeleteAt`), - KEY `idx_usergroups_displayname` (`DisplayName`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `UserTermsOfService` ( - `UserId` varchar(26) NOT NULL, - `TermsOfServiceId` varchar(26) DEFAULT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - PRIMARY KEY (`UserId`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `Users` ( - `Id` varchar(26) NOT NULL, - `CreateAt` bigint(20) DEFAULT NULL, - `UpdateAt` bigint(20) DEFAULT NULL, - `DeleteAt` bigint(20) DEFAULT NULL, - `Username` varchar(64) DEFAULT NULL, - `Password` varchar(128) DEFAULT NULL, - `AuthData` varchar(128) DEFAULT NULL, - `AuthService` varchar(32) DEFAULT NULL, - `Email` varchar(128) DEFAULT NULL, - `EmailVerified` tinyint(1) DEFAULT NULL, - `Nickname` varchar(64) DEFAULT NULL, - `FirstName` varchar(64) DEFAULT NULL, - `LastName` varchar(64) DEFAULT NULL, - `Roles` text, - `AllowMarketing` tinyint(1) DEFAULT NULL, - `Props` json DEFAULT NULL, - `NotifyProps` json DEFAULT NULL, - `LastPasswordUpdate` bigint(20) DEFAULT NULL, - `LastPictureUpdate` bigint(20) DEFAULT NULL, - `FailedAttempts` int(11) DEFAULT NULL, - `Locale` varchar(5) DEFAULT NULL, - `MfaActive` tinyint(1) DEFAULT NULL, - `MfaSecret` varchar(128) DEFAULT NULL, - `Position` varchar(128) DEFAULT NULL, - `Timezone` json DEFAULT NULL, - `RemoteId` varchar(26) DEFAULT NULL, - PRIMARY KEY (`Id`), - UNIQUE KEY `Username` (`Username`), - UNIQUE KEY `AuthData` (`AuthData`), - UNIQUE KEY `Email` (`Email`), - KEY `idx_users_update_at` (`UpdateAt`), - KEY `idx_users_create_at` (`CreateAt`), - KEY `idx_users_delete_at` (`DeleteAt`), - FULLTEXT KEY `idx_users_all_txt` (`Username`,`FirstName`,`LastName`,`Nickname`,`Email`), - FULLTEXT KEY `idx_users_all_no_full_name_txt` (`Username`,`Nickname`,`Email`), - FULLTEXT KEY `idx_users_names_txt` (`Username`,`FirstName`,`LastName`,`Nickname`), - FULLTEXT KEY `idx_users_names_no_full_name_txt` (`Username`,`Nickname`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `db_lock` ( - `Id` varchar(64) NOT NULL, - `ExpireAt` bigint(20) NOT NULL, - PRIMARY KEY (`Id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `db_migrations` ( - `Version` bigint(20) NOT NULL, - `Name` varchar(64) NOT NULL, - PRIMARY KEY (`Version`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `focalboard_blocks` ( - `id` varchar(36) NOT NULL, - `insert_at` datetime(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6), - `parent_id` varchar(36) DEFAULT NULL, - `schema` bigint(20) DEFAULT NULL, - `type` text, - `title` text, - `fields` text, - `create_at` bigint(20) DEFAULT NULL, - `update_at` bigint(20) DEFAULT NULL, - `delete_at` bigint(20) DEFAULT NULL, - `root_id` varchar(36) DEFAULT NULL, - `modified_by` varchar(36) NOT NULL, - `channel_id` varchar(36) NOT NULL, - `created_by` varchar(36) NOT NULL, - `board_id` varchar(36) DEFAULT NULL, - PRIMARY KEY (`id`), - KEY `idx_blocks_board_id_parent_id` (`board_id`,`parent_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `focalboard_blocks_history` ( - `id` varchar(36) NOT NULL, - `insert_at` datetime(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6), - `parent_id` varchar(36) DEFAULT NULL, - `schema` bigint(20) DEFAULT NULL, - `type` text, - `title` text, - `fields` text, - `create_at` bigint(20) DEFAULT NULL, - `update_at` bigint(20) DEFAULT NULL, - `delete_at` bigint(20) DEFAULT NULL, - `root_id` varchar(36) DEFAULT NULL, - `modified_by` varchar(36) DEFAULT NULL, - `channel_id` varchar(36) DEFAULT NULL, - `created_by` varchar(36) DEFAULT NULL, - `board_id` varchar(36) DEFAULT NULL, - PRIMARY KEY (`id`,`insert_at`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `focalboard_board_members` ( - `board_id` varchar(36) NOT NULL, - `user_id` varchar(36) NOT NULL, - `roles` varchar(64) DEFAULT NULL, - `scheme_admin` tinyint(1) DEFAULT NULL, - `scheme_editor` tinyint(1) DEFAULT NULL, - `scheme_commenter` tinyint(1) DEFAULT NULL, - `scheme_viewer` tinyint(1) DEFAULT NULL, - PRIMARY KEY (`board_id`,`user_id`), - KEY `idx_board_members_user_id` (`user_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `focalboard_board_members_history` ( - `board_id` varchar(36) NOT NULL, - `user_id` varchar(36) NOT NULL, - `action` varchar(10) DEFAULT NULL, - `insert_at` datetime(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6), - PRIMARY KEY (`board_id`,`user_id`,`insert_at`), - KEY `idx_board_members_history_user_id` (`user_id`), - KEY `idx_board_members_history_board_id_user_id` (`board_id`,`user_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `focalboard_boards` ( - `id` varchar(36) NOT NULL, - `insert_at` datetime(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6), - `team_id` varchar(36) NOT NULL, - `channel_id` varchar(36) DEFAULT NULL, - `created_by` varchar(36) DEFAULT NULL, - `modified_by` varchar(36) DEFAULT NULL, - `type` varchar(1) NOT NULL, - `title` text NOT NULL, - `description` text, - `icon` varchar(256) DEFAULT NULL, - `show_description` tinyint(1) DEFAULT NULL, - `is_template` tinyint(1) DEFAULT NULL, - `template_version` int(11) DEFAULT '0', - `properties` json DEFAULT NULL, - `card_properties` json DEFAULT NULL, - `create_at` bigint(20) DEFAULT NULL, - `update_at` bigint(20) DEFAULT NULL, - `delete_at` bigint(20) DEFAULT NULL, - `minimum_role` varchar(36) NOT NULL DEFAULT '', - PRIMARY KEY (`id`), - KEY `idx_boards_team_id_is_template` (`team_id`,`is_template`), - KEY `idx_boards_channel_id` (`channel_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `focalboard_boards_history` ( - `id` varchar(36) NOT NULL, - `insert_at` datetime(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6), - `team_id` varchar(36) NOT NULL, - `channel_id` varchar(36) DEFAULT NULL, - `created_by` varchar(36) DEFAULT NULL, - `modified_by` varchar(36) DEFAULT NULL, - `type` varchar(1) NOT NULL, - `title` text NOT NULL, - `description` text, - `icon` varchar(256) DEFAULT NULL, - `show_description` tinyint(1) DEFAULT NULL, - `is_template` tinyint(1) DEFAULT NULL, - `template_version` int(11) DEFAULT '0', - `properties` json DEFAULT NULL, - `card_properties` json DEFAULT NULL, - `create_at` bigint(20) DEFAULT NULL, - `update_at` bigint(20) DEFAULT NULL, - `delete_at` bigint(20) DEFAULT NULL, - `minimum_role` varchar(36) NOT NULL DEFAULT '', - PRIMARY KEY (`id`,`insert_at`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `focalboard_categories` ( - `id` varchar(36) NOT NULL, - `name` varchar(100) NOT NULL, - `user_id` varchar(36) NOT NULL, - `team_id` varchar(36) NOT NULL, - `channel_id` varchar(36) DEFAULT NULL, - `create_at` bigint(20) DEFAULT NULL, - `update_at` bigint(20) DEFAULT NULL, - `delete_at` bigint(20) DEFAULT NULL, - `collapsed` tinyint(1) DEFAULT '0', - `type` varchar(64) DEFAULT NULL, - `sort_order` bigint(20) DEFAULT NULL, - PRIMARY KEY (`id`), - KEY `idx_categories_user_id_team_id` (`user_id`,`team_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `focalboard_category_boards` ( - `id` varchar(36) NOT NULL, - `user_id` varchar(36) NOT NULL, - `category_id` varchar(36) NOT NULL, - `board_id` varchar(36) NOT NULL, - `create_at` bigint(20) DEFAULT NULL, - `update_at` bigint(20) DEFAULT NULL, - `sort_order` bigint(20) DEFAULT NULL, - `hidden` tinyint(1) DEFAULT NULL, - PRIMARY KEY (`id`), - UNIQUE KEY `unique_user_category_board` (`user_id`,`board_id`), - KEY `idx_category_boards_category_id` (`category_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `focalboard_file_info` ( - `id` varchar(26) NOT NULL, - `create_at` bigint(20) NOT NULL, - `delete_at` bigint(20) DEFAULT NULL, - `name` text NOT NULL, - `extension` varchar(50) NOT NULL, - `size` bigint(20) NOT NULL, - `archived` tinyint(1) DEFAULT NULL, - `path` varchar(512) DEFAULT NULL -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `focalboard_notification_hints` ( - `block_type` varchar(10) DEFAULT NULL, - `block_id` varchar(36) NOT NULL, - `workspace_id` varchar(36) DEFAULT NULL, - `modified_by_id` varchar(36) DEFAULT NULL, - `create_at` bigint(20) DEFAULT NULL, - `notify_at` bigint(20) DEFAULT NULL, - PRIMARY KEY (`block_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `focalboard_preferences` ( - `userid` varchar(36) NOT NULL, - `category` varchar(32) NOT NULL, - `name` varchar(32) NOT NULL, - `value` text, - PRIMARY KEY (`userid`,`category`,`name`), - KEY `idx_preferences_category` (`category`), - KEY `idx_preferences_name` (`name`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `focalboard_schema_migrations` ( - `Version` bigint(20) NOT NULL, - `Name` varchar(64) NOT NULL, - PRIMARY KEY (`Version`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `focalboard_sessions` ( - `id` varchar(100) NOT NULL, - `token` varchar(100) DEFAULT NULL, - `user_id` varchar(100) DEFAULT NULL, - `props` text, - `create_at` bigint(20) DEFAULT NULL, - `update_at` bigint(20) DEFAULT NULL, - `auth_service` varchar(20) DEFAULT NULL, - PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `focalboard_sharing` ( - `id` varchar(36) NOT NULL, - `enabled` tinyint(1) DEFAULT NULL, - `token` varchar(100) DEFAULT NULL, - `modified_by` varchar(36) DEFAULT NULL, - `update_at` bigint(20) DEFAULT NULL, - `workspace_id` varchar(36) DEFAULT NULL, - PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `focalboard_subscriptions` ( - `block_type` varchar(10) DEFAULT NULL, - `block_id` varchar(36) NOT NULL, - `workspace_id` varchar(36) DEFAULT NULL, - `subscriber_type` varchar(10) DEFAULT NULL, - `subscriber_id` varchar(36) NOT NULL, - `notified_at` bigint(20) DEFAULT NULL, - `create_at` bigint(20) DEFAULT NULL, - `delete_at` bigint(20) DEFAULT NULL, - PRIMARY KEY (`block_id`,`subscriber_id`), - KEY `idx_subscriptions_subscriber_id` (`subscriber_id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `focalboard_system_settings` ( - `id` varchar(100) NOT NULL, - `value` text, - PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `focalboard_teams` ( - `id` varchar(36) NOT NULL, - `signup_token` varchar(100) NOT NULL, - `settings` text, - `modified_by` varchar(36) DEFAULT NULL, - `update_at` bigint(20) DEFAULT NULL, - PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `focalboard_users` ( - `id` varchar(100) NOT NULL, - `username` varchar(100) DEFAULT NULL, - `email` varchar(255) DEFAULT NULL, - `password` varchar(100) DEFAULT NULL, - `mfa_secret` varchar(100) DEFAULT NULL, - `auth_service` varchar(20) DEFAULT NULL, - `auth_data` varchar(255) DEFAULT NULL, - `props` text, - `create_at` bigint(20) DEFAULT NULL, - `update_at` bigint(20) DEFAULT NULL, - `delete_at` bigint(20) DEFAULT NULL, - PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; -/*!40101 SET @saved_cs_client = @@character_set_client */; -/*!40101 SET character_set_client = utf8 */; -CREATE TABLE `focalboard_workspaces` ( - `id` varchar(36) NOT NULL, - `signup_token` varchar(100) NOT NULL, - `settings` text, - `modified_by` varchar(36) DEFAULT NULL, - `update_at` bigint(20) DEFAULT NULL, - PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; -/*!40101 SET character_set_client = @saved_cs_client */; - -CREATE DATABASE /*!32312 IF NOT EXISTS*/ `mattermost_test` /*!40100 DEFAULT CHARACTER SET latin1 */; - -USE `mattermost_test`; -INSERT INTO `Bots` VALUES ('6g9zjk1d7brz8rqiypd9kypn5c','Feedbackbot collects user feedback to improve Mattermost. [Learn more](https://mattermost.com/pl/default-nps).','com.mattermost.nps',1684139058981,1684139058981,0,0); -INSERT INTO `Bots` VALUES ('d6eb3jh8iprzpxim14w9hkopbr','Created by Boards plugin.','focalboard',1684139114835,1684139114835,0,0); -INSERT INTO `Bots` VALUES ('dk8nggnjtt8yipcbmuqem4rfkc','','jactwicuqb8bu8pau8mgjydzeo',1684139700012,1684139700012,0,0); -INSERT INTO `Bots` VALUES ('k8crtspa5bfadc6iu6m93p4orh','Nautobot Test Bot','jactwicuqb8bu8pau8mgjydzeo',1684146025510,1684146025510,0,0); -INSERT INTO `Bots` VALUES ('o113xcgte78kpezuouwcr6abpo','Calls Bot','com.mattermost.calls',1684139059888,1684139059888,0,0); -INSERT INTO `Bots` VALUES ('ozpddc4xxi85tmrwaqsjmgw1kc','Playbooks bot.','playbooks',1684139059822,1684139059822,0,0); -INSERT INTO `Bots` VALUES ('qmaiqbz1e3fo8qz1nsmkhqbznh','Mattermost Apps Registry and API proxy.','com.mattermost.apps',1684139059460,1684139059460,0,0); -INSERT INTO `ChannelMembers` VALUES ('8sz36rga1in69gaunpogq95r1w','jactwicuqb8bu8pau8mgjydzeo','',1684153509947,2,0,'{\"push\": \"default\", \"email\": \"default\", \"desktop\": \"default\", \"mark_unread\": \"all\", \"ignore_channel_mentions\": \"default\"}',1684153509947,1,1,0,0,2,0); -INSERT INTO `ChannelMembers` VALUES ('8sz36rga1in69gaunpogq95r1w','k8crtspa5bfadc6iu6m93p4orh','',0,0,0,'{\"push\": \"default\", \"email\": \"default\", \"desktop\": \"default\", \"mark_unread\": \"all\", \"ignore_channel_mentions\": \"default\"}',1684146863323,1,0,0,0,0,0); -INSERT INTO `ChannelMembers` VALUES ('9g8qo5udpp8dzdud8jex1m6kuh','jactwicuqb8bu8pau8mgjydzeo','',1684146025577,1,0,'{\"push\": \"default\", \"email\": \"default\", \"desktop\": \"default\", \"mark_unread\": \"all\", \"ignore_channel_mentions\": \"default\"}',1684146025577,1,0,0,0,1,0); -INSERT INTO `ChannelMembers` VALUES ('9g8qo5udpp8dzdud8jex1m6kuh','k8crtspa5bfadc6iu6m93p4orh','',0,0,0,'{\"push\": \"default\", \"email\": \"default\", \"desktop\": \"default\", \"mark_unread\": \"all\", \"ignore_channel_mentions\": \"default\"}',1684146025519,1,0,0,0,0,0); -INSERT INTO `ChannelMembers` VALUES ('fi1muawz1bybue4gwu95kni4eh','jactwicuqb8bu8pau8mgjydzeo','',1684139716016,0,0,'{\"push\": \"default\", \"email\": \"default\", \"desktop\": \"default\", \"mark_unread\": \"all\", \"ignore_channel_mentions\": \"default\"}',1684139716016,1,1,0,0,0,0); -INSERT INTO `ChannelMembers` VALUES ('fi1muawz1bybue4gwu95kni4eh','k8crtspa5bfadc6iu6m93p4orh','',0,0,1,'{\"push\": \"default\", \"email\": \"default\", \"desktop\": \"default\", \"mark_unread\": \"all\", \"ignore_channel_mentions\": \"default\"}',1684146863438,1,0,0,1,0,0); -INSERT INTO `Channels` VALUES ('8sz36rga1in69gaunpogq95r1w',1684139715853,1684139715853,0,'35odngbgr7yw3bf13o8kg85ngh','O','Town Square','town-square','','',1684153509947,2,0,'',NULL,NULL,NULL,2,1684153509947); -INSERT INTO `Channels` VALUES ('9g8qo5udpp8dzdud8jex1m6kuh',1684146025517,1684146025517,0,'','D','','jactwicuqb8bu8pau8mgjydzeo__k8crtspa5bfadc6iu6m93p4orh','','',1684146025577,1,0,'k8crtspa5bfadc6iu6m93p4orh',NULL,NULL,0,1,1684146025577); -INSERT INTO `Channels` VALUES ('fi1muawz1bybue4gwu95kni4eh',1684139715866,1684139715866,0,'35odngbgr7yw3bf13o8kg85ngh','O','Off-Topic','off-topic','','',1684146863411,0,0,'',NULL,NULL,NULL,0,1684146863411); -INSERT INTO `Commands` VALUES ('yhepukctj7r1jgr8kappi7mb7e','tc1u8wbh53fwxxdkhswbmu9wsa',1685617546901,1685618110521,0,'jactwicuqb8bu8pau8mgjydzeo','35odngbgr7yw3bf13o8kg85ngh','aci','P','','',0,'','','Cisco ACI','Cisco ACI Slash Command','http://nautobot:8080/api/plugins/chatops/mattermost/slash_command/',''); -INSERT INTO `Commands` VALUES ('846xisdqmtro9yd3eg8m45co3o','c7udax974iymjkmoyhi1a11cpy',1685089324429,1685089324429,0,'jactwicuqb8bu8pau8mgjydzeo','35odngbgr7yw3bf13o8kg85ngh','ansible','P','','',0,'','','Ansible','Ansible Slash Command','http://nautobot:8080/api/plugins/chatops/mattermost/slash_command/',''); -INSERT INTO `Commands` VALUES ('561dqoomjt8ixqc3td9m53i3mh','p7phuwhpaiddjxqf8c1hnw33yh',1686737880192,1686737880192,0,'jactwicuqb8bu8pau8mgjydzeo','35odngbgr7yw3bf13o8kg85ngh','clear','P','','',0,'','','Clear','Clear Slash Command','http://nautobot:8080/api/plugins/chatops/mattermost/slash_command/',''); -INSERT INTO `Commands` VALUES ('z7bmireh6tgpzgkujc4moaaiqe','pxannsh78iyhbm8fumz8mxk9ih',1685442897799,1685442897799,0,'jactwicuqb8bu8pau8mgjydzeo','35odngbgr7yw3bf13o8kg85ngh','cloudvision','P','','',0,'','','Arista CloudVision','Arista CloudVision Slash Command','http://nautobot:8080/api/plugins/chatops/mattermost/slash_command/',''); -INSERT INTO `Commands` VALUES ('px7ae4ik6idp7pb51hx5ms4x3w','o1yiadnpifbzddt3umcedeypdr',1684405443321,1684405443321,0,'jactwicuqb8bu8pau8mgjydzeo','35odngbgr7yw3bf13o8kg85ngh','grafana','P','','',0,'','','Grafana','Grafana Slash Command','http://nautobot:8080/api/plugins/chatops/mattermost/slash_command/',''); -INSERT INTO `Commands` VALUES ('f74t71u6p7rpbmz7ruebja7ana','uqydyxkx4tykinw5z5u9dany1o',1685099154275,1685099154275,0,'jactwicuqb8bu8pau8mgjydzeo','35odngbgr7yw3bf13o8kg85ngh','ipfabric','P','','',0,'','','IP Fabric','IP Fabric Slash Command','http://nautobot:8080/api/plugins/chatops/mattermost/slash_command/',''); -INSERT INTO `Commands` VALUES ('j5pnszdfcpbt3f6yfs63o5bwhw','t9irqwjni3dozf3yx6tzak7k3w',1685532127072,1685532127072,0,'jactwicuqb8bu8pau8mgjydzeo','35odngbgr7yw3bf13o8kg85ngh','meraki','P','','',0,'','','Cisco Meraki','Cisco Meraki Slash Command','http://nautobot:8080/api/plugins/chatops/mattermost/slash_command/',''); -INSERT INTO `Commands` VALUES ('d9irq7zuwt84pr77crnteso6da','rmdpfdjhnpg988e7ujzyom4euh',1684146546769,1684152166227,0,'jactwicuqb8bu8pau8mgjydzeo','35odngbgr7yw3bf13o8kg85ngh','nautobot','P','','',0,'','','Nautobot','Nautobot Slash Command','http://nautobot:8080/api/plugins/chatops/mattermost/slash_command/',''); -INSERT INTO `Commands` VALUES ('uooffhygyigtfb4454k9yxm81h','6nf5cmz1ft8bdfykz46cs5pofo',1685702889199,1685702889199,0,'jactwicuqb8bu8pau8mgjydzeo','35odngbgr7yw3bf13o8kg85ngh','panorama','P','','',0,'','','Panorama','Panorama Slash Command','http://nautobot:8080/api/plugins/chatops/mattermost/slash_command/',''); -INSERT INTO `Drafts` VALUES (1684146834706,1684335673276,1684335673276,'jactwicuqb8bu8pau8mgjydzeo','8sz36rga1in69gaunpogq95r1w','','/nautobot','{}','[]','null'); -INSERT INTO `IR_System` VALUES ('DatabaseVersion','0.63.0'); -INSERT INTO `IR_UserInfo` VALUES ('jactwicuqb8bu8pau8mgjydzeo',1684387012504,'{\"disable_daily_digest\": false, \"disable_weekly_digest\": false}'); -INSERT INTO `Jobs` VALUES ('kwwq4cbzu3nmxdewywnouh48xo','migrations',0,1684139119925,1684139134240,1684139136273,'success',0,'{\"last_done\": \"{\\\"current_table\\\":\\\"ChannelMembers\\\",\\\"last_team_id\\\":\\\"00000000000000000000000000\\\",\\\"last_channel_id\\\":\\\"00000000000000000000000000\\\",\\\"last_user\\\":\\\"00000000000000000000000000\\\"}\", \"migration_key\": \"migration_advanced_permissions_phase_2\"}'); -INSERT INTO `PluginKeyValueStore` VALUES ('com.mattermost.apps','mmi_botid',_binary 'qmaiqbz1e3fo8qz1nsmkhqbznh',0); -INSERT INTO `PluginKeyValueStore` VALUES ('com.mattermost.calls','mmi_botid',_binary 'o113xcgte78kpezuouwcr6abpo',0); -INSERT INTO `PluginKeyValueStore` VALUES ('com.mattermost.nps','ServerUpgrade-7.10.0',_binary '{\"server_version\":\"7.10.0\",\"upgrade_at\":\"2023-05-15T08:24:19.013024124Z\"}',0); -INSERT INTO `PluginKeyValueStore` VALUES ('com.mattermost.nps','Survey-7.10.0',_binary '{\"server_version\":\"7.10.0\",\"create_at\":\"2023-05-15T08:24:19.013024124Z\",\"start_at\":\"2023-06-29T08:24:19.013024124Z\"}',0); -INSERT INTO `PluginKeyValueStore` VALUES ('com.mattermost.nps','WelcomeFeedbackMigration',_binary '{\"CreateAt\":\"2023-05-15T08:24:19.013024124Z\"}',0); -INSERT INTO `PluginKeyValueStore` VALUES ('focalboard','mmi_botid',_binary 'd6eb3jh8iprzpxim14w9hkopbr',0); -INSERT INTO `PluginKeyValueStore` VALUES ('playbooks','mmi_botid',_binary 'ozpddc4xxi85tmrwaqsjmgw1kc',0); -INSERT INTO `Preferences` VALUES ('jactwicuqb8bu8pau8mgjydzeo','channel_approximate_view_time','','1684386592335'); -INSERT INTO `Preferences` VALUES ('jactwicuqb8bu8pau8mgjydzeo','channel_open_time','9g8qo5udpp8dzdud8jex1m6kuh','1684335914329'); -INSERT INTO `Preferences` VALUES ('jactwicuqb8bu8pau8mgjydzeo','direct_channel_show','k8crtspa5bfadc6iu6m93p4orh','true'); -INSERT INTO `Preferences` VALUES ('jactwicuqb8bu8pau8mgjydzeo','drafts','drafts_tour_tip_showed','{\"drafts_tour_tip_showed\":true}'); -INSERT INTO `Preferences` VALUES ('jactwicuqb8bu8pau8mgjydzeo','insights','insights_tutorial_state','{\"insights_modal_viewed\":true}'); -INSERT INTO `Preferences` VALUES ('jactwicuqb8bu8pau8mgjydzeo','onboarding_task_list','onboarding_task_list_open','false'); -INSERT INTO `Preferences` VALUES ('jactwicuqb8bu8pau8mgjydzeo','onboarding_task_list','onboarding_task_list_show','false'); -INSERT INTO `Preferences` VALUES ('jactwicuqb8bu8pau8mgjydzeo','recommended_next_steps','hide','true'); -INSERT INTO `Preferences` VALUES ('jactwicuqb8bu8pau8mgjydzeo','touched','invite_members','true'); -INSERT INTO `Preferences` VALUES ('jactwicuqb8bu8pau8mgjydzeo','tutorial_step','jactwicuqb8bu8pau8mgjydzeo','0'); -INSERT INTO `ProductNoticeViewState` VALUES ('jactwicuqb8bu8pau8mgjydzeo','crt-admin-default_off',1,1684139698); -INSERT INTO `ProductNoticeViewState` VALUES ('jactwicuqb8bu8pau8mgjydzeo','crt-admin-disabled',1,1684139698); -INSERT INTO `ProductNoticeViewState` VALUES ('jactwicuqb8bu8pau8mgjydzeo','crt-user-always-on',1,1684139698); -INSERT INTO `ProductNoticeViewState` VALUES ('jactwicuqb8bu8pau8mgjydzeo','crt-user-default-on',1,1684139698); -INSERT INTO `ProductNoticeViewState` VALUES ('jactwicuqb8bu8pau8mgjydzeo','desktop_upgrade_v5.2',1,1684139698); -INSERT INTO `ProductNoticeViewState` VALUES ('jactwicuqb8bu8pau8mgjydzeo','server_upgrade_v7.9',1,1684139698); -INSERT INTO `ProductNoticeViewState` VALUES ('jactwicuqb8bu8pau8mgjydzeo','unsupported-server-v5.37',1,1684139698); -INSERT INTO `PublicChannels` VALUES ('8sz36rga1in69gaunpogq95r1w',0,'35odngbgr7yw3bf13o8kg85ngh','Town Square','town-square','',''); -INSERT INTO `PublicChannels` VALUES ('fi1muawz1bybue4gwu95kni4eh',0,'35odngbgr7yw3bf13o8kg85ngh','Off-Topic','off-topic','',''); -INSERT INTO `Roles` VALUES ('13bs7grka7f45g6eskmqbuypbw','team_user','authentication.roles.team_user.name','authentication.roles.team_user.description',1684139050819,1684139055707,0,' playbook_public_create list_team_channels join_public_channels playbook_private_create create_private_channel add_user_to_team read_public_channel view_team create_public_channel invite_user',1,1); -INSERT INTO `Roles` VALUES ('1assaqn3tt899xeda1aiop8bky','run_admin','authentication.roles.run_admin.name','authentication.roles.run_admin.description',1684139050763,1684139055713,0,' run_manage_properties run_manage_members',1,1); -INSERT INTO `Roles` VALUES ('7eh3dpufq7g4zfza5ku6zacgdo','run_member','authentication.roles.run_member.name','authentication.roles.run_member.description',1684139050908,1684139055719,0,' run_view',1,1); -INSERT INTO `Roles` VALUES ('99faipwtbf8sbes7ipkdfz348e','system_post_all_public','authentication.roles.system_post_all_public.name','authentication.roles.system_post_all_public.description',1684139050876,1684139055725,0,' use_channel_mentions create_post_public use_group_mentions',0,1); -INSERT INTO `Roles` VALUES ('9wqa3318s3fw781rjkpjwbchaw','team_guest','authentication.roles.team_guest.name','authentication.roles.team_guest.description',1684139050859,1684139055732,0,' view_team',1,1); -INSERT INTO `Roles` VALUES ('a8fy4zx49trbbfi45wexsqmxdy','system_user','authentication.roles.global_user.name','authentication.roles.global_user.description',1684139050913,1684139055739,0,' delete_custom_group delete_emojis view_members create_team edit_custom_group create_group_channel manage_custom_group_members create_direct_channel restore_custom_group list_public_teams create_custom_group join_public_teams create_emojis',1,1); -INSERT INTO `Roles` VALUES ('bb9guastc3f99bqd91szo7dkch','team_post_all','authentication.roles.team_post_all.name','authentication.roles.team_post_all.description',1684139050903,1684139055745,0,' create_post use_channel_mentions use_group_mentions',0,1); -INSERT INTO `Roles` VALUES ('djorm5qfbpdimcdg8b8wdku5na','system_user_manager','authentication.roles.system_user_manager.name','authentication.roles.system_user_manager.description',1684139050798,1684139055752,0,' sysconsole_read_authentication_saml read_ldap_sync_job delete_public_channel sysconsole_read_authentication_ldap test_ldap sysconsole_write_user_management_teams convert_public_channel_to_private join_public_teams add_user_to_team sysconsole_read_user_management_groups manage_public_channel_members sysconsole_write_user_management_channels read_channel view_team manage_channel_roles sysconsole_read_user_management_permissions manage_team_roles read_private_channel_groups sysconsole_read_authentication_password remove_user_from_team join_private_teams sysconsole_read_user_management_channels sysconsole_read_authentication_email sysconsole_read_authentication_signup sysconsole_read_authentication_mfa sysconsole_read_authentication_openid list_private_teams list_public_teams sysconsole_write_user_management_groups delete_private_channel manage_public_channel_properties manage_team read_public_channel convert_private_channel_to_public manage_private_channel_members sysconsole_read_authentication_guest_access sysconsole_read_user_management_teams read_public_channel_groups manage_private_channel_properties',0,1); -INSERT INTO `Roles` VALUES ('jbrz4h5gqt877cuxh57absnc7c','custom_group_user','authentication.roles.custom_group_user.name','authentication.roles.custom_group_user.description',1684139050893,1684139055757,0,'',0,0); -INSERT INTO `Roles` VALUES ('jfuzyuzguiysmcb1fmtfnme6sc','system_admin','authentication.roles.global_admin.name','authentication.roles.global_admin.description',1684139050846,1684139055764,0,' sysconsole_read_experimental_feature_flags run_view import_team delete_emojis playbook_public_manage_members manage_team sysconsole_read_site_posts list_users_without_team get_saml_cert_status sysconsole_write_experimental_features sysconsole_read_user_management_users run_manage_members join_public_channels restore_custom_group remove_others_reactions create_compliance_export_job sysconsole_read_environment_performance_monitoring sysconsole_write_integrations_cors test_elasticsearch remove_reaction read_public_channel manage_roles sysconsole_write_environment_push_notification_server create_custom_group sysconsole_write_environment_database create_ldap_sync_job sysconsole_write_integrations_integration_management sysconsole_write_site_notices create_post_public use_group_mentions sysconsole_write_compliance_custom_terms_of_service create_post_ephemeral sysconsole_read_products_boards sysconsole_write_integrations_gif sysconsole_write_environment_performance_monitoring manage_license_information get_logs read_data_retention_job add_saml_idp_cert sysconsole_write_authentication_signup manage_slash_commands download_compliance_export_result invalidate_email_invite add_saml_public_cert read_other_users_teams use_channel_mentions sysconsole_read_environment_logging sysconsole_read_compliance_compliance_monitoring manage_system assign_bot invalidate_caches manage_bots invite_guest sysconsole_read_compliance_data_retention_policy view_members purge_bleve_indexes sysconsole_read_site_announcement_banner sysconsole_read_user_management_channels create_group_channel sysconsole_read_site_notifications sysconsole_write_authentication_password create_elasticsearch_post_indexing_job playbook_private_make_public sysconsole_read_environment_developer manage_shared_channels sysconsole_read_reporting_server_logs sysconsole_read_compliance_compliance_export manage_others_slash_commands create_direct_channel demote_to_guest read_others_bots manage_team_roles sysconsole_write_about_edition_and_license run_create sysconsole_write_user_management_channels sysconsole_read_plugins delete_public_channel sysconsole_read_reporting_team_statistics playbook_public_make_private add_ldap_public_cert create_team sysconsole_read_authentication_openid create_post edit_brand manage_others_bots delete_others_posts use_slash_commands read_audits edit_post remove_saml_private_cert sysconsole_write_compliance_compliance_monitoring reload_config sysconsole_write_plugins sysconsole_read_user_management_groups playbook_private_view test_email playbook_private_create add_saml_private_cert sysconsole_read_site_users_and_teams manage_private_channel_members remove_ldap_public_cert create_post_bleve_indexes_job manage_public_channel_members promote_guest delete_post playbook_private_manage_properties sysconsole_write_experimental_feature_flags test_site_url manage_others_incoming_webhooks read_private_channel_groups sysconsole_read_site_public_links sysconsole_write_products_boards sysconsole_read_integrations_integration_management playbook_private_manage_roles edit_other_users sysconsole_write_compliance_compliance_export sysconsole_read_authentication_email sysconsole_write_site_public_links sysconsole_write_environment_session_lengths sysconsole_write_site_emoji remove_saml_idp_cert edit_others_posts sysconsole_read_site_notices create_private_channel sysconsole_write_environment_image_proxy list_public_teams sysconsole_read_authentication_password join_public_teams read_jobs sysconsole_write_authentication_email manage_private_channel_properties read_license_information sysconsole_read_authentication_ldap create_data_retention_job manage_oauth assign_system_admin_role remove_saml_public_cert sysconsole_write_environment_elasticsearch list_team_channels list_private_teams sysconsole_read_environment_web_server test_ldap convert_private_channel_to_public create_user_access_token sysconsole_write_user_management_groups read_user_access_token create_bot sysconsole_write_integrations_bot_accounts create_emojis sysconsole_write_reporting_server_logs manage_others_outgoing_webhooks sysconsole_read_user_management_permissions manage_secure_connections sysconsole_write_reporting_team_statistics manage_system_wide_oauth read_channel playbook_public_create playbook_public_manage_roles revoke_user_access_token get_analytics get_public_link sysconsole_write_authentication_mfa sysconsole_write_user_management_permissions read_elasticsearch_post_indexing_job delete_private_channel sysconsole_read_authentication_saml add_reaction sysconsole_write_site_notifications sysconsole_write_site_announcement_banner sysconsole_write_experimental_bleve view_team invite_user sysconsole_read_environment_push_notification_server manage_public_channel_properties sysconsole_read_reporting_site_statistics remove_user_from_team sysconsole_write_authentication_openid playbook_private_manage_members sysconsole_write_environment_rate_limiting sysconsole_write_site_customization sysconsole_read_integrations_cors sysconsole_write_environment_web_server delete_custom_group purge_elasticsearch_indexes add_user_to_team edit_custom_group sysconsole_write_environment_smtp read_public_channel_groups sysconsole_write_environment_logging sysconsole_read_site_emoji sysconsole_read_environment_file_storage sysconsole_write_user_management_users manage_custom_group_members sysconsole_read_about_edition_and_license sysconsole_read_site_file_sharing_and_downloads sysconsole_read_site_localization sysconsole_read_integrations_gif sysconsole_read_environment_elasticsearch sysconsole_write_site_localization sysconsole_read_site_customization remove_ldap_private_cert playbook_public_view read_compliance_export_job sysconsole_write_billing sysconsole_write_user_management_teams join_private_teams sysconsole_write_site_users_and_teams sysconsole_write_site_file_sharing_and_downloads get_saml_metadata_from_idp read_elasticsearch_post_aggregation_job delete_others_emojis run_manage_properties sysconsole_read_environment_high_availability sysconsole_read_environment_rate_limiting create_public_channel sysconsole_read_environment_smtp manage_outgoing_webhooks sysconsole_write_environment_file_storage sysconsole_read_integrations_bot_accounts sysconsole_write_user_management_system_roles manage_jobs sysconsole_read_environment_image_proxy sysconsole_write_authentication_ldap sysconsole_read_environment_session_lengths playbook_public_manage_properties sysconsole_write_reporting_site_statistics upload_file sysconsole_read_environment_database sysconsole_read_experimental_features sysconsole_read_experimental_bleve sysconsole_write_authentication_guest_access read_ldap_sync_job recycle_database_connections sysconsole_read_authentication_mfa sysconsole_read_compliance_custom_terms_of_service manage_incoming_webhooks sysconsole_read_user_management_system_roles create_elasticsearch_post_aggregation_job convert_public_channel_to_private sysconsole_write_authentication_saml sysconsole_read_authentication_signup sysconsole_write_compliance_data_retention_policy read_bots test_s3 sysconsole_write_site_posts add_ldap_private_cert manage_channel_roles sysconsole_read_authentication_guest_access sysconsole_read_billing sysconsole_write_environment_developer sysconsole_read_user_management_teams read_deleted_posts sysconsole_write_environment_high_availability',1,1); -INSERT INTO `Roles` VALUES ('jh5f5efjm38ebdsypjutm1zjzr','system_manager','authentication.roles.system_manager.name','authentication.roles.system_manager.description',1684139050838,1684139055771,0,' sysconsole_write_site_public_links sysconsole_write_integrations_bot_accounts test_elasticsearch sysconsole_write_site_notices sysconsole_write_site_customization sysconsole_read_environment_developer sysconsole_read_authentication_password sysconsole_write_environment_logging sysconsole_write_environment_session_lengths sysconsole_read_products_boards manage_team test_email sysconsole_read_environment_logging sysconsole_write_site_localization get_logs read_ldap_sync_job read_license_information list_public_teams sysconsole_read_environment_rate_limiting sysconsole_write_user_management_groups join_public_teams join_private_teams sysconsole_read_site_emoji manage_team_roles sysconsole_read_user_management_groups sysconsole_write_integrations_gif sysconsole_write_environment_web_server sysconsole_read_site_announcement_banner sysconsole_write_user_management_teams sysconsole_write_site_notifications invalidate_caches sysconsole_write_site_announcement_banner test_site_url sysconsole_read_user_management_teams test_ldap sysconsole_read_site_posts sysconsole_write_site_file_sharing_and_downloads sysconsole_read_authentication_signup view_team recycle_database_connections sysconsole_write_environment_push_notification_server sysconsole_read_environment_session_lengths sysconsole_read_environment_smtp get_analytics sysconsole_read_site_notices sysconsole_read_user_management_permissions sysconsole_read_authentication_email purge_elasticsearch_indexes read_elasticsearch_post_indexing_job sysconsole_write_site_emoji convert_public_channel_to_private manage_private_channel_properties sysconsole_read_reporting_site_statistics read_elasticsearch_post_aggregation_job read_public_channel_groups create_elasticsearch_post_indexing_job sysconsole_write_integrations_cors manage_public_channel_members sysconsole_read_authentication_guest_access create_elasticsearch_post_aggregation_job sysconsole_write_environment_performance_monitoring sysconsole_write_products_boards sysconsole_write_environment_developer sysconsole_read_site_public_links sysconsole_write_user_management_permissions sysconsole_read_environment_push_notification_server sysconsole_write_environment_image_proxy sysconsole_write_site_users_and_teams sysconsole_read_site_file_sharing_and_downloads sysconsole_read_environment_performance_monitoring sysconsole_write_environment_smtp sysconsole_read_environment_elasticsearch delete_private_channel sysconsole_read_plugins sysconsole_read_site_users_and_teams sysconsole_read_environment_file_storage read_private_channel_groups read_public_channel sysconsole_read_site_localization sysconsole_write_environment_high_availability add_user_to_team sysconsole_write_integrations_integration_management sysconsole_read_reporting_team_statistics sysconsole_read_environment_image_proxy manage_private_channel_members sysconsole_read_authentication_mfa sysconsole_write_environment_file_storage reload_config sysconsole_read_authentication_openid sysconsole_write_environment_database sysconsole_read_environment_web_server sysconsole_write_environment_rate_limiting test_s3 remove_user_from_team list_private_teams read_channel sysconsole_read_authentication_saml edit_brand sysconsole_read_integrations_bot_accounts sysconsole_read_site_customization sysconsole_read_environment_database sysconsole_read_integrations_cors sysconsole_read_integrations_integration_management sysconsole_read_reporting_server_logs sysconsole_read_about_edition_and_license sysconsole_read_user_management_channels convert_private_channel_to_public sysconsole_write_site_posts sysconsole_write_environment_elasticsearch sysconsole_read_environment_high_availability sysconsole_read_authentication_ldap manage_public_channel_properties delete_public_channel sysconsole_read_site_notifications sysconsole_read_integrations_gif sysconsole_write_user_management_channels manage_channel_roles',0,1); -INSERT INTO `Roles` VALUES ('jsp8rgiy3tdwi8s3734gqn1t8a','team_admin','authentication.roles.team_admin.name','authentication.roles.team_admin.description',1684139050825,1684139055777,0,' remove_reaction create_post playbook_private_manage_roles read_private_channel_groups manage_team_roles convert_private_channel_to_public import_team read_public_channel_groups delete_others_posts manage_private_channel_members manage_public_channel_members manage_others_slash_commands manage_others_incoming_webhooks manage_incoming_webhooks manage_channel_roles convert_public_channel_to_private add_reaction manage_outgoing_webhooks manage_team use_group_mentions remove_user_from_team manage_others_outgoing_webhooks playbook_public_manage_roles use_channel_mentions manage_slash_commands delete_post',1,1); -INSERT INTO `Roles` VALUES ('jy7kh7nt8pbeuq3y9xnk99ofhy','playbook_admin','authentication.roles.playbook_admin.name','authentication.roles.playbook_admin.description',1684139050831,1684139055783,0,' playbook_private_manage_properties playbook_public_make_private playbook_public_manage_members playbook_public_manage_roles playbook_public_manage_properties playbook_private_manage_members playbook_private_manage_roles',1,1); -INSERT INTO `Roles` VALUES ('kfsh3mwix7gf7nmbz9osxu7w3h','system_user_access_token','authentication.roles.system_user_access_token.name','authentication.roles.system_user_access_token.description',1684139050917,1684139055789,0,' read_user_access_token revoke_user_access_token create_user_access_token',0,1); -INSERT INTO `Roles` VALUES ('mg3ei79rwjbb9cisojazuetrer','channel_admin','authentication.roles.channel_admin.name','authentication.roles.channel_admin.description',1684139050812,1684139055795,0,' remove_reaction read_public_channel_groups add_reaction use_channel_mentions use_group_mentions manage_private_channel_members manage_public_channel_members manage_channel_roles read_private_channel_groups create_post',1,1); -INSERT INTO `Roles` VALUES ('nnt36qb6ebgx9jp4jjstmm4x8c','channel_guest','authentication.roles.channel_guest.name','authentication.roles.channel_guest.description',1684139050898,1684139055801,0,' use_slash_commands read_channel add_reaction remove_reaction upload_file edit_post create_post use_channel_mentions',1,1); -INSERT INTO `Roles` VALUES ('u61ohe941brj9rbwji51s4umpy','team_post_all_public','authentication.roles.team_post_all_public.name','authentication.roles.team_post_all_public.description',1684139050865,1684139055808,0,' create_post_public use_channel_mentions use_group_mentions',0,1); -INSERT INTO `Roles` VALUES ('u74k94nxqtri7q4mrkanrwj4ky','system_custom_group_admin','authentication.roles.system_custom_group_admin.name','authentication.roles.system_custom_group_admin.description',1684139050805,1684139055815,0,' edit_custom_group delete_custom_group restore_custom_group manage_custom_group_members create_custom_group',0,1); -INSERT INTO `Roles` VALUES ('u9kkc9q3hfnbzn7cqh1ekqxxzr','system_post_all','authentication.roles.system_post_all.name','authentication.roles.system_post_all.description',1684139050791,1684139055821,0,' use_channel_mentions use_group_mentions create_post',0,1); -INSERT INTO `Roles` VALUES ('w393gw6mfi8djnr1iak81zsz9e','channel_user','authentication.roles.channel_user.name','authentication.roles.channel_user.description',1684139050853,1684139055827,0,' manage_public_channel_properties remove_reaction use_channel_mentions delete_post manage_public_channel_members read_private_channel_groups delete_private_channel add_reaction use_slash_commands upload_file use_group_mentions read_public_channel_groups get_public_link manage_private_channel_members read_channel manage_private_channel_properties create_post edit_post delete_public_channel',1,1); -INSERT INTO `Roles` VALUES ('ww84ayxwipyg9eyrcz3ikffy9e','system_read_only_admin','authentication.roles.system_read_only_admin.name','authentication.roles.system_read_only_admin.description',1684139050889,1684139055833,0,' sysconsole_read_integrations_gif sysconsole_read_site_users_and_teams read_elasticsearch_post_aggregation_job list_private_teams sysconsole_read_user_management_channels read_channel get_logs sysconsole_read_reporting_site_statistics sysconsole_read_products_boards sysconsole_read_about_edition_and_license sysconsole_read_experimental_feature_flags sysconsole_read_site_customization read_other_users_teams read_license_information sysconsole_read_authentication_password read_audits sysconsole_read_integrations_bot_accounts view_team sysconsole_read_environment_smtp sysconsole_read_site_localization sysconsole_read_experimental_features sysconsole_read_compliance_compliance_export sysconsole_read_authentication_saml test_ldap read_private_channel_groups sysconsole_read_authentication_signup download_compliance_export_result sysconsole_read_compliance_compliance_monitoring sysconsole_read_reporting_server_logs sysconsole_read_authentication_mfa sysconsole_read_integrations_integration_management sysconsole_read_environment_database sysconsole_read_site_file_sharing_and_downloads sysconsole_read_environment_elasticsearch sysconsole_read_user_management_permissions sysconsole_read_site_announcement_banner sysconsole_read_site_posts sysconsole_read_reporting_team_statistics sysconsole_read_authentication_openid sysconsole_read_user_management_teams sysconsole_read_plugins list_public_teams sysconsole_read_experimental_bleve sysconsole_read_integrations_cors sysconsole_read_environment_push_notification_server sysconsole_read_site_notices read_data_retention_job read_public_channel sysconsole_read_compliance_custom_terms_of_service sysconsole_read_authentication_guest_access sysconsole_read_environment_session_lengths sysconsole_read_environment_performance_monitoring sysconsole_read_environment_file_storage sysconsole_read_environment_high_availability sysconsole_read_compliance_data_retention_policy sysconsole_read_site_public_links sysconsole_read_authentication_email sysconsole_read_environment_image_proxy read_ldap_sync_job sysconsole_read_site_notifications read_elasticsearch_post_indexing_job get_analytics sysconsole_read_user_management_users sysconsole_read_environment_web_server sysconsole_read_environment_logging sysconsole_read_site_emoji sysconsole_read_user_management_groups sysconsole_read_environment_developer sysconsole_read_environment_rate_limiting sysconsole_read_authentication_ldap read_public_channel_groups read_compliance_export_job',0,1); -INSERT INTO `Roles` VALUES ('wxi1n6jnp7yt9xxezd6xtg43nh','system_guest','authentication.roles.global_guest.name','authentication.roles.global_guest.description',1684139050871,1684139055839,0,' create_group_channel create_direct_channel',1,1); -INSERT INTO `Roles` VALUES ('zdz95ncqn38ijggoho6h3e4ghr','playbook_member','authentication.roles.playbook_member.name','authentication.roles.playbook_member.description',1684139050738,1684139055845,0,' playbook_private_view playbook_private_manage_members playbook_private_manage_properties run_create playbook_public_view playbook_public_manage_members playbook_public_manage_properties',1,1); -INSERT INTO `SidebarCategories` VALUES ('channels_jactwicuqb8bu8pau8mgjydzeo_35odngbgr7yw3bf13o8kg85ngh','jactwicuqb8bu8pau8mgjydzeo','35odngbgr7yw3bf13o8kg85ngh',10,'','channels','Channels',0,0); -INSERT INTO `SidebarCategories` VALUES ('channels_k8crtspa5bfadc6iu6m93p4orh_35odngbgr7yw3bf13o8kg85ngh','k8crtspa5bfadc6iu6m93p4orh','35odngbgr7yw3bf13o8kg85ngh',10,'','channels','Channels',0,0); -INSERT INTO `SidebarCategories` VALUES ('direct_messages_jactwicuqb8bu8pau8mgjydzeo_35odngbgr7yw3bf13o8kg85ngh','jactwicuqb8bu8pau8mgjydzeo','35odngbgr7yw3bf13o8kg85ngh',20,'recent','direct_messages','Direct Messages',0,0); -INSERT INTO `SidebarCategories` VALUES ('direct_messages_k8crtspa5bfadc6iu6m93p4orh_35odngbgr7yw3bf13o8kg85ngh','k8crtspa5bfadc6iu6m93p4orh','35odngbgr7yw3bf13o8kg85ngh',20,'recent','direct_messages','Direct Messages',0,0); -INSERT INTO `SidebarCategories` VALUES ('favorites_jactwicuqb8bu8pau8mgjydzeo_35odngbgr7yw3bf13o8kg85ngh','jactwicuqb8bu8pau8mgjydzeo','35odngbgr7yw3bf13o8kg85ngh',0,'','favorites','Favorites',0,0); -INSERT INTO `SidebarCategories` VALUES ('favorites_k8crtspa5bfadc6iu6m93p4orh_35odngbgr7yw3bf13o8kg85ngh','k8crtspa5bfadc6iu6m93p4orh','35odngbgr7yw3bf13o8kg85ngh',0,'','favorites','Favorites',0,0); -INSERT INTO `Status` VALUES ('jactwicuqb8bu8pau8mgjydzeo','away',0,1684387416906,0,''); -INSERT INTO `Status` VALUES ('k8crtspa5bfadc6iu6m93p4orh','offline',0,1684153509983,0,''); -INSERT INTO `Systems` VALUES ('about_subsection_permissions','true'); -INSERT INTO `Systems` VALUES ('add_billing_permissions','true'); -INSERT INTO `Systems` VALUES ('add_bot_permissions','true'); -INSERT INTO `Systems` VALUES ('add_convert_channel_permissions','true'); -INSERT INTO `Systems` VALUES ('add_manage_guests_permissions','true'); -INSERT INTO `Systems` VALUES ('add_system_console_permissions','true'); -INSERT INTO `Systems` VALUES ('add_system_roles_permissions','true'); -INSERT INTO `Systems` VALUES ('add_use_group_mentions_permission','true'); -INSERT INTO `Systems` VALUES ('AdvancedPermissionsMigrationComplete','true'); -INSERT INTO `Systems` VALUES ('apply_channel_manage_delete_to_channel_user','true'); -INSERT INTO `Systems` VALUES ('AsymmetricSigningKey','{\"ecdsa_key\":{\"curve\":\"P-256\",\"x\":39885688012791743430902392044132023131306318630717482885626462746284368676562,\"y\":56732587617706431314588083882840694296577699304576161589544790090711522351963,\"d\":61158628144358852948138055426802208098608450055237759428816151150343005223320}}'); -INSERT INTO `Systems` VALUES ('authentication_subsection_permissions','true'); -INSERT INTO `Systems` VALUES ('channel_moderations_permissions','true'); -INSERT INTO `Systems` VALUES ('compliance_subsection_permissions','true'); -INSERT INTO `Systems` VALUES ('ContentExtractionConfigDefaultTrueMigrationComplete','true'); -INSERT INTO `Systems` VALUES ('CRTChannelMembershipCountsMigrationComplete','true'); -INSERT INTO `Systems` VALUES ('CRTThreadCountsAndUnreadsMigrationComplete','true'); -INSERT INTO `Systems` VALUES ('CustomGroupAdminRoleCreationMigrationComplete','true'); -INSERT INTO `Systems` VALUES ('custom_groups_permissions','true'); -INSERT INTO `Systems` VALUES ('custom_groups_permission_restore','true'); -INSERT INTO `Systems` VALUES ('DiagnosticId','6nz6d7fp5tdcbrfui1xnubzr8o'); -INSERT INTO `Systems` VALUES ('download_compliance_export_results','true'); -INSERT INTO `Systems` VALUES ('EmojisPermissionsMigrationComplete','true'); -INSERT INTO `Systems` VALUES ('emoji_permissions_split','true'); -INSERT INTO `Systems` VALUES ('environment_subsection_permissions','true'); -INSERT INTO `Systems` VALUES ('experimental_subsection_permissions','true'); -INSERT INTO `Systems` VALUES ('FirstServerRunTimestamp','1684139050764'); -INSERT INTO `Systems` VALUES ('GuestRolesCreationMigrationComplete','true'); -INSERT INTO `Systems` VALUES ('InstallationDate','1684139058969'); -INSERT INTO `Systems` VALUES ('integrations_subsection_permissions','true'); -INSERT INTO `Systems` VALUES ('LastSecurityTime','1684386571805'); -INSERT INTO `Systems` VALUES ('list_join_public_private_teams','true'); -INSERT INTO `Systems` VALUES ('manage_secure_connections_permissions','true'); -INSERT INTO `Systems` VALUES ('manage_shared_channel_permissions','true'); -INSERT INTO `Systems` VALUES ('migration_advanced_permissions_phase_2','true'); -INSERT INTO `Systems` VALUES ('PlaybookRolesCreationMigrationComplete','true'); -INSERT INTO `Systems` VALUES ('playbooks_manage_roles','true'); -INSERT INTO `Systems` VALUES ('playbooks_permissions','true'); -INSERT INTO `Systems` VALUES ('PostActionCookieSecret','{\"key\":\"YotujW0OeUnuIjCwfomw+BuaoB63KtxoBb6NLLrlzIA=\"}'); -INSERT INTO `Systems` VALUES ('PostPriorityConfigDefaultTrueMigrationComplete','true'); -INSERT INTO `Systems` VALUES ('products_boards','true'); -INSERT INTO `Systems` VALUES ('RemainingSchemaMigrations','true'); -INSERT INTO `Systems` VALUES ('remove_channel_manage_delete_from_team_user','true'); -INSERT INTO `Systems` VALUES ('remove_permanent_delete_user','true'); -INSERT INTO `Systems` VALUES ('reporting_subsection_permissions','true'); -INSERT INTO `Systems` VALUES ('site_subsection_permissions','true'); -INSERT INTO `Systems` VALUES ('SystemConsoleRolesCreationMigrationComplete','true'); -INSERT INTO `Systems` VALUES ('test_email_ancillary_permission','true'); -INSERT INTO `Systems` VALUES ('view_members_new_permission','true'); -INSERT INTO `Systems` VALUES ('webhook_permissions_split','true'); -INSERT INTO `TeamMembers` VALUES ('35odngbgr7yw3bf13o8kg85ngh','jactwicuqb8bu8pau8mgjydzeo','',0,1,1,0,1684139715876); -INSERT INTO `TeamMembers` VALUES ('35odngbgr7yw3bf13o8kg85ngh','k8crtspa5bfadc6iu6m93p4orh','',0,1,0,0,1684146863252); -INSERT INTO `Teams` VALUES ('35odngbgr7yw3bf13o8kg85ngh',1684139715847,1684139715847,0,'nautobot-test-team','nautobot-test-team','','admin@example.com','O','','','p6beof3e5fyxzgboo3ana6ra6c',NULL,0,0,NULL,0); -INSERT INTO `UserAccessTokens` VALUES ('pjz3u1ru3jfkt8ib5fz4sraybw','5qsffxoapt883qfdygbdgf17jy','k8crtspa5bfadc6iu6m93p4orh','nautobot',1); -INSERT INTO `Users` VALUES ('6g9zjk1d7brz8rqiypd9kypn5c',1684139058969,1684139059003,0,'feedbackbot','',NULL,'','feedbackbot@localhost',0,'','Feedbackbot','','system_user',0,'{}','{\"push\": \"mention\", \"email\": \"true\", \"channel\": \"true\", \"desktop\": \"mention\", \"comments\": \"never\", \"first_name\": \"false\", \"push_status\": \"away\", \"mention_keys\": \"\", \"push_threads\": \"all\", \"desktop_sound\": \"true\", \"email_threads\": \"all\", \"desktop_threads\": \"all\"}',1684139058969,1684139059003,0,'en',0,'','','{\"manualTimezone\": \"\", \"automaticTimezone\": \"\", \"useAutomaticTimezone\": \"true\"}',NULL); -INSERT INTO `Users` VALUES ('d6eb3jh8iprzpxim14w9hkopbr',1684139114820,1684139114820,0,'boards','',NULL,'','boards@localhost',0,'','Boards','','system_user',0,'{}','{\"push\": \"mention\", \"email\": \"true\", \"channel\": \"true\", \"desktop\": \"mention\", \"comments\": \"never\", \"first_name\": \"false\", \"push_status\": \"away\", \"mention_keys\": \"\", \"push_threads\": \"all\", \"desktop_sound\": \"true\", \"email_threads\": \"all\", \"desktop_threads\": \"all\"}',1684139114820,0,0,'en',0,'','','{\"manualTimezone\": \"\", \"automaticTimezone\": \"\", \"useAutomaticTimezone\": \"true\"}',NULL); -INSERT INTO `Users` VALUES ('dk8nggnjtt8yipcbmuqem4rfkc',1684139700005,1684139700005,0,'system-bot','',NULL,'','system-bot@localhost',0,'','System','','system_user',0,'{}','{\"push\": \"mention\", \"email\": \"true\", \"channel\": \"true\", \"desktop\": \"mention\", \"comments\": \"never\", \"first_name\": \"false\", \"push_status\": \"away\", \"mention_keys\": \"\", \"push_threads\": \"all\", \"desktop_sound\": \"true\", \"email_threads\": \"all\", \"desktop_threads\": \"all\"}',1684139700005,0,0,'en',0,'','','{\"manualTimezone\": \"\", \"automaticTimezone\": \"\", \"useAutomaticTimezone\": \"true\"}',NULL); -INSERT INTO `Users` VALUES ('jactwicuqb8bu8pau8mgjydzeo',1684139698424,1684251561795,0,'admin','$2a$10$FA7sexy5OipYSWLIYaKTQOHrgRCFSUkxoGRA1X4nXvX3oSL2dEMoG',NULL,'','admin@example.com',0,'','','','system_admin system_user',0,'{}','{\"push\": \"mention\", \"email\": \"true\", \"channel\": \"true\", \"desktop\": \"mention\", \"comments\": \"never\", \"first_name\": \"false\", \"push_status\": \"away\", \"mention_keys\": \"\", \"push_threads\": \"all\", \"desktop_sound\": \"true\", \"email_threads\": \"all\", \"desktop_threads\": \"all\"}',1684251561795,0,0,'en',0,'','','{\"manualTimezone\": \"\", \"automaticTimezone\": \"\", \"useAutomaticTimezone\": \"true\"}',NULL); -INSERT INTO `Users` VALUES ('k8crtspa5bfadc6iu6m93p4orh',1684146025502,1684146863269,0,'nautobot-test-bot','',NULL,'','nautobot-test-bot@localhost',0,'','Nautobot Test Bot','','system_user system_admin',0,'{}','{\"push\": \"mention\", \"email\": \"true\", \"channel\": \"true\", \"desktop\": \"mention\", \"comments\": \"never\", \"first_name\": \"false\", \"push_status\": \"away\", \"mention_keys\": \"\", \"push_threads\": \"all\", \"desktop_sound\": \"true\", \"email_threads\": \"all\", \"desktop_threads\": \"all\"}',1684146025502,0,0,'en',0,'','','{\"manualTimezone\": \"\", \"automaticTimezone\": \"\", \"useAutomaticTimezone\": \"true\"}',NULL); -INSERT INTO `Users` VALUES ('o113xcgte78kpezuouwcr6abpo',1684139059883,1684139059883,0,'calls','',NULL,'','calls@localhost',0,'','Calls','','system_user',0,'{}','{\"push\": \"mention\", \"email\": \"true\", \"channel\": \"true\", \"desktop\": \"mention\", \"comments\": \"never\", \"first_name\": \"false\", \"push_status\": \"away\", \"mention_keys\": \"\", \"push_threads\": \"all\", \"desktop_sound\": \"true\", \"email_threads\": \"all\", \"desktop_threads\": \"all\"}',1684139059883,0,0,'en',0,'','','{\"manualTimezone\": \"\", \"automaticTimezone\": \"\", \"useAutomaticTimezone\": \"true\"}',NULL); -INSERT INTO `Users` VALUES ('ozpddc4xxi85tmrwaqsjmgw1kc',1684139059816,1684387226829,0,'playbooks','',NULL,'','playbooks@localhost',0,'','Playbooks','','system_user',0,'{}','{\"push\": \"mention\", \"email\": \"true\", \"channel\": \"true\", \"desktop\": \"mention\", \"comments\": \"never\", \"first_name\": \"false\", \"push_status\": \"away\", \"mention_keys\": \"\", \"push_threads\": \"all\", \"desktop_sound\": \"true\", \"email_threads\": \"all\", \"desktop_threads\": \"all\"}',1684139059816,1684387226829,0,'en',0,'','','{\"manualTimezone\": \"\", \"automaticTimezone\": \"\", \"useAutomaticTimezone\": \"true\"}',NULL); -INSERT INTO `Users` VALUES ('qmaiqbz1e3fo8qz1nsmkhqbznh',1684139059446,1684387226467,0,'appsbot','',NULL,'','appsbot@localhost',0,'','Mattermost Apps','','system_user',0,'{}','{\"push\": \"mention\", \"email\": \"true\", \"channel\": \"true\", \"desktop\": \"mention\", \"comments\": \"never\", \"first_name\": \"false\", \"push_status\": \"away\", \"mention_keys\": \"\", \"push_threads\": \"all\", \"desktop_sound\": \"true\", \"email_threads\": \"all\", \"desktop_threads\": \"all\"}',1684139059446,1684387226467,0,'en',0,'','','{\"manualTimezone\": \"\", \"automaticTimezone\": \"\", \"useAutomaticTimezone\": \"true\"}',NULL); -INSERT INTO `db_migrations` VALUES (1,'create_teams'); -INSERT INTO `db_migrations` VALUES (2,'create_team_members'); -INSERT INTO `db_migrations` VALUES (3,'create_cluster_discovery'); -INSERT INTO `db_migrations` VALUES (4,'create_command_webhooks'); -INSERT INTO `db_migrations` VALUES (5,'create_compliances'); -INSERT INTO `db_migrations` VALUES (6,'create_emojis'); -INSERT INTO `db_migrations` VALUES (7,'create_user_groups'); -INSERT INTO `db_migrations` VALUES (8,'create_group_members'); -INSERT INTO `db_migrations` VALUES (9,'create_group_teams'); -INSERT INTO `db_migrations` VALUES (10,'create_group_channels'); -INSERT INTO `db_migrations` VALUES (11,'create_link_metadata'); -INSERT INTO `db_migrations` VALUES (12,'create_commands'); -INSERT INTO `db_migrations` VALUES (13,'create_incoming_webhooks'); -INSERT INTO `db_migrations` VALUES (14,'create_outgoing_webhooks'); -INSERT INTO `db_migrations` VALUES (15,'create_systems'); -INSERT INTO `db_migrations` VALUES (16,'create_reactions'); -INSERT INTO `db_migrations` VALUES (17,'create_roles'); -INSERT INTO `db_migrations` VALUES (18,'create_schemes'); -INSERT INTO `db_migrations` VALUES (19,'create_licenses'); -INSERT INTO `db_migrations` VALUES (20,'create_posts'); -INSERT INTO `db_migrations` VALUES (21,'create_product_notice_view_state'); -INSERT INTO `db_migrations` VALUES (22,'create_sessions'); -INSERT INTO `db_migrations` VALUES (23,'create_terms_of_service'); -INSERT INTO `db_migrations` VALUES (24,'create_audits'); -INSERT INTO `db_migrations` VALUES (25,'create_oauth_access_data'); -INSERT INTO `db_migrations` VALUES (26,'create_preferences'); -INSERT INTO `db_migrations` VALUES (27,'create_status'); -INSERT INTO `db_migrations` VALUES (28,'create_tokens'); -INSERT INTO `db_migrations` VALUES (29,'create_bots'); -INSERT INTO `db_migrations` VALUES (30,'create_user_access_tokens'); -INSERT INTO `db_migrations` VALUES (31,'create_remote_clusters'); -INSERT INTO `db_migrations` VALUES (32,'create_sharedchannels'); -INSERT INTO `db_migrations` VALUES (33,'create_sidebar_channels'); -INSERT INTO `db_migrations` VALUES (34,'create_oauthauthdata'); -INSERT INTO `db_migrations` VALUES (35,'create_sharedchannelattachments'); -INSERT INTO `db_migrations` VALUES (36,'create_sharedchannelusers'); -INSERT INTO `db_migrations` VALUES (37,'create_sharedchannelremotes'); -INSERT INTO `db_migrations` VALUES (38,'create_jobs'); -INSERT INTO `db_migrations` VALUES (39,'create_channel_member_history'); -INSERT INTO `db_migrations` VALUES (40,'create_sidebar_categories'); -INSERT INTO `db_migrations` VALUES (41,'create_upload_sessions'); -INSERT INTO `db_migrations` VALUES (42,'create_threads'); -INSERT INTO `db_migrations` VALUES (43,'thread_memberships'); -INSERT INTO `db_migrations` VALUES (44,'create_user_terms_of_service'); -INSERT INTO `db_migrations` VALUES (45,'create_plugin_key_value_store'); -INSERT INTO `db_migrations` VALUES (46,'create_users'); -INSERT INTO `db_migrations` VALUES (47,'create_file_info'); -INSERT INTO `db_migrations` VALUES (48,'create_oauth_apps'); -INSERT INTO `db_migrations` VALUES (49,'create_channels'); -INSERT INTO `db_migrations` VALUES (50,'create_channelmembers'); -INSERT INTO `db_migrations` VALUES (51,'create_msg_root_count'); -INSERT INTO `db_migrations` VALUES (52,'create_public_channels'); -INSERT INTO `db_migrations` VALUES (53,'create_retention_policies'); -INSERT INTO `db_migrations` VALUES (54,'create_crt_channelmembership_count'); -INSERT INTO `db_migrations` VALUES (55,'create_crt_thread_count_and_unreads'); -INSERT INTO `db_migrations` VALUES (56,'upgrade_channels_v6.0'); -INSERT INTO `db_migrations` VALUES (57,'upgrade_command_webhooks_v6.0'); -INSERT INTO `db_migrations` VALUES (58,'upgrade_channelmembers_v6.0'); -INSERT INTO `db_migrations` VALUES (59,'upgrade_users_v6.0'); -INSERT INTO `db_migrations` VALUES (60,'upgrade_jobs_v6.0'); -INSERT INTO `db_migrations` VALUES (61,'upgrade_link_metadata_v6.0'); -INSERT INTO `db_migrations` VALUES (62,'upgrade_sessions_v6.0'); -INSERT INTO `db_migrations` VALUES (63,'upgrade_threads_v6.0'); -INSERT INTO `db_migrations` VALUES (64,'upgrade_status_v6.0'); -INSERT INTO `db_migrations` VALUES (65,'upgrade_groupchannels_v6.0'); -INSERT INTO `db_migrations` VALUES (66,'upgrade_posts_v6.0'); -INSERT INTO `db_migrations` VALUES (67,'upgrade_channelmembers_v6.1'); -INSERT INTO `db_migrations` VALUES (68,'upgrade_teammembers_v6.1'); -INSERT INTO `db_migrations` VALUES (69,'upgrade_jobs_v6.1'); -INSERT INTO `db_migrations` VALUES (70,'upgrade_cte_v6.1'); -INSERT INTO `db_migrations` VALUES (71,'upgrade_sessions_v6.1'); -INSERT INTO `db_migrations` VALUES (72,'upgrade_schemes_v6.3'); -INSERT INTO `db_migrations` VALUES (73,'upgrade_plugin_key_value_store_v6.3'); -INSERT INTO `db_migrations` VALUES (74,'upgrade_users_v6.3'); -INSERT INTO `db_migrations` VALUES (75,'alter_upload_sessions_index'); -INSERT INTO `db_migrations` VALUES (76,'upgrade_lastrootpostat'); -INSERT INTO `db_migrations` VALUES (77,'upgrade_users_v6.5'); -INSERT INTO `db_migrations` VALUES (78,'create_oauth_mattermost_app_id'); -INSERT INTO `db_migrations` VALUES (79,'usergroups_displayname_index'); -INSERT INTO `db_migrations` VALUES (80,'posts_createat_id'); -INSERT INTO `db_migrations` VALUES (81,'threads_deleteat'); -INSERT INTO `db_migrations` VALUES (82,'upgrade_oauth_mattermost_app_id'); -INSERT INTO `db_migrations` VALUES (83,'threads_threaddeleteat'); -INSERT INTO `db_migrations` VALUES (84,'recent_searches'); -INSERT INTO `db_migrations` VALUES (85,'fileinfo_add_archived_column'); -INSERT INTO `db_migrations` VALUES (86,'add_cloud_limits_archived'); -INSERT INTO `db_migrations` VALUES (87,'sidebar_categories_index'); -INSERT INTO `db_migrations` VALUES (88,'remaining_migrations'); -INSERT INTO `db_migrations` VALUES (89,'add-channelid-to-reaction'); -INSERT INTO `db_migrations` VALUES (90,'create_enums'); -INSERT INTO `db_migrations` VALUES (91,'create_post_reminder'); -INSERT INTO `db_migrations` VALUES (92,'add_createat_to_teammembers'); -INSERT INTO `db_migrations` VALUES (93,'notify_admin'); -INSERT INTO `db_migrations` VALUES (94,'threads_teamid'); -INSERT INTO `db_migrations` VALUES (95,'remove_posts_parentid'); -INSERT INTO `db_migrations` VALUES (96,'threads_threadteamid'); -INSERT INTO `db_migrations` VALUES (97,'create_posts_priority'); -INSERT INTO `db_migrations` VALUES (98,'create_post_acknowledgements'); -INSERT INTO `db_migrations` VALUES (99,'create_drafts'); -INSERT INTO `db_migrations` VALUES (100,'add_draft_priority_column'); -INSERT INTO `db_migrations` VALUES (101,'create_true_up_review_history'); -INSERT INTO `db_migrations` VALUES (102,'posts_originalid_index'); -INSERT INTO `db_migrations` VALUES (103,'add_sentat_to_notifyadmin'); -INSERT INTO `db_migrations` VALUES (104,'upgrade_notifyadmin'); -INSERT INTO `db_migrations` VALUES (105,'remove_tokens'); -INSERT INTO `focalboard_schema_migrations` VALUES (1,'init'); -INSERT INTO `focalboard_schema_migrations` VALUES (2,'system_settings_table'); -INSERT INTO `focalboard_schema_migrations` VALUES (3,'blocks_rootid'); -INSERT INTO `focalboard_schema_migrations` VALUES (4,'auth_table'); -INSERT INTO `focalboard_schema_migrations` VALUES (5,'blocks_modifiedby'); -INSERT INTO `focalboard_schema_migrations` VALUES (6,'sharing_table'); -INSERT INTO `focalboard_schema_migrations` VALUES (7,'workspaces_table'); -INSERT INTO `focalboard_schema_migrations` VALUES (8,'teams'); -INSERT INTO `focalboard_schema_migrations` VALUES (9,'blocks_history'); -INSERT INTO `focalboard_schema_migrations` VALUES (10,'blocks_created_by'); -INSERT INTO `focalboard_schema_migrations` VALUES (11,'match_collation'); -INSERT INTO `focalboard_schema_migrations` VALUES (12,'match_column_collation'); -INSERT INTO `focalboard_schema_migrations` VALUES (13,'millisecond_timestamps'); -INSERT INTO `focalboard_schema_migrations` VALUES (14,'add_not_null_constraint'); -INSERT INTO `focalboard_schema_migrations` VALUES (15,'blocks_history_no_nulls'); -INSERT INTO `focalboard_schema_migrations` VALUES (16,'subscriptions_table'); -INSERT INTO `focalboard_schema_migrations` VALUES (17,'add_file_info'); -INSERT INTO `focalboard_schema_migrations` VALUES (18,'add_teams_and_boards'); -INSERT INTO `focalboard_schema_migrations` VALUES (19,'populate_categories'); -INSERT INTO `focalboard_schema_migrations` VALUES (20,'populate_category_blocks'); -INSERT INTO `focalboard_schema_migrations` VALUES (21,'create_boards_members_history'); -INSERT INTO `focalboard_schema_migrations` VALUES (22,'create_default_board_role'); -INSERT INTO `focalboard_schema_migrations` VALUES (23,'persist_category_collapsed_state'); -INSERT INTO `focalboard_schema_migrations` VALUES (24,'mark_existsing_categories_collapsed'); -INSERT INTO `focalboard_schema_migrations` VALUES (25,'indexes_update'); -INSERT INTO `focalboard_schema_migrations` VALUES (26,'create_preferences_table'); -INSERT INTO `focalboard_schema_migrations` VALUES (27,'migrate_user_props_to_preferences'); -INSERT INTO `focalboard_schema_migrations` VALUES (28,'remove_template_channel_link'); -INSERT INTO `focalboard_schema_migrations` VALUES (29,'add_category_type_field'); -INSERT INTO `focalboard_schema_migrations` VALUES (30,'add_category_sort_order'); -INSERT INTO `focalboard_schema_migrations` VALUES (31,'add_category_boards_sort_order'); -INSERT INTO `focalboard_schema_migrations` VALUES (32,'move_boards_category_to_end'); -INSERT INTO `focalboard_system_settings` VALUES ('CategoryUuidIdMigrationComplete','true'); -INSERT INTO `focalboard_system_settings` VALUES ('DeletedMembershipBoardsMigrationComplete','true'); -INSERT INTO `focalboard_system_settings` VALUES ('TeamLessBoardsMigrationComplete','true'); -INSERT INTO `focalboard_system_settings` VALUES ('UniqueIDsMigrationComplete','true'); diff --git a/development/mattermost/nautobot_bootstrap.py b/development/mattermost/nautobot_bootstrap.py index ee0b79e9..032abce6 100644 --- a/development/mattermost/nautobot_bootstrap.py +++ b/development/mattermost/nautobot_bootstrap.py @@ -27,15 +27,15 @@ # The following tokens are for the development only and safe to store in the repo. _COMMAND_TOKENS = { - "aci": "tc1u8wbh53fwxxdkhswbmu9wsa", # nosec - "ansible": "c7udax974iymjkmoyhi1a11cpy", # nosec - "clear": "p7phuwhpaiddjxqf8c1hnw33yh", # nosec - "cloudvision": "pxannsh78iyhbm8fumz8mxk9ih", # nosec - "grafana": "o1yiadnpifbzddt3umcedeypdr", # nosec - "ipfabric": "uqydyxkx4tykinw5z5u9dany1o", # nosec - "meraki": "t9irqwjni3dozf3yx6tzak7k3w", # nosec - "nautobot": "rmdpfdjhnpg988e7ujzyom4euh", # nosec - "panorama": "6nf5cmz1ft8bdfykz46cs5pofo", # nosec + "aci": "b9wrs7paz7fi5ragz9uurwd9fa", # nosec + "ansible": "4hz941bgtpde9g75sesdp7tp1h", # nosec + "clear": "u7p1an973bd1jqg75i3y7pxj7y", # nosec + "cloudvision": "71o3ku7jwjyxup6biu1way1h5y", # nosec + "grafana": "3wxwh3m8mjrzxr11psersqkwue", # nosec + "ipfabric": "ppm316za33ritm3xgpobcmmgre", # nosec + "meraki": "11ix54hycjr4dmxcgw4d77qc4w", # nosec + "nautobot": "ncygprhkt3rrxr4rkytcaa7c9c", # nosec + "panorama": "fh1kbk45xtgm8r48jzr39ru1ww", # nosec } for command, token in _COMMAND_TOKENS.items(): diff --git a/tasks.py b/tasks.py index 7f09ee8b..73a32283 100644 --- a/tasks.py +++ b/tasks.py @@ -716,44 +716,21 @@ def backup_mattermost(context): """Export Mattermost data to the SQL file. Certain tables are ignored.""" output = "./development/mattermost/dump.sql" - ignore_tables = [ - "Audits", - "ChannelMemberHistory", - "CommandWebhooks", - "Posts", - "PostsPriority", - "Sessions", - "UploadSessions", - ] - - base_command = [ + command = [ "exec", - "--env MYSQL_PWD=mostest", "--", "mattermost", - "mysqldump", - "--databases mattermost_test", - "--compact", - "-u root", - ] - - # Dump schema first - command = [ - *base_command, - "--add-drop-database", - "--no-data", + "bash", + "-c", + "'", + "pg_dump", + "--inserts", + "--user=$POSTGRES_USER", + "--dbname=$POSTGRES_DB", + "'", f"> {output}", ] - docker_compose(context, " ".join(command)) - # Dump data for all tables except ignored - command = [ - *base_command, - *(f"--ignore-table mattermost_test.{table}" for table in ignore_tables), - "--no-create-info", - "--skip-extended-insert", - f">> {output}", - ] docker_compose(context, " ".join(command)) From 42e193151d7e3d6a301dc126a89b6a1e5885b7f0 Mon Sep 17 00:00:00 2001 From: meganerd Date: Mon, 30 Oct 2023 23:17:48 -0400 Subject: [PATCH 22/93] Add init-job-form nautobot subcommand Bug: job forms with only 1-item --- nautobot_chatops/workers/nautobot.py | 260 +++++++++++++++++++++++++-- 1 file changed, 246 insertions(+), 14 deletions(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index ccafad93..00b2d192 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -14,6 +14,7 @@ from nautobot.ipam.models import VLAN, Prefix, VLANGroup from nautobot.tenancy.models import Tenant from nautobot.extras.models import Job, JobResult, Role, Status +from nautobot.extras.jobs import get_job from nautobot_chatops.choices import CommandStatusChoices from nautobot_chatops.workers import subcommand_of, handle_subcommands @@ -1085,10 +1086,10 @@ def get_jobs(dispatcher, kwargs: str = ""): """Get all jobs from Nautobot that the requesting user have view permissions for. Args: - kwargs (str): JSON-string array of header items to be exported. + kwargs (str): JSON-string array of header items to be exported. (Optional, default export is: name, id, enabled) """ # Confirm kwargs is valid JSON - json_args = ["Name", "Id", "Enabled"] + json_args = ["name", "id", "enabled"] try: if kwargs: json_args = json.loads(kwargs) @@ -1096,14 +1097,19 @@ def get_jobs(dispatcher, kwargs: str = ""): dispatcher.send_error(f"Invalid JSON-string, cannot decode: {kwargs}") return (CommandStatusChoices.STATUS_FAILED, f"Invalid JSON-string, cannot decode: {kwargs}") + # confirm `name` is always present in export + name_key = json_args.get("name") or json_args.get("Name") + if not name_key: + json_args.append("name") + jobs = Job.objects.restrict(dispatcher.user, "view").all() # Check if all items in json_args are valid keys (assuming all keys of job object are valid) valid_keys = [attr for attr in dir(Job) if not callable(getattr(Job, attr)) and not attr.startswith("_")] for item in json_args: - if item not in valid_keys: - dispatcher.send_error(f"Invalid item provided: {item}") - return (CommandStatusChoices.STATUS_FAILED, f"Invalid item provided: {item}") + if item.lower() not in valid_keys: + dispatcher.send_error(f"Invalid item provided: {item.lower()}") + return (CommandStatusChoices.STATUS_FAILED, f"Invalid item provided: {item.lower()}") # TODO: Check json_args are all valid keys header = [item.capitalize() for item in json_args] @@ -1115,22 +1121,26 @@ def get_jobs(dispatcher, kwargs: str = ""): @subcommand_of("nautobot") -def init_job(dispatcher, job_name: str, kwargs: str = ""): +def init_job(dispatcher, job_name: str, json_string_kwargs: str = "", *args): """Initiate a job in Nautobot by job name. Args: job_name (str): Name of Nautobot job to run. - kwargs (str): JSON-string dictionary for input keyword arguments for job run. + json_string_kwargs (str): JSON-string dictionary for input keyword arguments for job run. + *args (tuple): Dispatcher form will pass job args as tuple. #profile (str): Whether to profile the job execution. """ + if args: + json_string_kwargs = "{}" + # Confirm kwargs is valid JSON json_args = {} try: - if kwargs: - json_args = json.loads(kwargs) + if json_string_kwargs: + json_args = json.loads(json_string_kwargs) except json.JSONDecodeError: - dispatcher.send_error(f"Invalid JSON-string, cannot decode: {kwargs}") - return (CommandStatusChoices.STATUS_FAILED, f"Invalid JSON-string, cannot decode: {kwargs}") + dispatcher.send_error(f"Invalid JSON-string, cannot decode: {json_string_kwargs}") + return (CommandStatusChoices.STATUS_FAILED, f"Invalid JSON-string, cannot decode: {json_string_kwargs}") profile = False if json_args.get("profile") and json_args["profile"] is True: @@ -1148,20 +1158,61 @@ def init_job(dispatcher, job_name: str, kwargs: str = ""): return (CommandStatusChoices.STATUS_FAILED, f'Job "{job_name}" is not enabled') job_class_path = job_model.class_path + job_class = get_job(job_model.class_path) + form_class = job_class.as_form() + + # Parse base form fields from job class + form_fields = [] + for field_name, field in form_class.base_fields.items(): + if field_name.startswith("_"): + continue + form_fields.append(f"{field_name}") + + # Basic logic check with what we know, we should expect init-job-form vs init-job to parse the same base fields + if not len(form_fields) == len(args): + dispatcher.send_error( + "The form class fields and the passed init-jobs args do no match. Something went wrong parsing the base field items." + ) + return ( + CommandStatusChoices.STATUS_FAILED, + "The form class fields and the passed init-jobs args do no match. Something went wrong parsing the base field items.", + ) + + # Convert positional args to kwargs + # TODO: we might just pass the job the positional args we already have + # ideal I would prefer something similar to multi_input_dialog that passes kwargs back + # but ultimately we follow the same logic used to get them in both subcommands, so it is the same ordered result at runtime + form_item_kwargs = {} + for index, value in enumerate(form_fields): + # Check if json dictionary as string. We could probably check the input types and know instead of checking if valid json string + if args[index][0] == "{": + try: + json_arg = json.loads(args[index]) + if not json_arg.get("id"): + dispatcher.send_error("Form field arg is JSON dictionary, and has no `id` key.") + return ( + CommandStatusChoices.STATUS_FAILED, + "Form field arg is JSON dictionary, and has no `id` key.", + ) + form_item_kwargs[form_fields[index]] = json_arg.get("id") + continue + except json.JSONDecodeError: + form_item_kwargs[form_fields[index]] = args[index] + continue + form_item_kwargs[form_fields[index]] = args[index] - # TODO: Check if json_args keys are valid for this job model job_result = JobResult.execute_job( job_model=job_model, user=dispatcher.user, profile=profile, - **json_args, + **form_item_kwargs, ) if job_result and job_result.status == "FAILURE": dispatcher.send_error(f"The requested job {job_name} failed to initiate. Result: {job_result.result}") return (CommandStatusChoices.STATUS_FAILED, f'Job "{job_name}" failed to initiate. Result: {job_result.result}') - # TODO: need base-domain, this yields: /extras/job-results// + # TODO: Need base-domain, this yields: /extras/job-results// job_url = job_result.get_absolute_url() blocks = [ dispatcher.markdown_block( @@ -1174,6 +1225,187 @@ def init_job(dispatcher, job_name: str, kwargs: str = ""): return CommandStatusChoices.STATUS_SUCCEEDED +@subcommand_of("nautobot") +def init_job_form(dispatcher, job_name: str = ""): + """Send job form as a multi-input dialog. On form submit it initiates the job with the form arguments. + + Args: + job_name (str): Name of Nautobot job to run. + """ + # Prompt the user to pick a job if they did not specify one + if not job_name: + return prompt_for_job(dispatcher, "nautobot init-job-form") + + # Get jobs available to user + try: + job = Job.objects.restrict(dispatcher.user, "view").get(name=job_name) + except Job.DoesNotExist: + blocks = [ + dispatcher.markdown_block( + f"Job {job_name} does not exist or requesting user {dispatcher.user} does not have permissions to run job." + ), + ] + dispatcher.send_blocks(blocks) + return CommandStatusChoices.STATUS_SUCCEEDED + + except Job.MultipleObjectsReturned: + blocks = [ + dispatcher.markdown_block(f"Multiple jobs found by name {job_name}."), + ] + dispatcher.send_blocks(blocks) + return CommandStatusChoices.STATUS_SUCCEEDED + + if not job.enabled: + blocks = [ + dispatcher.markdown_block(f"Job {job_name} is not enabled. The job must be enabled to be ran."), + ] + dispatcher.send_blocks(blocks) + return CommandStatusChoices.STATUS_SUCCEEDED + + job_class = get_job(job.class_path) + form_class = job_class.as_form() + + # Parse base form fields from job class + form_items = {} + for field_name, field in form_class.base_fields.items(): + if field_name.startswith("_"): + continue + form_items[field_name] = field + + form_item_dialogs = [] + for field_name, field in form_items.items(): + try: + field_type = field.widget.input_type + except: + # Some widgets (eg: textarea) do have the `input_type` attribute + field_type = field.widget.template_name.split("/")[-1].split(".")[0] + + if field_type == "select": + if not hasattr(field, "choices"): + blocks = [ + dispatcher.markdown_block(f"Job {job_name} field {field} has no attribute `choices`."), + ] + dispatcher.send_blocks(blocks) + return CommandStatusChoices.STATUS_SUCCEEDED + + query_result_items = [] + for choice, value in field.choices: + query_result_items.append( + (value, f'{{"field_name": "{field_name}", "value": "{value}", "id": "{str(choice)}"}}') + ) + + if len(query_result_items) == 0 and field.required: + blocks = [ + dispatcher.markdown_block( + f"Job {job_name} for {field_name} is required, however no choices populated for dialog choices." + ), + ] + dispatcher.send_blocks(blocks) + return CommandStatusChoices.STATUS_SUCCEEDED + + # TODO: If results are large we need to paginate by some means? + elif len(query_result_items) > 30: + pass + + form_item_dialogs.append( + { + "type": field_type, + "label": f"{field_name}: {field.help_text}", + "choices": query_result_items, + "default": query_result_items[0] if query_result_items else ("", ""), + "confirm": False, + } + ) + + elif field_type == "text": + default_value = field.initial + form_item_dialogs.append( + { + "type": field_type, + "label": f"{field_name}: {field.help_text}", + "default": default_value, + "confirm": False, + } + ) + + elif field_type == "number": + # TODO: Can we enforce numeric-character mask for widget input? + default_value = field.initial + form_item_dialogs.append( + { + "type": "text", + "label": f"{field_name}: {field.help_text} *integer values only*", + "default": default_value, + "confirm": False, + } + ) + + elif field_type == "checkbox": + # TODO: Is there a checkbox widget? + default_value = ("False", "false") + if field.initial: + default_value = ("True", "true") + form_item_dialogs.append( + { + "type": "select", + "label": f"{field_name}: {field.help_text}", + "choices": [("True", "true"), ("False", "false")], + "default": default_value, + "confirm": False, + } + ) + + elif field_type == "textarea": + # TODO: Is there a multi-line text input widget + default_value = field.initial + form_item_dialogs.append( + { + "type": "text", + "label": f"{field_name}: {field.help_text}", + "default": default_value, + "confirm": False, + } + ) + + # BUG: any job with a single form item is failing? its not calling multi_input_dialog at all. But no exception either. tested multiple form types. + # It seems to be a bug with multi_input_dialog somehow? This one had me stumped for a bit + dispatcher.multi_input_dialog( + command="nautobot", + sub_command=f"init-job {job_name} {{}}", + dialog_title=f"job {job_name} form input", + dialog_list=form_item_dialogs, + ) + + # Testing + # blocks = [ + # *dispatcher.command_response_header( + # "nautobot", + # "init-job", + # [ + # ("Job Name", job_name), + # ("Job Kwargs", "{}") + # ], + # "test..", + # nautobot_logo(dispatcher), + # ), + # ] + + blocks = [ + dispatcher.markdown_block("demo ran, fin"), + ] + + dispatcher.send_blocks(blocks) + + return CommandStatusChoices.STATUS_SUCCEEDED + + +def prompt_for_job(dispatcher, command): + """Prompt the user to select a Nautobot Job.""" + jobs = Job.objects.restrict(dispatcher.user, "view").all() + dispatcher.prompt_from_menu(command, "Select a Nautobot Job", [(job.name, job.name) for job in jobs]) + return False + + @subcommand_of("nautobot") def about(dispatcher, *args): """Provide link for more information on Nautobot Apps.""" From f074f9262534b29a86886705bd265d3dc05697dc Mon Sep 17 00:00:00 2001 From: meganerd Date: Mon, 30 Oct 2023 23:27:53 -0400 Subject: [PATCH 23/93] flake8 fix, catch explicit exception --- nautobot_chatops/workers/nautobot.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index 00b2d192..bfdb199f 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1276,7 +1276,7 @@ def init_job_form(dispatcher, job_name: str = ""): for field_name, field in form_items.items(): try: field_type = field.widget.input_type - except: + except AttributeError: # Some widgets (eg: textarea) do have the `input_type` attribute field_type = field.widget.template_name.split("/")[-1].split(".")[0] From 6910196015f7a3a63ebdd2aab5447fce6d4753d8 Mon Sep 17 00:00:00 2001 From: meganerd Date: Mon, 30 Oct 2023 23:29:47 -0400 Subject: [PATCH 24/93] Remove block response, leaving testing commented --- nautobot_chatops/workers/nautobot.py | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index bfdb199f..73f6b973 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1390,11 +1390,7 @@ def init_job_form(dispatcher, job_name: str = ""): # ), # ] - blocks = [ - dispatcher.markdown_block("demo ran, fin"), - ] - - dispatcher.send_blocks(blocks) + # dispatcher.send_blocks(blocks) return CommandStatusChoices.STATUS_SUCCEEDED From 98c2db3cba231ce12bf96eddcd4197bb97374609 Mon Sep 17 00:00:00 2001 From: meganerd Date: Tue, 31 Oct 2023 00:54:38 -0400 Subject: [PATCH 25/93] pylint8 fixes prompt_for_job added to init-job subcommand removed testing code blocks todo: bug: single job forms wont submit properly with multi_input_dialog notes: merge init-job and init-job-form seems best --- nautobot_chatops/workers/nautobot.py | 35 +++++++--------------------- 1 file changed, 9 insertions(+), 26 deletions(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index 73f6b973..29e8eea0 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1121,7 +1121,7 @@ def get_jobs(dispatcher, kwargs: str = ""): @subcommand_of("nautobot") -def init_job(dispatcher, job_name: str, json_string_kwargs: str = "", *args): +def init_job(dispatcher, job_name: str = "", json_string_kwargs: str = "", *args): """Initiate a job in Nautobot by job name. Args: @@ -1130,6 +1130,10 @@ def init_job(dispatcher, job_name: str, json_string_kwargs: str = "", *args): *args (tuple): Dispatcher form will pass job args as tuple. #profile (str): Whether to profile the job execution. """ + # Prompt the user to pick a job if they did not specify one + if not job_name: + return prompt_for_job(dispatcher, "nautobot init-job") + if args: json_string_kwargs = "{}" @@ -1163,13 +1167,13 @@ def init_job(dispatcher, job_name: str, json_string_kwargs: str = "", *args): # Parse base form fields from job class form_fields = [] - for field_name, field in form_class.base_fields.items(): + for field_name, _ in form_class.base_fields.items(): # pylint: disable=unused-variable if field_name.startswith("_"): continue form_fields.append(f"{field_name}") # Basic logic check with what we know, we should expect init-job-form vs init-job to parse the same base fields - if not len(form_fields) == len(args): + if len(form_fields) != len(args): dispatcher.send_error( "The form class fields and the passed init-jobs args do no match. Something went wrong parsing the base field items." ) @@ -1183,7 +1187,7 @@ def init_job(dispatcher, job_name: str, json_string_kwargs: str = "", *args): # ideal I would prefer something similar to multi_input_dialog that passes kwargs back # but ultimately we follow the same logic used to get them in both subcommands, so it is the same ordered result at runtime form_item_kwargs = {} - for index, value in enumerate(form_fields): + for index, _ in enumerate(form_fields): # pylint: disable=unused-variable # Check if json dictionary as string. We could probably check the input types and know instead of checking if valid json string if args[index][0] == "{": try: @@ -1303,10 +1307,6 @@ def init_job_form(dispatcher, job_name: str = ""): dispatcher.send_blocks(blocks) return CommandStatusChoices.STATUS_SUCCEEDED - # TODO: If results are large we need to paginate by some means? - elif len(query_result_items) > 30: - pass - form_item_dialogs.append( { "type": field_type, @@ -1367,8 +1367,7 @@ def init_job_form(dispatcher, job_name: str = ""): } ) - # BUG: any job with a single form item is failing? its not calling multi_input_dialog at all. But no exception either. tested multiple form types. - # It seems to be a bug with multi_input_dialog somehow? This one had me stumped for a bit + # TODO: BUG: Single inputs will present but not submit properly with multi_input_dialog dispatcher.multi_input_dialog( command="nautobot", sub_command=f"init-job {job_name} {{}}", @@ -1376,22 +1375,6 @@ def init_job_form(dispatcher, job_name: str = ""): dialog_list=form_item_dialogs, ) - # Testing - # blocks = [ - # *dispatcher.command_response_header( - # "nautobot", - # "init-job", - # [ - # ("Job Name", job_name), - # ("Job Kwargs", "{}") - # ], - # "test..", - # nautobot_logo(dispatcher), - # ), - # ] - - # dispatcher.send_blocks(blocks) - return CommandStatusChoices.STATUS_SUCCEEDED From f4d4babdead2ad5faf2adcab8fc8544c9ef8083c Mon Sep 17 00:00:00 2001 From: Stephen Kiely Date: Tue, 31 Oct 2023 11:57:05 -0500 Subject: [PATCH 26/93] Add back in the mkdocs include-markdown plugin. --- docs/requirements.txt | 1 + mkdocs.yml | 1 + poetry.lock | 50 +++++++++++++++++++++++++++++++++++++++---- pyproject.toml | 1 + 4 files changed, 49 insertions(+), 4 deletions(-) diff --git a/docs/requirements.txt b/docs/requirements.txt index d168c88f..e3d2c7ec 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -3,3 +3,4 @@ mkdocs-material==9.1.15 mkdocs-version-annotations==1.0.0 mkdocstrings-python==1.5.2 mkdocstrings==0.22.0 +mkdocs-include-markdown-plugin==6.0.3 diff --git a/mkdocs.yml b/mkdocs.yml index 032b6c26..64298e45 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -93,6 +93,7 @@ plugins: paths: ["."] options: show_root_heading: true + - "include-markdown" watch: - "README.md" diff --git a/poetry.lock b/poetry.lock index c55799d9..5beef360 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 1.6.1 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.5.1 and should not be changed by hand. [[package]] name = "aiodns" @@ -446,6 +446,17 @@ d = ["aiohttp (>=3.7.4)"] jupyter = ["ipython (>=7.8.0)", "tokenize-rt (>=3.2.0)"] uvloop = ["uvloop (>=0.15.2)"] +[[package]] +name = "bracex" +version = "2.4" +description = "Bash style brace expander." +optional = false +python-versions = ">=3.8" +files = [ + {file = "bracex-2.4-py3-none-any.whl", hash = "sha256:efdc71eff95eaff5e0f8cfebe7d01adf2c8637c8c92edaf63ef348c241a82418"}, + {file = "bracex-2.4.tar.gz", hash = "sha256:a27eaf1df42cf561fed58b7a8f3fdf129d1ea16a81e1fadd1d17989bc6384beb"}, +] + [[package]] name = "celery" version = "5.3.4" @@ -2415,6 +2426,24 @@ files = [ Markdown = ">=3.3" mkdocs = ">=1.1" +[[package]] +name = "mkdocs-include-markdown-plugin" +version = "6.0.3" +description = "Mkdocs Markdown includer plugin." +optional = false +python-versions = ">=3.8" +files = [ + {file = "mkdocs_include_markdown_plugin-6.0.3-py3-none-any.whl", hash = "sha256:8f9262cf4246ebc33dcdfbdb40c1253b7c9ad79e0f8dc2a9e338b1fb761d8e02"}, + {file = "mkdocs_include_markdown_plugin-6.0.3.tar.gz", hash = "sha256:9799ea8ac9179e9e91ab58869421be60a2585e3d9c4a53181d37a49d9a1780db"}, +] + +[package.dependencies] +mkdocs = ">=1.4" +wcmatch = ">=8,<9" + +[package.extras] +cache = ["platformdirs"] + [[package]] name = "mkdocs-material" version = "9.1.15" @@ -4112,8 +4141,7 @@ files = [ {file = "ruamel.yaml.clib-0.2.7-cp310-cp310-win32.whl", hash = "sha256:763d65baa3b952479c4e972669f679fe490eee058d5aa85da483ebae2009d231"}, {file = "ruamel.yaml.clib-0.2.7-cp310-cp310-win_amd64.whl", hash = "sha256:d000f258cf42fec2b1bbf2863c61d7b8918d31ffee905da62dede869254d3b8a"}, {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:045e0626baf1c52e5527bd5db361bc83180faaba2ff586e763d3d5982a876a9e"}, - {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-macosx_13_0_arm64.whl", hash = "sha256:1a6391a7cabb7641c32517539ca42cf84b87b667bad38b78d4d42dd23e957c81"}, - {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-manylinux2014_aarch64.whl", hash = "sha256:9c7617df90c1365638916b98cdd9be833d31d337dbcd722485597b43c4a215bf"}, + {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-macosx_12_6_arm64.whl", hash = "sha256:721bc4ba4525f53f6a611ec0967bdcee61b31df5a56801281027a3a6d1c2daf5"}, {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:41d0f1fa4c6830176eef5b276af04c89320ea616655d01327d5ce65e50575c94"}, {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-win32.whl", hash = "sha256:f6d3d39611ac2e4f62c3128a9eed45f19a6608670c5a2f4f07f24e8de3441d38"}, {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-win_amd64.whl", hash = "sha256:da538167284de58a52109a9b89b8f6a53ff8437dd6dc26d33b57bf6699153122"}, @@ -4694,6 +4722,20 @@ files = [ [package.extras] watchmedo = ["PyYAML (>=3.10)"] +[[package]] +name = "wcmatch" +version = "8.5" +description = "Wildcard/glob file name matcher." +optional = false +python-versions = ">=3.8" +files = [ + {file = "wcmatch-8.5-py3-none-any.whl", hash = "sha256:14554e409b142edeefab901dc68ad570b30a72a8ab9a79106c5d5e9a6d241bd5"}, + {file = "wcmatch-8.5.tar.gz", hash = "sha256:86c17572d0f75cbf3bcb1a18f3bf2f9e72b39a9c08c9b4a74e991e1882a8efb3"}, +] + +[package.dependencies] +bracex = ">=2.1.1" + [[package]] name = "wcwidth" version = "0.2.6" @@ -4955,4 +4997,4 @@ panorama = ["defusedxml", "ipaddr", "netmiko", "netutils", "pan-os-python"] [metadata] lock-version = "2.0" python-versions = ">=3.8,<3.12" -content-hash = "f5f3df8e929a05526ed64e2f2e2820312bf770072f731044afb556e7900fd223" +content-hash = "ac3e40cdc537e36627652e635c3bcbfafa0ac8dfbd289893b0ecf0238ce4e503" diff --git a/pyproject.toml b/pyproject.toml index 4e609703..d159e711 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -82,6 +82,7 @@ mkdocs-material = "9.1.15" mkdocs-version-annotations = "1.0.0" mkdocstrings = "0.22.0" mkdocstrings-python = "1.5.2" +mkdocs-include-markdown-plugin = "~6.0.3" prybar = "*" pydocstyle = "*" pylint = "*" From ff2e26e103d2538092b4dceecd7977e9098ee44d Mon Sep 17 00:00:00 2001 From: Stephen Kiely Date: Tue, 31 Oct 2023 13:05:51 -0500 Subject: [PATCH 27/93] Pin mkdocs-include-markdown-plugin --- poetry.lock | 2 +- pyproject.toml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/poetry.lock b/poetry.lock index 5beef360..cec3f276 100644 --- a/poetry.lock +++ b/poetry.lock @@ -4997,4 +4997,4 @@ panorama = ["defusedxml", "ipaddr", "netmiko", "netutils", "pan-os-python"] [metadata] lock-version = "2.0" python-versions = ">=3.8,<3.12" -content-hash = "ac3e40cdc537e36627652e635c3bcbfafa0ac8dfbd289893b0ecf0238ce4e503" +content-hash = "ab7d4f0eab523ac12ffe5ed51c5764fc1fb4e477c8ff161753a984db7d495722" diff --git a/pyproject.toml b/pyproject.toml index d159e711..76741f49 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -82,7 +82,7 @@ mkdocs-material = "9.1.15" mkdocs-version-annotations = "1.0.0" mkdocstrings = "0.22.0" mkdocstrings-python = "1.5.2" -mkdocs-include-markdown-plugin = "~6.0.3" +mkdocs-include-markdown-plugin = "6.0.3" prybar = "*" pydocstyle = "*" pylint = "*" From 57aeaeb9029305f1239ce7eec78a4c351bf83257 Mon Sep 17 00:00:00 2001 From: Stephen Kiely Date: Thu, 7 Dec 2023 14:04:16 -0600 Subject: [PATCH 28/93] Fix Cloudvision naming conflict This change corrects documentation and configuration for Cloudvision to reflect the command name. In addition this removes remaining references to RQ and adds the Integration CODEOWNERS. --- .github/CODEOWNERS | 9 ++++++++- development/grafana/prometheus.yml | 5 ----- docs/admin/install/aristacv_setup.md | 8 ++++---- docs/dev/design.md | 2 +- docs/dev/dev_environment.md | 4 ++-- nautobot_chatops/__init__.py | 2 +- nautobot_chatops/integrations/ansible/tower.py | 2 +- nautobot_chatops/integrations/aristacv/worker.py | 2 +- nautobot_chatops/integrations/panorama/worker.py | 2 +- 9 files changed, 19 insertions(+), 17 deletions(-) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 5f4290b0..9d83a2e6 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1,2 +1,9 @@ # Default owners for all files in this repository -* @glennmatthews @jvanderaa @smk4664 @whitej6 +* @glennmatthews @jvanderaa @smk4664 @whitej6 @romanukes +/nautobot_chatops/integrations/aci/ @pato23arg +/nautobot_chatops/integrations/ansible/ @smk4664 +/nautobot_chatops/integrations/aristacv/ @qduk +/nautobot_chatops/integrations/grafana/ @davidban77 +/nautobot_chatops/integrations/meraki/ @jeffkala +/nautobot_chatops/integrations/ipfabric/ @alhogan @pke11y +/nautobot_chatops/integrations/panorama/ @jdrew82 diff --git a/development/grafana/prometheus.yml b/development/grafana/prometheus.yml index b51ced44..5471c53d 100644 --- a/development/grafana/prometheus.yml +++ b/development/grafana/prometheus.yml @@ -20,11 +20,6 @@ scrape_configs: static_configs: - targets: ["nautobot:8080"] - - job_name: "nautobot_rq" - metrics_path: "/api/plugins/capacity-metrics/rq-metrics" - static_configs: - - targets: ["nautobot:8080"] - - job_name: "worker" dns_sd_configs: - names: diff --git a/docs/admin/install/aristacv_setup.md b/docs/admin/install/aristacv_setup.md index b4d4f7cf..f0e5c2df 100644 --- a/docs/admin/install/aristacv_setup.md +++ b/docs/admin/install/aristacv_setup.md @@ -14,7 +14,7 @@ Before configuring the integration, please ensure the following: ## Command Setup -Create a top-level command named `aristacv` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./index.md#chat-platforms-configuration). +Create a top-level command named `cloudvision` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./index.md#chat-platforms-configuration). ## Configuration @@ -22,7 +22,7 @@ You must define the following values in your `nautobot_config.py` file: | Configuration Setting | Mandatory? | Default | Available on Admin Config | | ---------------------- | ---------- | --------------------- | ------------------------- | -| `enable_aristacv` | **Yes** | False | Yes | +| `enable_cloudvision` | **Yes** | False | Yes | | `aristacv_cvaas_url` | No | "www.arista.io:443" | No | | `aristacv_cvaas_token` | No | None | No | | `aristacv_cvp_host` | No | None | No | @@ -39,7 +39,7 @@ PLUGINS = ["nautobot_chatops"] PLUGINS_CONFIG = { "nautobot_chatops": { ... - "enable_aristacv": True, + "enable_cloudvision": True, "aristacv_cvaas_url": os.environ.get("ARISTACV_CVAAS_URL"), "aristacv_cvaas_token": os.environ.get("ARISTACV_CVAAS_TOKEN"), "aristacv_cvp_host": os.environ.get("ARISTACV_CVP_HOST"), @@ -98,7 +98,7 @@ Once you have updated your environment file, restart both nautobot and nautobot- # } "nautobot_chatops": { # Enable Arista CloudVision integration - "enable_aristacv": True, + "enable_cloudvision": True, "aristacv_cvaas_url": os.environ.get("ARISTACV_CVAAS_URL"), "aristacv_cvaas_token": os.environ.get("ARISTACV_CVAAS_TOKEN"), "aristacv_cvp_host": os.environ.get("ARISTACV_CVP_HOST"), diff --git a/docs/dev/design.md b/docs/dev/design.md index 6568727b..9628e6e1 100644 --- a/docs/dev/design.md +++ b/docs/dev/design.md @@ -90,7 +90,7 @@ The design goal of this plugin is to be able to write chatbot commands once and |-- User input ->| | | |-- HTTP POST ->| | | | nautobot_chatops/views/* - | | |-- Enqueue job,dispatcher to RQ --> + | | |-- Enqueue job,dispatcher to Celery --> | |<---- 200 OK --| |<- "Received" --| ``` diff --git a/docs/dev/dev_environment.md b/docs/dev/dev_environment.md index b5c9fd66..b4067e76 100644 --- a/docs/dev/dev_environment.md +++ b/docs/dev/dev_environment.md @@ -146,7 +146,7 @@ This project provides the ability to develop and manage the Nautobot server loca The upside to having the Nautobot service handled by Docker rather than locally is that you do not have to manage the Nautobot server. The [Docker logs](#docker-logs) provide the majority of the information you will need to help troubleshoot, while getting started quickly and not requiring you to perform several manual steps and remembering to have the Nautobot server running in a separate terminal while you develop. !!! note - The local environment still uses Docker containers for the supporting services (Postgres, Redis, and RQ Worker), but the Nautobot server is handled locally by you, the developer. + The local environment still uses Docker containers for the supporting services (Postgres, Redis, and Celery Worker), but the Nautobot server is handled locally by you, the developer. Follow the directions below for the specific development environment that you choose. @@ -218,7 +218,7 @@ This will start all of the Docker containers used for hosting Nautobot. You shou ```bash ➜ docker ps ****CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES -ee90fbfabd77 nautobot-chatops/nautobot:2.0.0-py3.11 "nautobot-server rqw…" 16 seconds ago Up 13 seconds nautobot_chatops_worker_1 +ee90fbfabd77 nautobot-chatops/nautobot:2.0.0-py3.11 "nautobot-server cel…" 16 seconds ago Up 13 seconds nautobot_chatops_worker_1 b8adb781d013 nautobot-chatops/nautobot:2.0.0-py3.11 "/docker-entrypoint.…" 20 seconds ago Up 15 seconds 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp nautobot_chatops_nautobot_1 d64ebd60675d nautobot-chatops/nautobot:2.0.0-py3.11 "mkdocs serve -v -a …" 25 seconds ago Up 18 seconds 0.0.0.0:8001->8080/tcp, :::8001->8080/tcp nautobot_chatops_docs_1 e72d63129b36 postgres:13-alpine "docker-entrypoint.s…" 25 seconds ago Up 19 seconds 0.0.0.0:5432->5432/tcp, :::5432->5432/tcp nautobot_chatops_postgres_1 diff --git a/nautobot_chatops/__init__.py b/nautobot_chatops/__init__.py index 6fcfa54d..d180c074 100644 --- a/nautobot_chatops/__init__.py +++ b/nautobot_chatops/__init__.py @@ -129,7 +129,7 @@ class NautobotChatOpsConfig(NautobotAppConfig): "enable_webex": ConstanceConfigItem(default=False, help_text="Enable Webex Chat Platform.", field_type=bool), "enable_aci": ConstanceConfigItem(default=False, help_text="Enable Cisco ACI Integration.", field_type=bool), "enable_ansible": ConstanceConfigItem(default=False, help_text="Enable Ansible Integration.", field_type=bool), - "enable_aristacv": ConstanceConfigItem( + "enable_cloudvision": ConstanceConfigItem( default=False, help_text="Enable Arista CloudVision Integration.", field_type=bool ), "enable_grafana": ConstanceConfigItem(default=False, help_text="Enable Grafana Integration.", field_type=bool), diff --git a/nautobot_chatops/integrations/ansible/tower.py b/nautobot_chatops/integrations/ansible/tower.py index bd6e5c04..fab4d4e4 100644 --- a/nautobot_chatops/integrations/ansible/tower.py +++ b/nautobot_chatops/integrations/ansible/tower.py @@ -6,7 +6,7 @@ from django.conf import settings import requests -logger = logging.getLogger("rq.worker") +logger = logging.getLogger(__name__) _CONFIG = settings.PLUGINS_CONFIG["nautobot_chatops"] diff --git a/nautobot_chatops/integrations/aristacv/worker.py b/nautobot_chatops/integrations/aristacv/worker.py index f2b05c05..27b50ddf 100644 --- a/nautobot_chatops/integrations/aristacv/worker.py +++ b/nautobot_chatops/integrations/aristacv/worker.py @@ -33,7 +33,7 @@ ) -logger = logging.getLogger("rq.worker") +logger = logging.getLogger(__name__) dir_path = os.path.dirname(os.path.realpath(__file__)) CLOUDVISION_LOGO_PATH = "nautobot_cloudvision/cloudvision_logo.png" CLOUDVISION_LOGO_ALT = "CloudVision Logo" diff --git a/nautobot_chatops/integrations/panorama/worker.py b/nautobot_chatops/integrations/panorama/worker.py index b4b0c42c..22acc2cb 100644 --- a/nautobot_chatops/integrations/panorama/worker.py +++ b/nautobot_chatops/integrations/panorama/worker.py @@ -1,4 +1,4 @@ -"""Example rq worker to handle /panorama chat commands with 1 subcommand addition.""" +"""Example worker to handle /panorama chat commands with 1 subcommand addition.""" import logging import os import re From be421934cace353e1824b68ae33f3496eb42026a Mon Sep 17 00:00:00 2001 From: Zack Tobar Date: Tue, 19 Dec 2023 13:36:45 -0600 Subject: [PATCH 29/93] Add some debugs to MSTeam files --- nautobot_chatops/api/views/ms_teams.py | 5 +++++ nautobot_chatops/dispatchers/ms_teams.py | 12 ++++++++++++ 2 files changed, 17 insertions(+) diff --git a/nautobot_chatops/api/views/ms_teams.py b/nautobot_chatops/api/views/ms_teams.py index f3e10daf..26790eae 100644 --- a/nautobot_chatops/api/views/ms_teams.py +++ b/nautobot_chatops/api/views/ms_teams.py @@ -2,6 +2,7 @@ import json import re +import logging import requests import jwt @@ -17,6 +18,8 @@ from nautobot_chatops.utils import check_and_enqueue_command +logger = logging.getLogger(__name__) + APP_ID = settings.PLUGINS_CONFIG["nautobot_chatops"]["microsoft_app_id"] BOT_CONNECTOR_METADATA_URI = "https://login.botframework.com/v1/.well-known/openidconfiguration" @@ -151,6 +154,8 @@ def post(self, request, *args, **kwargs): "is_group": body["conversation"].get("isGroup", False), } + logger.debug("DEBUG: post context %s", context) + if context["org_id"]: # Get the organization name as well response = requests.get( diff --git a/nautobot_chatops/dispatchers/ms_teams.py b/nautobot_chatops/dispatchers/ms_teams.py index ead1e4c2..fe081786 100644 --- a/nautobot_chatops/dispatchers/ms_teams.py +++ b/nautobot_chatops/dispatchers/ms_teams.py @@ -39,6 +39,7 @@ def user(self): """Dispatcher property containing the Nautobot User that is linked to the Chat User.""" if self.context.get("user_ad_id"): try: + logger.debug("DEBUG: user() - Found ChatOps user - %s", self.context["user_name"]) return ChatOpsAccountLink.objects.get( platform=self.platform_slug, user_id=self.context["user_ad_id"] ).nautobot_user @@ -135,6 +136,7 @@ def lookup_user_id_by_email(cls, email) -> Optional[str]: def _send(self, content, content_type="message"): """Publish content back to Microsoft Teams.""" + logger.debug("DEBUG: _send() - updating content with %s", self.context) content = content.copy() content.update( { @@ -154,12 +156,20 @@ def _send(self, content, content_type="message"): "replyToId": self.context["message_id"], } ) + logger.debug("DEBUG: _send() - Sending response back to MSTeams") + logger.debug("DEBUG: _send() - Sending content with %s", content) + logger.debug( + "DEBUG: _send() - Sending to URL %s/v3/conversations/%s/activities", + self.context['service_url'], + self.context['conversation_id'], + ) response = requests.post( f"{self.context['service_url']}/v3/conversations/{self.context['conversation_id']}/activities", headers={"Authorization": f"Bearer {self.get_token()}"}, json=content, timeout=15, ) + logger.debug("DEBUG: _send() response %s", response.json()) return response def send_large_table(self, header, rows, title=None): @@ -222,11 +232,13 @@ def ask_permission_to_send_image(self, filename, action_id): @BACKEND_ACTION_MARKDOWN.time() def send_markdown(self, message, ephemeral=None): """Send a markdown-formatted text message to the user/channel specified by the context.""" + logger.debug("DEBUG: send_markdown() Sending message = %s", message) self._send({"text": message, "textFormat": "markdown"}) @BACKEND_ACTION_BLOCKS.time() def send_blocks(self, blocks, callback_id=None, modal=False, ephemeral=None, title=None): """Send a series of formatting blocks to the user/channel specified by the context.""" + logger.debug("DEBUG: send_blocks() Sending Blocks = %s", blocks) if title and title not in str(blocks[0]): blocks.insert(0, self.markdown_element(self.bold(title))) self._send( From 3c594aa510ea511a7334394ef1aea7ae7deb097a Mon Sep 17 00:00:00 2001 From: Zack Tobar Date: Tue, 19 Dec 2023 13:54:22 -0600 Subject: [PATCH 30/93] Add raise_for_status --- nautobot_chatops/dispatchers/ms_teams.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/nautobot_chatops/dispatchers/ms_teams.py b/nautobot_chatops/dispatchers/ms_teams.py index fe081786..fba4e999 100644 --- a/nautobot_chatops/dispatchers/ms_teams.py +++ b/nautobot_chatops/dispatchers/ms_teams.py @@ -169,7 +169,9 @@ def _send(self, content, content_type="message"): json=content, timeout=15, ) - logger.debug("DEBUG: _send() response %s", response.json()) + logger.debug("DEBUG: _send() response %s", response.status_code) + logger.debug("DEBUG: _send() reason %s", response.reason) + response.raise_for_status() return response def send_large_table(self, header, rows, title=None): From 8c7a0b74e397fa6ad4d0a73095b982c1cd829525 Mon Sep 17 00:00:00 2001 From: Zack Tobar Date: Tue, 19 Dec 2023 15:24:42 -0600 Subject: [PATCH 31/93] Fix Arista error --- .../integrations/{aristacv => cloudvision}/__init__.py | 0 .../integrations/{aristacv => cloudvision}/cvpgrpcutils.py | 0 .../integrations/{aristacv => cloudvision}/utils.py | 0 .../integrations/{aristacv => cloudvision}/worker.py | 0 pyproject.toml | 2 +- 5 files changed, 1 insertion(+), 1 deletion(-) rename nautobot_chatops/integrations/{aristacv => cloudvision}/__init__.py (100%) rename nautobot_chatops/integrations/{aristacv => cloudvision}/cvpgrpcutils.py (100%) rename nautobot_chatops/integrations/{aristacv => cloudvision}/utils.py (100%) rename nautobot_chatops/integrations/{aristacv => cloudvision}/worker.py (100%) diff --git a/nautobot_chatops/integrations/aristacv/__init__.py b/nautobot_chatops/integrations/cloudvision/__init__.py similarity index 100% rename from nautobot_chatops/integrations/aristacv/__init__.py rename to nautobot_chatops/integrations/cloudvision/__init__.py diff --git a/nautobot_chatops/integrations/aristacv/cvpgrpcutils.py b/nautobot_chatops/integrations/cloudvision/cvpgrpcutils.py similarity index 100% rename from nautobot_chatops/integrations/aristacv/cvpgrpcutils.py rename to nautobot_chatops/integrations/cloudvision/cvpgrpcutils.py diff --git a/nautobot_chatops/integrations/aristacv/utils.py b/nautobot_chatops/integrations/cloudvision/utils.py similarity index 100% rename from nautobot_chatops/integrations/aristacv/utils.py rename to nautobot_chatops/integrations/cloudvision/utils.py diff --git a/nautobot_chatops/integrations/aristacv/worker.py b/nautobot_chatops/integrations/cloudvision/worker.py similarity index 100% rename from nautobot_chatops/integrations/aristacv/worker.py rename to nautobot_chatops/integrations/cloudvision/worker.py diff --git a/pyproject.toml b/pyproject.toml index 76741f49..67c98eb1 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -29,7 +29,7 @@ packages = [ "aci" = "nautobot_chatops.integrations.aci.worker:aci" "ansible" = "nautobot_chatops.integrations.ansible.worker:ansible" "clear" = "nautobot_chatops.workers.clear:clear" -"cloudvision" = "nautobot_chatops.integrations.aristacv.worker:cloudvision" +"cloudvision" = "nautobot_chatops.integrations.cloudvision.worker:cloudvision" "grafana" = "nautobot_chatops.integrations.grafana.worker:grafana" "ipfabric" = "nautobot_chatops.integrations.ipfabric.worker:ipfabric" "meraki" = "nautobot_chatops.integrations.meraki.worker:cisco_meraki" From 06f78dade4ba00110df9b21fab71dd150acc1c0b Mon Sep 17 00:00:00 2001 From: Zack Tobar Date: Wed, 20 Dec 2023 11:10:36 -0600 Subject: [PATCH 32/93] Add catch for service url ending with slash --- nautobot_chatops/api/views/ms_teams.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/nautobot_chatops/api/views/ms_teams.py b/nautobot_chatops/api/views/ms_teams.py index 26790eae..a3e494f9 100644 --- a/nautobot_chatops/api/views/ms_teams.py +++ b/nautobot_chatops/api/views/ms_teams.py @@ -154,6 +154,10 @@ def post(self, request, *args, **kwargs): "is_group": body["conversation"].get("isGroup", False), } + # Update service_url if ending with a slash due to failures with requests + if context["service_url"].endswith("/"): + context["service_url"] = context["service_url"].strip("/") + logger.debug("DEBUG: post context %s", context) if context["org_id"]: From adeb5009aaddef21a0e2028bb237c222186b9d0c Mon Sep 17 00:00:00 2001 From: Zack Tobar Date: Wed, 20 Dec 2023 12:05:15 -0600 Subject: [PATCH 33/93] Add catch for service url ending with slash --- nautobot_chatops/api/views/ms_teams.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/nautobot_chatops/api/views/ms_teams.py b/nautobot_chatops/api/views/ms_teams.py index a3e494f9..c3558475 100644 --- a/nautobot_chatops/api/views/ms_teams.py +++ b/nautobot_chatops/api/views/ms_teams.py @@ -154,9 +154,8 @@ def post(self, request, *args, **kwargs): "is_group": body["conversation"].get("isGroup", False), } - # Update service_url if ending with a slash due to failures with requests - if context["service_url"].endswith("/"): - context["service_url"] = context["service_url"].strip("/") + # Update service_url if ending with a slash + context["service_url"] = context["service_url"].strip("/") logger.debug("DEBUG: post context %s", context) From 59728e9d47d14c7b37bc806aa42816e318ea45b2 Mon Sep 17 00:00:00 2001 From: Zack Tobar Date: Wed, 20 Dec 2023 12:12:13 -0600 Subject: [PATCH 34/93] Add catch for service url ending with slash --- nautobot_chatops/api/views/ms_teams.py | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/nautobot_chatops/api/views/ms_teams.py b/nautobot_chatops/api/views/ms_teams.py index c3558475..abb75bcc 100644 --- a/nautobot_chatops/api/views/ms_teams.py +++ b/nautobot_chatops/api/views/ms_teams.py @@ -149,14 +149,11 @@ def post(self, request, *args, **kwargs): "bot_name": body["recipient"]["name"], "bot_role": body["recipient"].get("role"), "message_id": body["id"], - "service_url": body["serviceUrl"], + "service_url": body["serviceUrl"].rstrip("/"), "tenant_id": body["channelData"]["tenant"]["id"], "is_group": body["conversation"].get("isGroup", False), } - # Update service_url if ending with a slash - context["service_url"] = context["service_url"].strip("/") - logger.debug("DEBUG: post context %s", context) if context["org_id"]: From a58b0a89f118763922b9645e982f59c2bb03bfe8 Mon Sep 17 00:00:00 2001 From: Jeremy White Date: Wed, 27 Dec 2023 08:10:52 -0600 Subject: [PATCH 35/93] initial renaming commit --- .../pull_request_template.md | 2 +- .github/workflows/ci.yml | 2 +- .github/workflows/upstream_testing.yml | 2 +- CHANGELOG.md | 2 +- README.md | 24 ++++---- development/towncrier_template.j2 | 2 +- docs/admin/compatibility_matrix.md | 2 +- docs/admin/install/grafana_setup.md | 2 +- docs/admin/install/ipfabric_setup.md | 4 +- docs/admin/install/mattermost_setup.md | 2 +- docs/admin/install/microsoft_teams_setup.md | 4 +- docs/admin/install/slack_setup.md | 20 +++---- docs/admin/install/webex_setup.md | 6 +- docs/admin/release_notes/version_1.1.md | 8 +-- docs/admin/release_notes/version_1.10.md | 4 +- docs/admin/release_notes/version_1.11.md | 18 +++--- docs/admin/release_notes/version_1.2.md | 4 +- docs/admin/release_notes/version_1.3.md | 6 +- docs/admin/release_notes/version_1.4.md | 12 ++-- docs/admin/release_notes/version_1.5.md | 8 +-- docs/admin/release_notes/version_1.6.md | 6 +- docs/admin/release_notes/version_1.7.md | 14 ++--- docs/admin/release_notes/version_1.8.md | 4 +- docs/admin/release_notes/version_1.9.md | 14 ++--- docs/admin/release_notes/version_2.0.md | 56 +++++++++---------- docs/admin/release_notes/version_2.1.md | 4 +- docs/admin/release_notes/version_3.0.md | 10 ++-- docs/admin/uninstall.md | 4 +- docs/admin/upgrade.md | 2 +- docs/dev/contributing.md | 2 +- docs/dev/design.md | 12 ++-- docs/dev/dev_environment.md | 22 ++++---- docs/dev/release_checklist.md | 2 +- docs/models/chatopsaccountlink.md | 2 +- docs/models/commandtoken.md | 4 +- docs/user/app_getting_started.md | 2 +- docs/user/app_overview.md | 2 +- docs/user/ipfabric_commands.md | 2 +- mkdocs.yml | 4 +- nautobot_chatops/__init__.py | 8 +-- nautobot_chatops/admin.py | 2 +- nautobot_chatops/api/__init__.py | 2 +- nautobot_chatops/api/serializers.py | 2 +- nautobot_chatops/api/urls.py | 2 +- nautobot_chatops/api/views/__init__.py | 2 +- nautobot_chatops/api/views/webex.py | 2 +- nautobot_chatops/constants.py | 2 +- nautobot_chatops/dispatchers/__init__.py | 2 +- nautobot_chatops/dispatchers/base.py | 2 +- nautobot_chatops/integrations/aci/worker.py | 2 +- .../integrations/ansible/tower.py | 2 +- .../integrations/grafana/api/urls.py | 2 +- .../grafana/api/views/__init__.py | 2 +- .../integrations/grafana/api/views/generic.py | 2 +- .../integrations/grafana/exceptions.py | 2 +- .../integrations/grafana/tables.py | 6 +- nautobot_chatops/integrations/grafana/urls.py | 2 +- .../integrations/grafana/views.py | 2 +- .../integrations/ipfabric/context.py | 2 +- .../integrations/ipfabric/worker.py | 2 +- .../integrations/panorama/worker.py | 2 +- nautobot_chatops/metrics.py | 2 +- nautobot_chatops/metrics_app.py | 2 +- nautobot_chatops/navigation.py | 2 +- nautobot_chatops/tests/__init__.py | 2 +- nautobot_chatops/tests/aci/__init__.py | 2 +- nautobot_chatops/tests/ansible/__init__.py | 2 +- nautobot_chatops/tests/grafana/__init__.py | 2 +- .../tests/grafana/test_workers.py | 2 +- nautobot_chatops/tests/panorama/__init__.py | 2 +- nautobot_chatops/urls.py | 2 +- nautobot_chatops/views.py | 2 +- nautobot_chatops/workers/__init__.py | 4 +- pyproject.toml | 8 +-- tasks.py | 2 +- 75 files changed, 196 insertions(+), 196 deletions(-) diff --git a/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md b/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md index 3950227c..b1eba070 100644 --- a/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md +++ b/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md @@ -31,5 +31,5 @@ - [ ] Attached Screenshots, Payload Example - [ ] Unit, Integration Tests - [ ] Documentation Updates (when adding/changing features) -- [ ] Example Plugin Updates (when adding/changing features) +- [ ] Example App Updates (when adding/changing features) - [ ] Outline Remaining Work, Constraints from Design diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index eeb536ab..b3160b08 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,7 +13,7 @@ on: # yamllint disable-line rule:truthy rule:comments pull_request: ~ env: - PLUGIN_NAME: "nautobot-plugin-chatops" + PLUGIN_NAME: "nautobot-app-chatops" jobs: black: diff --git a/.github/workflows/upstream_testing.yml b/.github/workflows/upstream_testing.yml index b23adc45..f8bc77b5 100644 --- a/.github/workflows/upstream_testing.yml +++ b/.github/workflows/upstream_testing.yml @@ -10,4 +10,4 @@ jobs: uses: "nautobot/nautobot/.github/workflows/plugin_upstream_testing_base.yml@develop" with: # Below could potentially be collapsed into a single argument if a concrete relationship between both is enforced invoke_context_name: "NAUTOBOT_CHATOPS" - plugin_name: "nautobot-plugin-chatops" + plugin_name: "nautobot-app-chatops" diff --git a/CHANGELOG.md b/CHANGELOG.md index 1331da75..cd6a4584 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,4 @@ -# Changelog - Nautobot Plugin ChatOps +# Changelog - Nautobot App ChatOps The changelog has been moved to the [project release notes](https://docs.nautobot.com/projects/chatops/en/latest/admin/release_notes/). diff --git a/README.md b/README.md index 36c0a150..721913b0 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,9 @@ # Nautobot ChatOps

- +
-
+ @@ -25,9 +25,9 @@ - Cisco Meraki - Palo Alto Panorama - Write a command once and run it on every supported platform, including rich content formatting. -- Extensible - other Nautobot plugins can provide additional commands which will be dynamically discovered. +- Extensible - other Nautobot apps can provide additional commands which will be dynamically discovered. - Automatic generation of basic help menus (accessed via `help`, `/command help`, or `/command sub-command help`). -- Metrics of command usage via the `nautobot_capacity_metrics` plugin. +- Metrics of command usage via the `nautobot_capacity_metrics` app. ## Documentation @@ -63,15 +63,15 @@ Sign up [here](https://slack.networktocode.com/) ## Acknowledgements -This project includes code originally written in separate plugins, which have been merged into this project: +This project includes code originally written in separate apps, which have been merged into this project: -- [nautobot-plugin-chatops-aci](https://github.com/nautobot/nautobot-plugin-chatops-aci): +- [nautobot-plugin-chatops-aci](https://github.com/nautobot/nautobot-app-chatops-aci): Thanks [@mamullen13316](https://github.com/mamullen13316), [@smk4664](https://github.com/smk4664), [@ubajze](https://github.com/ubajze), [@whitej6](https://github.com/whitej6), -- [nautobot-plugin-chatops-ansible](https://github.com/nautobot/nautobot-plugin-chatops-ansible): +- [nautobot-plugin-chatops-ansible](https://github.com/nautobot/nautobot-app-chatops-ansible): Thanks [@chipn](https://github.com/chipn), [@dgjustice](https://github.com/dgjustice), @@ -81,12 +81,12 @@ This project includes code originally written in separate plugins, which have be [@smk4664](https://github.com/smk4664), [@ubajze](https://github.com/ubajze), [@whitej6](https://github.com/whitej6), -- [nautobot-plugin-chatops-arista-cloudvision](https://github.com/nautobot/nautobot-plugin-chatops-arista-cloudvision): +- [nautobot-plugin-chatops-arista-cloudvision](https://github.com/nautobot/nautobot-app-chatops-arista-cloudvision): Thanks [@qduk](https://github.com/qduk), [@ubajze](https://github.com/ubajze), [@whitej6](https://github.com/whitej6), -- [nautobot-plugin-chatops-grafana](https://github.com/nautobot/nautobot-plugin-chatops-grafana): +- [nautobot-plugin-chatops-grafana](https://github.com/nautobot/nautobot-app-chatops-grafana): Thanks [@jedelman8](https://github.com/jedelman8), [@josh-silvas](https://github.com/josh-silvas), @@ -94,7 +94,7 @@ This project includes code originally written in separate plugins, which have be [@tim-fiola](https://github.com/tim-fiola), [@ubajze](https://github.com/ubajze), [@whitej6](https://github.com/whitej6), -- [nautobot-plugin-chatops-ipfabric](https://github.com/nautobot/nautobot-plugin-chatops-ipfabric): +- [nautobot-plugin-chatops-ipfabric](https://github.com/nautobot/nautobot-app-chatops-ipfabric): Thanks [@alhogan](https://github.com/alhogan), [@chadell](https://github.com/chadell), @@ -106,7 +106,7 @@ This project includes code originally written in separate plugins, which have be [@smk4664](https://github.com/smk4664), [@ubajze](https://github.com/ubajze), [@whitej6](https://github.com/whitej6), -- [nautobot-plugin-chatops-meraki](https://github.com/nautobot/nautobot-plugin-chatops-meraki): +- [nautobot-plugin-chatops-meraki](https://github.com/nautobot/nautobot-app-chatops-meraki): Thanks [@jedelman8](https://github.com/jedelman8), [@jeffkala](https://github.com/jeffkala), @@ -114,7 +114,7 @@ This project includes code originally written in separate plugins, which have be [@tim-fiola](https://github.com/tim-fiola), [@ubajze](https://github.com/ubajze), [@whitej6](https://github.com/whitej6), -- [nautobot-plugin-chatops-panorama](https://github.com/nautobot/nautobot-plugin-chatops-panorama): +- [nautobot-plugin-chatops-panorama](https://github.com/nautobot/nautobot-app-chatops-panorama): Thanks [@FragmentedPacket](https://github.com/FragmentedPacket), [@PhillSimonds](https://github.com/PhillSimonds), diff --git a/development/towncrier_template.j2 b/development/towncrier_template.j2 index b4d289b2..618f0214 100644 --- a/development/towncrier_template.j2 +++ b/development/towncrier_template.j2 @@ -1,5 +1,5 @@ {% if render_title %} -## [v{{ versiondata.version }} ({{ versiondata.date }})](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v{{ versiondata.version}}) +## [v{{ versiondata.version }} ({{ versiondata.date }})](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v{{ versiondata.version}}) {% endif %} {% for section, _ in sections.items() %} diff --git a/docs/admin/compatibility_matrix.md b/docs/admin/compatibility_matrix.md index bdea453b..c799cf60 100644 --- a/docs/admin/compatibility_matrix.md +++ b/docs/admin/compatibility_matrix.md @@ -4,7 +4,7 @@ Changes to the support of upstream Nautobot releases will be announced 1 minor o The **deprecation policy** will be announced within the [release notes](release_notes/index.md), and updated in the table below. There will be a `stable-.` branch that will be minimally maintained. Any security enhancements or major bugs in that branch will be supported for a limited time. -While that last supported version will not be strictly enforced via the `max_version` setting, any issues with an updated Nautobot supported version in a minor release will require raising a bug and fixing it in Nautobot core, with no fixes expected in this plugin. This allows the Chatops plugin the ability to quickly take advantage of the latest features in Nautobot. +While that last supported version will not be strictly enforced via the `max_version` setting, any issues with an updated Nautobot supported version in a minor release will require raising a bug and fixing it in Nautobot core, with no fixes expected in this app. This allows the Chatops app the ability to quickly take advantage of the latest features in Nautobot. | Chatops Version | Nautobot First Support Version | Nautobot Last Support Version | | --------------- | ------------------------------ | ----------------------------- | diff --git a/docs/admin/install/grafana_setup.md b/docs/admin/install/grafana_setup.md index 87db5dcf..d6ea815c 100644 --- a/docs/admin/install/grafana_setup.md +++ b/docs/admin/install/grafana_setup.md @@ -13,7 +13,7 @@ Before configuring the integration, please ensure the following: - `nautobot-chatops` App is set up with at least one [enabled chat platform](./index.md#chat-platforms-configuration) and [tested](./index.md#test-your-chatbot). - [Grafana](https://grafana.com/docs/grafana/latest/installation/) application installed and configured with dashboards and panels. - [Grafana Image Rendering Service](https://grafana.com/docs/grafana/latest/administration/image_rendering/) installed. -- [Grafana Image Rending Plugin for Grafana](https://grafana.com/grafana/plugins/grafana-image-renderer/) installed in your Grafana application. +- [Grafana Image Rending App for Grafana](https://grafana.com/grafana/plugins/grafana-image-renderer/) installed in your Grafana application. ## Command Setup diff --git a/docs/admin/install/ipfabric_setup.md b/docs/admin/install/ipfabric_setup.md index 66587436..96b1985a 100644 --- a/docs/admin/install/ipfabric_setup.md +++ b/docs/admin/install/ipfabric_setup.md @@ -14,7 +14,7 @@ Before configuring the integration, please ensure the following: ## Version Matrix -Here is a compatibility matrix and the minimum versions required to run this plugin: +Here is a compatibility matrix and the minimum versions required to run this app: | IP Fabric | Python | Nautobot | chatops | chatops-ipfabric | [python-ipfabric](https://github.com/community-fabric/python-ipfabric) | [python-ipfabric-diagrams](https://github.com/community-fabric/python-ipfabric-diagrams) | |-----------|--------|----------|---------|------------------|------------------------------------------------------------------------|------------------------------------------------------------------------------------------| @@ -96,6 +96,6 @@ PLUGINS_CONFIG = { ``` !!! warning - Configuration keys for IPFabric integration are now lowercased, compared to the old plugin. + Configuration keys for IPFabric integration are now lowercased, compared to the old app. Environment variables for this integration are the same for both, old and new configuration. diff --git a/docs/admin/install/mattermost_setup.md b/docs/admin/install/mattermost_setup.md index d437f6fb..cc0c5f4a 100644 --- a/docs/admin/install/mattermost_setup.md +++ b/docs/admin/install/mattermost_setup.md @@ -39,4 +39,4 @@ ## General Chat Setup Instructions -See [admin_install](index.md) instructions here for general plugin setup instructions. +See [admin_install](index.md) instructions here for general app setup instructions. diff --git a/docs/admin/install/microsoft_teams_setup.md b/docs/admin/install/microsoft_teams_setup.md index beb16952..20baaf56 100644 --- a/docs/admin/install/microsoft_teams_setup.md +++ b/docs/admin/install/microsoft_teams_setup.md @@ -25,7 +25,7 @@ ## MS Teams Developer Portal 1. To deploy the bot to your team, log in to the [Microsoft Developer Portal](https://dev.teams.microsoft.com/) and select “Apps” from the left-hand menu. -2. Select "Import app" and upload the Nautobot ChatOps_ms_teams.zip file. It can be found from this directory or downloaded from GitHub [here](https://github.com/nautobot/nautobot-plugin-chatops/blob/develop/Nautobot_ms_teams.zip). **NOTE:** If you get an error stating “App package has errors”, you can ignore this and click on “Import” to complete the import. +2. Select "Import app" and upload the Nautobot ChatOps_ms_teams.zip file. It can be found from this directory or downloaded from GitHub [here](https://github.com/nautobot/nautobot-app-chatops/blob/develop/Nautobot_ms_teams.zip). **NOTE:** If you get an error stating “App package has errors”, you can ignore this and click on “Import” to complete the import. 3. Under section “Configure”, select “Basic Information”. Scroll to the bottom. Under “Application (client) ID, type in the value that you took note of above in Azure step 10. 4. Under section “Configure”, select “App features”. Select the triple dots (...) next to the “Bot” tile and select “Edit”. 5. On the Bot Edit page, under section “Identify your bot,” select “Enter a bot ID” and type in the same App ID value used above in step 4. Click Save. @@ -53,4 +53,4 @@ Reference the [Setting Up Nautobot ChatOps With MSTeams Fall 2022](https://blog. ## General Chat Setup Instructions -See [admin_install](index.md) instructions here for general plugin setup instructions. +See [admin_install](index.md) instructions here for general app setup instructions. diff --git a/docs/admin/install/slack_setup.md b/docs/admin/install/slack_setup.md index 95c62921..0a10659f 100644 --- a/docs/admin/install/slack_setup.md +++ b/docs/admin/install/slack_setup.md @@ -18,7 +18,7 @@ For now, take a mental note that in this section where we are configuring the Sl Example config snippet from `nautobot_config.py` for configuring ChatOps with Slack: ```python -# Enable installed plugins. Add the name of each plugin to the list. +# Enable installed apps. Add the name of each app to the list. PLUGINS = ["nautobot_chatops"] PLUGINS_CONFIG = { @@ -32,13 +32,13 @@ PLUGINS_CONFIG = { !!! info Optional: Logos rely on Slack being able to access the Static URL provided by Nautobot. If you are running - Slack in Socket Mode, Nautobot ChatOps Plugin will need you to specify where the static files are hosted. + Slack in Socket Mode, Nautobot ChatOps App will need you to specify where the static files are hosted. This is helpful for giving Slack access to only the server hosting Nautobot Static Files. To configure the static files host, use `slack_socket_static_host` ex. `slack_socket_static_host: 'https://example.com/static/'`. ## Connecting to Slack -The Nautobot ChatOps plugin supports two methods of communicating with Slack. +The Nautobot ChatOps app supports two methods of communicating with Slack. 1. Incoming Webhooks 2. Socket Mode @@ -48,7 +48,7 @@ The Nautobot ChatOps plugin supports two methods of communicating with Slack. ### Webhooks vs. Socket Mode -With incoming webhooks, whenever a user sends a message to the bot via the client application (phone or desktop app), (1) the connection is initiated from the client, and the message gets sent to Slack's cloud. The Slack servers then initiate a connection to the ChatOps plugin running on the Nautobot server (2). Since this is a new, incoming connection, it must be port forwarded and allowed through any firewalls in your network between the internet and your Nautobot server (3). Nautobot then replies to the existing connection to Slack, which in turn forwards the response to the client. +With incoming webhooks, whenever a user sends a message to the bot via the client application (phone or desktop app), (1) the connection is initiated from the client, and the message gets sent to Slack's cloud. The Slack servers then initiate a connection to the ChatOps app running on the Nautobot server (2). Since this is a new, incoming connection, it must be port forwarded and allowed through any firewalls in your network between the internet and your Nautobot server (3). Nautobot then replies to the existing connection to Slack, which in turn forwards the response to the client. ![Chatops Slack Webhooks Mode](../../images/chatops-slack-webhooks-mode.png) @@ -64,7 +64,7 @@ While there are sufficient ways of securing inbound API requests from the public 1. Log in to [https://api.slack.com/apps](https://api.slack.com/apps) and select "Create New App". Select "From an app manifest." 2. Select your preferred Slack workspace for your app. -3. In the window titled "Enter app manifest below," select the "YAML" formatting tab and copy/paste the contents of file [nautobot_slack_manifest.yml](https://github.com/nautobot/nautobot-plugin-chatops/blob/develop/setup_files/nautobot_slack_manifest.yml) from this repo. Update the below settings, then click Next. +3. In the window titled "Enter app manifest below," select the "YAML" formatting tab and copy/paste the contents of file [nautobot_slack_manifest.yml](https://github.com/nautobot/nautobot-app-chatops/blob/develop/setup_files/nautobot_slack_manifest.yml) from this repo. Update the below settings, then click Next. - On line 5, you can change the name of the Chatbot here. By default it is set to `Nautobot` - If using Socket mode: - On line 34, update `socket_mode_enabled` to `true` @@ -85,7 +85,7 @@ While there are sufficient ways of securing inbound API requests from the public 8. Under Settings --> Install App, copy the `Bot User OAuth Token` here. This will be needed later for setting `SLACK_API_TOKEN`. 9. Continue with below section "Post App-Creation Steps" -> **Optional:** You can configure the App Icon on the General --> Basic Information page. Under `App Icon`, select "Choose File." You can use the supplied icon [nautobot_chatops_icon.png](https://github.com/nautobot/nautobot-plugin-chatops/blob/develop/setup_files/nautobot_chatops_icon.png). +> **Optional:** You can configure the App Icon on the General --> Basic Information page. Under `App Icon`, select "Choose File." You can use the supplied icon [nautobot_chatops_icon.png](https://github.com/nautobot/nautobot-app-chatops/blob/develop/setup_files/nautobot_chatops_icon.png). ## Post App-Creation Steps @@ -149,7 +149,7 @@ They will be differentiated in the workspace using the `slack_slash_command_pref Here is an example `nautobot_config.py` for the first Nautobot chatbot implementation in the workspace. This chatbot will be called in the workspace using `/nautobot`. ```python -# Enable installed plugins. Add the name of each plugin to the list. +# Enable installed apps. Add the name of each app to the list. PLUGINS = ["nautobot_chatops"] PLUGINS_CONFIG = { @@ -166,7 +166,7 @@ This configuration explicitly configures the `slack_slash_command_prefix` key/va This chatbot will be called in the workspace using `/network2-nautobot`. ```python -# Enable installed plugins. Add the name of each plugin to the list. +# Enable installed apps. Add the name of each app to the list. PLUGINS = ["nautobot_chatops"] PLUGINS_CONFIG = { @@ -186,7 +186,7 @@ PLUGINS_CONFIG = { ## General Chat Setup Instructions -See [admin_install](index.md) instructions here for general plugin setup instructions. +See [admin_install](index.md) instructions here for general app setup instructions. ## Startup Slack Sockets (Socket Mode) @@ -277,7 +277,7 @@ While this method is still possible, we recommend using the App Manifest method > `/network2-nautobot` command would have a `slack_slash_command_prefix` of `/network2-` 4. On the "Basic Information" page for your app, under "App Credentials", find the "Signing Secret" and click "Show". - You will need to configure this value for the plugin as the `slack_signing_secret` value, such as through an + You will need to configure this value for the app as the `slack_signing_secret` value, such as through an `.env` file. If this value is not correctly configured, the bot will be unable to validate that inbound notifications it receives have been properly signed by the Slack server. 5. In the sidebar to the left, select "OAuth & Permissions". diff --git a/docs/admin/install/webex_setup.md b/docs/admin/install/webex_setup.md index 8d816ef3..3304269f 100644 --- a/docs/admin/install/webex_setup.md +++ b/docs/admin/install/webex_setup.md @@ -32,7 +32,7 @@ ## Deprecation Warning -As of Nautobot ChatOps Plugin v2.0.0, there are the following changes: +As of Nautobot ChatOps App v2.0.0, there are the following changes: - The deprecated URL API path `webex_teams` has been removed. Please use `webex` as a substitute. - The use and deprecation warnings for the obsolete `webex_teams` App configuration entries have been removed. These entries include: @@ -50,7 +50,7 @@ As of Nautobot ChatOps Plugin v2.0.0, there are the following changes: } ``` -As of Nautobot ChatOps Plugin v1.4.0, the PLUGIN_CONFIG settings for Webex has changed to align with the official renaming of `Webex Teams` to `Webex`: +As of Nautobot ChatOps App v1.4.0, the PLUGIN_CONFIG settings for Webex has changed to align with the official renaming of `Webex Teams` to `Webex`: - `enable_webex_teams` is deprecated. Use `enable_webex` instead. - `webex_teams_token` is deprecated. Use `webex_token` instead. @@ -60,4 +60,4 @@ Both settings will currently work, however support for `enable_webex_teams`, `we ## General Chat Setup Instructions -See [admin_install](index.md) instructions here for general plugin setup instructions. +See [admin_install](index.md) instructions here for general app setup instructions. diff --git a/docs/admin/release_notes/version_1.1.md b/docs/admin/release_notes/version_1.1.md index 4965d501..ba7b8b26 100644 --- a/docs/admin/release_notes/version_1.1.md +++ b/docs/admin/release_notes/version_1.1.md @@ -1,12 +1,12 @@ # v1.1 Release Notes -## [v1.1.0](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v1.1.0) +## [v1.1.0](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v1.1.0) ### What's New -- Slack handling of list items > 100 items, now including a `next` option in the drop down list to get more options [#10](https://github.com/nautobot/nautobot-plugin-chatops/pull/10) +- Slack handling of list items > 100 items, now including a `next` option in the drop down list to get more options [#10](https://github.com/nautobot/nautobot-app-chatops/pull/10) ### Bug Fixes -- Updated MS Teams Zip File [#29](https://github.com/nautobot/nautobot-plugin-chatops/pull/29) -- Fix connection filter ordering [#23](https://github.com/nautobot/nautobot-plugin-chatops/pull/23) +- Updated MS Teams Zip File [#29](https://github.com/nautobot/nautobot-app-chatops/pull/29) +- Fix connection filter ordering [#23](https://github.com/nautobot/nautobot-app-chatops/pull/23) diff --git a/docs/admin/release_notes/version_1.10.md b/docs/admin/release_notes/version_1.10.md index af7c313e..16037214 100644 --- a/docs/admin/release_notes/version_1.10.md +++ b/docs/admin/release_notes/version_1.10.md @@ -3,11 +3,11 @@ -## [v1.10.0](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v1.10.0) +## [v1.10.0](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v1.10.0) ### What's Changed * Drop official support for Nautobot <1.3.0 * Add support for Slack Socket Mode. -[**Full Changelog**](https://github.com/nautobot/nautobot-plugin-chatops/compare/v1.9.1...v1.10.0) +[**Full Changelog**](https://github.com/nautobot/nautobot-app-chatops/compare/v1.9.1...v1.10.0) diff --git a/docs/admin/release_notes/version_1.11.md b/docs/admin/release_notes/version_1.11.md index 1bd87485..33834515 100644 --- a/docs/admin/release_notes/version_1.11.md +++ b/docs/admin/release_notes/version_1.11.md @@ -2,21 +2,21 @@ # v1.11 Release Notes -## [v1.11.0 (2023-03-11)](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v1.11.0) +## [v1.11.0 (2023-03-11)](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v1.11.0) ### Added -- [#166](https://github.com/nautobot/nautobot-plugin-chatops/issues/166) - Add documentation for contributing WebSocket Platform support. -- [#171](https://github.com/nautobot/nautobot-plugin-chatops/issues/171) - Enable Upstream Testing with Nautobot. -- [#182](https://github.com/nautobot/nautobot-plugin-chatops/issues/182) - Add option to limit Help prompt based on user Access Grants. +- [#166](https://github.com/nautobot/nautobot-app-chatops/issues/166) - Add documentation for contributing WebSocket Platform support. +- [#171](https://github.com/nautobot/nautobot-app-chatops/issues/171) - Enable Upstream Testing with Nautobot. +- [#182](https://github.com/nautobot/nautobot-app-chatops/issues/182) - Add option to limit Help prompt based on user Access Grants. ### Changed -- [#94](https://github.com/nautobot/nautobot-plugin-chatops/issues/94) - Clarified the description of Access Grants for Webex Teams. -- [#147](https://github.com/nautobot/nautobot-plugin-chatops/issues/147) - Left Align Column headers for tables to match the rows. -- [#173](https://github.com/nautobot/nautobot-plugin-chatops/issues/173) - Update App description. -- [#174](https://github.com/nautobot/nautobot-plugin-chatops/issues/174) - Change list views to use generic/object_list.html template. +- [#94](https://github.com/nautobot/nautobot-app-chatops/issues/94) - Clarified the description of Access Grants for Webex Teams. +- [#147](https://github.com/nautobot/nautobot-app-chatops/issues/147) - Left Align Column headers for tables to match the rows. +- [#173](https://github.com/nautobot/nautobot-app-chatops/issues/173) - Update App description. +- [#174](https://github.com/nautobot/nautobot-app-chatops/issues/174) - Change list views to use generic/object_list.html template. ### Removed -- [#138](https://github.com/nautobot/nautobot-plugin-chatops/issues/138) - Remove WEBEX_TOKEN warning when Webex is disabled. +- [#138](https://github.com/nautobot/nautobot-app-chatops/issues/138) - Remove WEBEX_TOKEN warning when Webex is disabled. diff --git a/docs/admin/release_notes/version_1.2.md b/docs/admin/release_notes/version_1.2.md index 14344158..8049818c 100644 --- a/docs/admin/release_notes/version_1.2.md +++ b/docs/admin/release_notes/version_1.2.md @@ -1,10 +1,10 @@ # v1.2 Release Notes -## [v1.2.0](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v1.2.0) +## [v1.2.0](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v1.2.0) - Replaces Slack client (slack_client) with Slack SDK (https://pypi.org/project/slack-sdk/) - This update does not require any code changes to the bots that leverage Slack. This does require the update of system requirements on installation. ### Fixes -[#2](https://github.com/nautobot/nautobot-plugin-chatops/issues/2) - Cisco WebEx error on content too large +[#2](https://github.com/nautobot/nautobot-app-chatops/issues/2) - Cisco WebEx error on content too large diff --git a/docs/admin/release_notes/version_1.3.md b/docs/admin/release_notes/version_1.3.md index 3e428eb7..3c6f50dd 100644 --- a/docs/admin/release_notes/version_1.3.md +++ b/docs/admin/release_notes/version_1.3.md @@ -1,6 +1,6 @@ # v1.3 Release Notes -## [v1.3.0](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v1.3.0) +## [v1.3.0](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v1.3.0) Updates to pyjwt to address concerns with other dependencies in the Nautobot ecosystem. @@ -9,8 +9,8 @@ Updates to pyjwt to address concerns with other dependencies in the Nautobot eco Updates pyjwt from 1.7.1 minimum to 2.1 Adds cryptography as separate requirement -## [v1.3.1](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v1.3.1) +## [v1.3.1](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v1.3.1) ### Fixes -- [#54)](https://github.com/nautobot/nautobot-plugin-chatops/pull/54) Reverted pinning of cryptography +- [#54)](https://github.com/nautobot/nautobot-app-chatops/pull/54) Reverted pinning of cryptography diff --git a/docs/admin/release_notes/version_1.4.md b/docs/admin/release_notes/version_1.4.md index cdb23dc0..61f9334b 100644 --- a/docs/admin/release_notes/version_1.4.md +++ b/docs/admin/release_notes/version_1.4.md @@ -1,19 +1,19 @@ # v1.4 Release Notes -## [v1.4.0](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v1.4.0) +## [v1.4.0](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v1.4.0) Updates Nautobot ChatOps name for Webex Teams to Webex. As part of Cisco's renaming of Webex Teams to just Webex, the underlying configuration was updated. ### Fixes -[#68)](https://github.com/nautobot/nautobot-plugin-chatops/pull/68) Correct var names for Nautobot -[#61)](https://github.com/nautobot/nautobot-plugin-chatops/pull/61) Mattermost sending interactive Dialog +[#68)](https://github.com/nautobot/nautobot-app-chatops/pull/68) Correct var names for Nautobot +[#61)](https://github.com/nautobot/nautobot-app-chatops/pull/61) Mattermost sending interactive Dialog ### Updates -[#63)](https://github.com/nautobot/nautobot-plugin-chatops/pull/63) Add additional Breadcrumbs -[#24](https://github.com/nautobot/nautobot-plugin-chatops/issues/24) Rename Webex Teams to Webex +[#63)](https://github.com/nautobot/nautobot-app-chatops/pull/63) Add additional Breadcrumbs +[#24](https://github.com/nautobot/nautobot-app-chatops/issues/24) Rename Webex Teams to Webex -## [v1.4.1](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v1.4.1) +## [v1.4.1](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v1.4.1) Minor update to better handle the versioning. This fixes an issue where the version number within Nautobot was not updated alongside the pyproject.toml. diff --git a/docs/admin/release_notes/version_1.5.md b/docs/admin/release_notes/version_1.5.md index 86b23057..d88ead04 100644 --- a/docs/admin/release_notes/version_1.5.md +++ b/docs/admin/release_notes/version_1.5.md @@ -1,7 +1,7 @@ # v1.5 Release Notes -## [v1.5.0](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v1.5.0) +## [v1.5.0](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v1.5.0) ### Updates @@ -10,10 +10,10 @@ ### Fixes -[#17](https://github.com/nautobot/nautobot-plugin-chatops/issues/17) - Error with filtering by empty regions, no message back +[#17](https://github.com/nautobot/nautobot-app-chatops/issues/17) - Error with filtering by empty regions, no message back -## [v1.5.1](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v1.5.1) +## [v1.5.1](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v1.5.1) ### Fixes -[#97](https://github.com/nautobot/nautobot-plugin-chatops/pull/97) Fixes MS Teams Bold markdown. Moves from `****` to `**` to align with guides from Microsoft +[#97](https://github.com/nautobot/nautobot-app-chatops/pull/97) Fixes MS Teams Bold markdown. Moves from `****` to `**` to align with guides from Microsoft diff --git a/docs/admin/release_notes/version_1.6.md b/docs/admin/release_notes/version_1.6.md index fa355432..4cd9f5f2 100644 --- a/docs/admin/release_notes/version_1.6.md +++ b/docs/admin/release_notes/version_1.6.md @@ -1,8 +1,8 @@ # v1.6 Release Notes -## [v1.6.0](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v1.6.0) +## [v1.6.0](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v1.6.0) ### Additions -[#123](https://github.com/nautobot/nautobot-plugin-chatops/pull/123) Added export button for chat command usage as CSV -[#120](https://github.com/nautobot/nautobot-plugin-chatops/pull/120) Added `send_all_messages_private` setting +[#123](https://github.com/nautobot/nautobot-app-chatops/pull/123) Added export button for chat command usage as CSV +[#120](https://github.com/nautobot/nautobot-app-chatops/pull/120) Added `send_all_messages_private` setting diff --git a/docs/admin/release_notes/version_1.7.md b/docs/admin/release_notes/version_1.7.md index 46c061b2..14a00434 100644 --- a/docs/admin/release_notes/version_1.7.md +++ b/docs/admin/release_notes/version_1.7.md @@ -1,20 +1,20 @@ # v1.7 Release Notes -## [v1.7.0](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v1.7.0) +## [v1.7.0](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v1.7.0) ### Additions -[#128](https://github.com/nautobot/nautobot-plugin-chatops/pull/128) Adds QOL change for focusing of fields +[#128](https://github.com/nautobot/nautobot-app-chatops/pull/128) Adds QOL change for focusing of fields ### Fixes -[#129](https://github.com/nautobot/nautobot-plugin-chatops/pull/129) Fixes errors on private messages -[#128](https://github.com/nautobot/nautobot-plugin-chatops/pull/128) Access grants updates +[#129](https://github.com/nautobot/nautobot-app-chatops/pull/129) Fixes errors on private messages +[#128](https://github.com/nautobot/nautobot-app-chatops/pull/128) Access grants updates -## [v1.7.1](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v1.7.1) +## [v1.7.1](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v1.7.1) ### What's Changed -* Fix slack msg limits by @jvanderaa in [#133](https://github.com/nautobot/nautobot-plugin-chatops/pull/133) +* Fix slack msg limits by @jvanderaa in [#133](https://github.com/nautobot/nautobot-app-chatops/pull/133) -[**Full Changelog**](https://github.com/nautobot/nautobot-plugin-chatops/compare/v1.7.0...v1.7.1) \ No newline at end of file +[**Full Changelog**](https://github.com/nautobot/nautobot-app-chatops/compare/v1.7.0...v1.7.1) \ No newline at end of file diff --git a/docs/admin/release_notes/version_1.8.md b/docs/admin/release_notes/version_1.8.md index 7d00bfe0..e15d6c4e 100644 --- a/docs/admin/release_notes/version_1.8.md +++ b/docs/admin/release_notes/version_1.8.md @@ -1,6 +1,6 @@ # v1.8 Release Notes -## [v1.8.0](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v1.8.0) +## [v1.8.0](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v1.8.0) ### What's Changed @@ -8,4 +8,4 @@ * Drop support for Nautobot <1.1.0 * Drop support for Python3.6 -[**Full Changelog**](https://github.com/nautobot/nautobot-plugin-chatops/compare/v1.7.1...v1.8.0) \ No newline at end of file +[**Full Changelog**](https://github.com/nautobot/nautobot-app-chatops/compare/v1.7.1...v1.8.0) \ No newline at end of file diff --git a/docs/admin/release_notes/version_1.9.md b/docs/admin/release_notes/version_1.9.md index 49163547..26af12a5 100644 --- a/docs/admin/release_notes/version_1.9.md +++ b/docs/admin/release_notes/version_1.9.md @@ -1,21 +1,21 @@ # v1.9 Release Notes -## [v1.9.1](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v1.9.1) +## [v1.9.1](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v1.9.1) ### What's Changed -* Fix broken docs link [#150](https://github.com/nautobot/nautobot-plugin-chatops/pull/150) and [#151](https://github.com/nautobot/nautobot-plugin-chatops/pull/151) +* Fix broken docs link [#150](https://github.com/nautobot/nautobot-app-chatops/pull/150) and [#151](https://github.com/nautobot/nautobot-app-chatops/pull/151) -[**Full Changelog**](https://github.com/nautobot/nautobot-plugin-chatops/compare/v1.9.0...v1.9.1) +[**Full Changelog**](https://github.com/nautobot/nautobot-app-chatops/compare/v1.9.0...v1.9.1) -## [v1.9.0](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v1.9.0) +## [v1.9.0](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v1.9.0) ### What's Changed * Add support for Nautobot 1.4.0 * Drop support for Nautobot <1.2.0 -* Remove missing action banner [#140](https://github.com/nautobot/nautobot-plugin-chatops/pull/140) -* Fix Mattermost API MattermostInteractionView request_schema [#144](https://github.com/nautobot/nautobot-plugin-chatops/pull/144) +* Remove missing action banner [#140](https://github.com/nautobot/nautobot-app-chatops/pull/140) +* Fix Mattermost API MattermostInteractionView request_schema [#144](https://github.com/nautobot/nautobot-app-chatops/pull/144) -[**Full Changelog**](https://github.com/nautobot/nautobot-plugin-chatops/compare/v1.8.0...v1.9.0) +[**Full Changelog**](https://github.com/nautobot/nautobot-app-chatops/compare/v1.8.0...v1.9.0) diff --git a/docs/admin/release_notes/version_2.0.md b/docs/admin/release_notes/version_2.0.md index 10c7f6ea..329f6735 100644 --- a/docs/admin/release_notes/version_2.0.md +++ b/docs/admin/release_notes/version_2.0.md @@ -2,55 +2,55 @@ # v2.0 Release Notes -## [v2.0.3 (2023-09-22)](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v2.0.3) +## [v2.0.3 (2023-09-22)](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v2.0.3) ### Added -- [#227](https://github.com/nautobot/nautobot-plugin-chatops/issues/227) - Added some tests for VLAN chatops. +- [#227](https://github.com/nautobot/nautobot-app-chatops/issues/227) - Added some tests for VLAN chatops. ### Fixed -- [#227](https://github.com/nautobot/nautobot-plugin-chatops/issues/227) - Fixed parameters that should be set to None if they have not been defined yet by default. -- [#239](https://github.com/nautobot/nautobot-plugin-chatops/issues/239) - Updated IP Fabric Logo. -- [#241](https://github.com/nautobot/nautobot-plugin-chatops/issues/241) - Remove Grafana Navigation and urls if disabled. -- [#253](https://github.com/nautobot/nautobot-plugin-chatops/issues/253) - Sorted the ICMP types from IP Fabric diagrams package. +- [#227](https://github.com/nautobot/nautobot-app-chatops/issues/227) - Fixed parameters that should be set to None if they have not been defined yet by default. +- [#239](https://github.com/nautobot/nautobot-app-chatops/issues/239) - Updated IP Fabric Logo. +- [#241](https://github.com/nautobot/nautobot-app-chatops/issues/241) - Remove Grafana Navigation and urls if disabled. +- [#253](https://github.com/nautobot/nautobot-app-chatops/issues/253) - Sorted the ICMP types from IP Fabric diagrams package. -## [v2.0.2 (2023-08-11)](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v2.0.2) +## [v2.0.2 (2023-08-11)](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v2.0.2) ### Changed -- [#233](https://github.com/nautobot/nautobot-plugin-chatops/pull/233) - Fixed App initialization when `[grafana]` extra is not installed. +- [#233](https://github.com/nautobot/nautobot-app-chatops/pull/233) - Fixed App initialization when `[grafana]` extra is not installed. -## [v2.0.1 (2023-08-08)](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v2.0.1) +## [v2.0.1 (2023-08-08)](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v2.0.1) ### Changed -- [#228](https://github.com/nautobot/nautobot-plugin-chatops/issues/228) - Move Contributing Changelog Fragments higher in documentation +- [#228](https://github.com/nautobot/nautobot-app-chatops/issues/228) - Move Contributing Changelog Fragments higher in documentation -## [v2.0.0 (2023-08-02)](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v2.0.0) +## [v2.0.0 (2023-08-02)](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v2.0.0) ### Added -- [#67](https://github.com/nautobot/nautobot-plugin-chatops/issues/67) - Added the ability within Slack to mention the chat bot by name in a channel and in threads. -- [#194](https://github.com/nautobot/nautobot-plugin-chatops/issues/194) - Added Mattermost container for the development. -- [#194](https://github.com/nautobot/nautobot-plugin-chatops/issues/194) - Improved invoke tasks. -- [#197](https://github.com/nautobot/nautobot-plugin-chatops/issues/197) - Add a try/except block and error logger message when access_token missing from get_token() response. -- [#202](https://github.com/nautobot/nautobot-plugin-chatops/issues/202) - Added Ansible integration from nautobot-plugin-chatops-ansible. -- [#203](https://github.com/nautobot/nautobot-plugin-chatops/issues/203) - Added IP Fabric integration from nautobot-plugin-chatops-ipfabric. -- [#204](https://github.com/nautobot/nautobot-plugin-chatops/issues/204) - Added Arista CloudVision integration from nautobot-plugin-chatops-arista-cloudvision. -- [#205](https://github.com/nautobot/nautobot-plugin-chatops/issues/205) - Added Cisco Meraki integration from nautobot-plugin-chatops-meraki. -- [#206](https://github.com/nautobot/nautobot-plugin-chatops/issues/206) - Added Cisco ACI integration from nautobot-plugin-chatops-aci. -- [#207](https://github.com/nautobot/nautobot-plugin-chatops/issues/207) - Added Panorama integration from nautobot-plugin-chatops-panorama -- [#208](https://github.com/nautobot/nautobot-plugin-chatops/issues/208) - Added Grafana integration from nautobot-plugin-chatops-grafana. +- [#67](https://github.com/nautobot/nautobot-app-chatops/issues/67) - Added the ability within Slack to mention the chat bot by name in a channel and in threads. +- [#194](https://github.com/nautobot/nautobot-app-chatops/issues/194) - Added Mattermost container for the development. +- [#194](https://github.com/nautobot/nautobot-app-chatops/issues/194) - Improved invoke tasks. +- [#197](https://github.com/nautobot/nautobot-app-chatops/issues/197) - Add a try/except block and error logger message when access_token missing from get_token() response. +- [#202](https://github.com/nautobot/nautobot-app-chatops/issues/202) - Added Ansible integration from nautobot-plugin-chatops-ansible. +- [#203](https://github.com/nautobot/nautobot-app-chatops/issues/203) - Added IP Fabric integration from nautobot-plugin-chatops-ipfabric. +- [#204](https://github.com/nautobot/nautobot-app-chatops/issues/204) - Added Arista CloudVision integration from nautobot-plugin-chatops-arista-cloudvision. +- [#205](https://github.com/nautobot/nautobot-app-chatops/issues/205) - Added Cisco Meraki integration from nautobot-plugin-chatops-meraki. +- [#206](https://github.com/nautobot/nautobot-app-chatops/issues/206) - Added Cisco ACI integration from nautobot-plugin-chatops-aci. +- [#207](https://github.com/nautobot/nautobot-app-chatops/issues/207) - Added Panorama integration from nautobot-plugin-chatops-panorama +- [#208](https://github.com/nautobot/nautobot-app-chatops/issues/208) - Added Grafana integration from nautobot-plugin-chatops-grafana. ### Changed -- [#67](https://github.com/nautobot/nautobot-plugin-chatops/issues/67) - Modified the clear command to not work within Slack threads. -- [#196](https://github.com/nautobot/nautobot-plugin-chatops/issues/196) - Update to microsoft IPs and correcting the one in the doc. -- [#218](https://github.com/nautobot/nautobot-plugin-chatops/issues/218) - Added `/clear` command to development Mattermost. -- [#218](https://github.com/nautobot/nautobot-plugin-chatops/issues/218) - Improved integration workers loading. -- [#218](https://github.com/nautobot/nautobot-plugin-chatops/issues/218) - Sorted App config and environment variables. -- [#218](https://github.com/nautobot/nautobot-plugin-chatops/issues/218) - Sorted pyproject configurations. +- [#67](https://github.com/nautobot/nautobot-app-chatops/issues/67) - Modified the clear command to not work within Slack threads. +- [#196](https://github.com/nautobot/nautobot-app-chatops/issues/196) - Update to microsoft IPs and correcting the one in the doc. +- [#218](https://github.com/nautobot/nautobot-app-chatops/issues/218) - Added `/clear` command to development Mattermost. +- [#218](https://github.com/nautobot/nautobot-app-chatops/issues/218) - Improved integration workers loading. +- [#218](https://github.com/nautobot/nautobot-app-chatops/issues/218) - Sorted App config and environment variables. +- [#218](https://github.com/nautobot/nautobot-app-chatops/issues/218) - Sorted pyproject configurations. ### Removed diff --git a/docs/admin/release_notes/version_2.1.md b/docs/admin/release_notes/version_2.1.md index 00cdf009..c8eb5399 100644 --- a/docs/admin/release_notes/version_2.1.md +++ b/docs/admin/release_notes/version_2.1.md @@ -2,8 +2,8 @@ # v2.1 Release Notes -## [v2.1.0 (2023-09-28)](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v2.1.0) +## [v2.1.0 (2023-09-28)](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v2.1.0) ### Fixed -- [#273](https://github.com/nautobot/nautobot-plugin-chatops/issues/273) - Fixed dependency resolution issues with latest release of golden config. +- [#273](https://github.com/nautobot/nautobot-app-chatops/issues/273) - Fixed dependency resolution issues with latest release of golden config. diff --git a/docs/admin/release_notes/version_3.0.md b/docs/admin/release_notes/version_3.0.md index 0e8c7b57..0c5ecaff 100644 --- a/docs/admin/release_notes/version_3.0.md +++ b/docs/admin/release_notes/version_3.0.md @@ -2,15 +2,15 @@ # v3.0 Release Notes -## [v3.0.0 (2023-09-29)](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v3.0.0) +## [v3.0.0 (2023-09-29)](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v3.0.0) ### Added -- [#112](https://github.com/nautobot/nautobot-plugin-chatops/issues/112) - Add ability to link Chat User with Nautobot User. -- [#272](https://github.com/nautobot/nautobot-plugin-chatops/issues/272) - Add ObjectNotesView for ChatOps models. +- [#112](https://github.com/nautobot/nautobot-app-chatops/issues/112) - Add ability to link Chat User with Nautobot User. +- [#272](https://github.com/nautobot/nautobot-app-chatops/issues/272) - Add ObjectNotesView for ChatOps models. -## [v3.0.1 (2023-09-29)](https://github.com/nautobot/nautobot-plugin-chatops/releases/tag/v3.0.1) +## [v3.0.1 (2023-09-29)](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v3.0.1) ### Fixed -- [[#281](https://github.com/nautobot/nautobot-plugin-chatops/issues/281) - Address permissions bug found during release review. \ No newline at end of file +- [[#281](https://github.com/nautobot/nautobot-app-chatops/issues/281) - Address permissions bug found during release review. \ No newline at end of file diff --git a/docs/admin/uninstall.md b/docs/admin/uninstall.md index c97c2677..64fa2e75 100644 --- a/docs/admin/uninstall.md +++ b/docs/admin/uninstall.md @@ -4,10 +4,10 @@ Here you will find any steps necessary to cleanly remove the App from your Nauto ## Database Cleanup -Prior to removing the plugin from the `nautobot_config.py`, run the following command to roll back any migration specific to this plugin. +Prior to removing the app from the `nautobot_config.py`, run the following command to roll back any migration specific to this app. ```shell -nautobot-server migrate nautobot_plugin_chatops zero +nautobot-server migrate nautobot_chatops zero ``` ## Remove App configuration diff --git a/docs/admin/upgrade.md b/docs/admin/upgrade.md index 277ec674..6c8becb4 100644 --- a/docs/admin/upgrade.md +++ b/docs/admin/upgrade.md @@ -4,7 +4,7 @@ Here you will find any steps necessary to upgrade the App in your Nautobot envir ## Upgrade Guide -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 plugin. Execute the command `nautobot-server post_upgrade` within the runtime environment of your Nautobot installation after updating the `nautobot-chatops` package via `pip`. +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-chatops` package via `pip`. ### Upgrading to ChatOps 3.0 diff --git a/docs/dev/contributing.md b/docs/dev/contributing.md index ef84502f..92d54b58 100644 --- a/docs/dev/contributing.md +++ b/docs/dev/contributing.md @@ -6,7 +6,7 @@ The project is following Network to Code software development guidelines and is - Python linting and formatting: `black`, `pylint`, `bandit`, `flake8`, and `pydocstyle`. - YAML linting is done with `yamllint`. -- Django unit test to ensure the plugin is working properly. +- Django unit test to ensure the app is working properly. Documentation is built using [mkdocs](https://www.mkdocs.org/). The [Docker based development environment](dev_environment.md#docker-development-environment) automatically starts a container hosting a live version of the documentation website on [http://localhost:8001](http://localhost:8001) that auto-refreshes when you make any changes to your local files. diff --git a/docs/dev/design.md b/docs/dev/design.md index 9628e6e1..0e4a0422 100644 --- a/docs/dev/design.md +++ b/docs/dev/design.md @@ -1,6 +1,6 @@ # The design of Nautobot ChatOps -By delivering this as a Nautobot ChatOps plugin, we gain the following benefits: +By delivering this as a Nautobot ChatOps App, we gain the following benefits: - No need to stand up a separate HTTP server, just use Nautobot's own HTTP server. - Use of `async` is not required because we can hand off long-running tasks to Nautobot's `celery` workers. With one notable exception, WebSocket connections will be done with `async`. We have opted for `AIOHTTP` for our WebSocket [clients](https://docs.aiohttp.org/en/stable/client_quickstart.html#aiohttp-client-websockets). @@ -12,7 +12,7 @@ By delivering this as a Nautobot ChatOps plugin, we gain the following benefits: ## Code structure -The design goal of this plugin is to be able to write chatbot commands once and have them run anywhere +The design goal of this app is to be able to write chatbot commands once and have them run anywhere (Slack, Microsoft Teams, Cisco Webex, etc.). Toward that end, it's divided into three layers: 1. input @@ -39,8 +39,8 @@ The design goal of this plugin is to be able to write chatbot commands once and - In addition to enqueuing the command parameters for the worker, the queue also requires a `Dispatcher` class (see below) and any additional `context` that the dispatcher requires (such as user_id, channel_id, tokens, etc.) - - Support for additional chat platform endpoints can be implemented as additional modules in this plugin, - or could be delivered as an entirely separate Nautobot plugin if desired. + - Support for additional chat platform endpoints can be implemented as additional modules in this app, + or could be delivered as an entirely separate Nautobot app if desired. 2. worker (`nautobot_chatops.workers`) @@ -54,7 +54,7 @@ The design goal of this plugin is to be able to write chatbot commands once and - Each module in this layer would provide a different top-level command, such as `nautobot`, `grafana`, or `ansible`. - This layer is designed to be extensible through Python's packaging `entry_points` functionality (`plugins` in - Poetry's terminology). A Python package (Nautobot plugin) can register any worker functions under the `nautobot.workers` entry point, + Poetry's terminology). A Python package (Nautobot App) can register any worker functions under the `nautobot.workers` entry point, and the worker(s) will automatically be added to the client's capabilities. 3. output (`nautobot_chatops.dispatchers`) @@ -78,7 +78,7 @@ The design goal of this plugin is to be able to write chatbot commands once and `views` submodules and `dispatchers` submodules. - As with the `views` layer, the `Dispatcher` for a new chat platform could be implemented as a new submodule for - this plugin, or could be delivered as part of a separate Nautobot plugin. + this app, or could be delivered as part of a separate Nautobot App. ## Information flow diff --git a/docs/dev/dev_environment.md b/docs/dev/dev_environment.md index b4067e76..0df8915f 100644 --- a/docs/dev/dev_environment.md +++ b/docs/dev/dev_environment.md @@ -35,7 +35,7 @@ This project is managed by [Python Poetry](https://python-poetry.org/) and has a Once you have Poetry and Docker installed you can run the following commands (in the root of the repository) to install all other development dependencies in an isolated Python virtual environment: ```shell -git clone git@github.com:nautobot/nautobot-plugin-chatops.git +git clone git@github.com:nautobot/nautobot-app-chatops.git cd nautobot-plugin-chatops poetry shell poetry install @@ -135,8 +135,8 @@ Each command can be executed with `invoke `. All commands support the a flake8 Run flake8 to check that Python files adhere to its style standards. pydocstyle Run pydocstyle to validate docstring formatting adheres to NTC defined standards. pylint Run pylint code analysis. - tests Run all tests for this plugin. - unittest Run Django unit tests for the plugin. + tests Run all tests for this app. + unittest Run Django unit tests for the app. ``` ## Project Overview @@ -298,9 +298,9 @@ This will safely shut down all of your running Docker containers for this projec Your environment should now be fully setup, all necessary Docker containers are created and running, and you're logged into Nautobot in your web browser. Now what? -Now you can start developing your plugin in the project folder! +Now you can start developing your app in the project folder! -The magic here is the root directory is mounted inside your Docker containers when built and ran, so **any** changes made to the files in here are directly updated to the Nautobot plugin code running in Docker. This means that as you modify the code in your plugin folder, the changes will be instantly updated in Nautobot. +The magic here is the root directory is mounted inside your Docker containers when built and ran, so **any** changes made to the files in here are directly updated to the Nautobot app code running in Docker. This means that as you modify the code in your app folder, the changes will be instantly updated in Nautobot. !!! warning There are a few exceptions to this, as outlined in the section [To Rebuild or Not To Rebuild](#to-rebuild-or-not-to-rebuild). @@ -350,7 +350,7 @@ Once completed, the new/updated environment variables should now be live. ### Installing Additional Python Packages -If you want your plugin to leverage another available Nautobot plugin or another Python package, you can easily add them into your Docker environment. +If you want your app to leverage another available Nautobot app or another Python package, you can easily add them into your Docker environment. ```bash ➜ poetry shell @@ -365,18 +365,18 @@ Once the dependencies are resolved, stop the existing containers, rebuild the Do ➜ invoke start ``` -### Installing Additional Nautobot Plugins +### Installing Additional Nautobot Apps -Let's say for example you want the new plugin you're creating to integrate into Nautobot ChatOps. To do this, you will want to integrate into the existing Nautobot ChatOps Plugin. +Let's say for example you want the new app you're creating to integrate into Nautobot ChatOps. To do this, you will want to integrate into the existing Nautobot ChatOps App. ```bash ➜ poetry shell ➜ poetry add nautobot-chatops ``` -Once you activate the virtual environment via Poetry, you then tell Poetry to install the new plugin. +Once you activate the virtual environment via Poetry, you then tell Poetry to install the new app. -Before you continue, you'll need to update the file `development/nautobot_config.py` accordingly with the name of the new plugin under `PLUGINS` and any relevant settings as necessary for the plugin under `PLUGINS_CONFIG`. Since you're modifying the underlying OS (not just Django files), you need to rebuild the image. This is a similar process to updating environment variables, which was explained earlier. +Before you continue, you'll need to update the file `development/nautobot_config.py` accordingly with the name of the new app under `PLUGINS` and any relevant settings as necessary for the app under `PLUGINS_CONFIG`. Since you're modifying the underlying OS (not just Django files), you need to rebuild the image. This is a similar process to updating environment variables, which was explained earlier. ```bash ➜ invoke stop @@ -384,7 +384,7 @@ Before you continue, you'll need to update the file `development/nautobot_config ➜ invoke start ``` -Once the containers are up and running, you should now see the new plugin installed in your Nautobot instance. +Once the containers are up and running, you should now see the new app installed in your Nautobot instance. !!! note You can even launch `ngrok` service locally on your laptop, pointing to port 8080 (such as for ChatOps development), and it will point traffic directly to your Docker images. diff --git a/docs/dev/release_checklist.md b/docs/dev/release_checklist.md index f859c96c..71ad060f 100644 --- a/docs/dev/release_checklist.md +++ b/docs/dev/release_checklist.md @@ -143,7 +143,7 @@ Once CI has completed on the PR, merge it. ### Create a New Release -Draft a [new release](https://github.com/nautobot/nautobot-plugin-chatops/releases/new) with the following parameters. +Draft a [new release](https://github.com/nautobot/nautobot-app-chatops/releases/new) with the following parameters. * **Tag:** Current version (e.g. `v1.0.0`) * **Target:** `main` diff --git a/docs/models/chatopsaccountlink.md b/docs/models/chatopsaccountlink.md index 56746302..9eef0b20 100644 --- a/docs/models/chatopsaccountlink.md +++ b/docs/models/chatopsaccountlink.md @@ -3,7 +3,7 @@ +++3.0.0 -Nautobot ChatOps now uses the built-in Nautobot permissions for Nautobot Objects (Devices, Locations, Racks, etc.). Each user will need to link their Nautobot Account with their Chat Platform User Account. Login to Nautobot then access the Link ChatOps Account within the Plugins menu. Here you can provide your email address and select the ChatOps Platform you are using, then click the Look up User ID from Email to get your Chat User ID. +Nautobot ChatOps now uses the built-in Nautobot permissions for Nautobot Objects (Devices, Locations, Racks, etc.). Each user will need to link their Nautobot Account with their Chat Platform User Account. Login to Nautobot then access the Link ChatOps Account within the Apps menu. Here you can provide your email address and select the ChatOps Platform you are using, then click the Look up User ID from Email to get your Chat User ID. A Nautobot user can have multiple Chat users connected, but the Chat User can only be linked to one Nautobot user. As an example my team is transitioning from Slack to Mattermost. My Slack User ID and my Mattermost User ID can both be connected to the same Nautobot User. diff --git a/docs/models/commandtoken.md b/docs/models/commandtoken.md index ef34d1c7..c8de74e8 100644 --- a/docs/models/commandtoken.md +++ b/docs/models/commandtoken.md @@ -7,8 +7,8 @@ Some platforms this `signing_secret` is valid for all commands, other platforms, create a separate `token` for every slash command. Keeping the records for Mattermost tokens in the `.creds.env` file would not be sustainable. -To solve this issue, the plugin has the option to store Command Tokens to the Nautobot Database. -In Nautobot, open Nautobot and go to the Plugins and select Command Tokens. Below is an example to +To solve this issue, the app has the option to store Command Tokens to the Nautobot Database. +In Nautobot, open Nautobot and go to the Apps and select Command Tokens. Below is an example to get you started. ## Example: Adding tokens for Mattermost diff --git a/docs/user/app_getting_started.md b/docs/user/app_getting_started.md index a49f69d3..e75458a6 100644 --- a/docs/user/app_getting_started.md +++ b/docs/user/app_getting_started.md @@ -10,7 +10,7 @@ To install the App, please follow the instructions detailed in the [Installation +++3.0.0 -Nautobot ChatOps now uses the built-in Nautobot permissions for Nautobot Objects (Devices, Locations, Racks, etc.). Each user will need to link their Nautobot Account with their Chat Platform User Account. Login to Nautobot then access the Link ChatOps Account within the Plugins menu. Here you can provide your email address and select the ChatOps Platform you are using, then click the Look up User ID from Email to get your Chat User ID. +Nautobot ChatOps now uses the built-in Nautobot permissions for Nautobot Objects (Devices, Locations, Racks, etc.). Each user will need to link their Nautobot Account with their Chat Platform User Account. Login to Nautobot then access the Link ChatOps Account within the Apps menu. Here you can provide your email address and select the ChatOps Platform you are using, then click the Look up User ID from Email to get your Chat User ID. ![Link Accounts](../images/account_link.png) diff --git a/docs/user/app_overview.md b/docs/user/app_overview.md index aaf87b1a..0e8a188f 100644 --- a/docs/user/app_overview.md +++ b/docs/user/app_overview.md @@ -7,7 +7,7 @@ This document provides an overview of the App including critical information and ## Description -The ChatOps framework provides Network Engineers power to query Nautobot or their Network (through ChatOps plugins) while staying within their preferred Chat application. The goal of ChatOps is to bring people, processes and Automation together. +The ChatOps framework provides Network Engineers power to query Nautobot or their Network (through ChatOps apps) while staying within their preferred Chat application. The goal of ChatOps is to bring people, processes and Automation together. {% include-markdown '../glossary.md' diff --git a/docs/user/ipfabric_commands.md b/docs/user/ipfabric_commands.md index 053c0941..401ea31c 100644 --- a/docs/user/ipfabric_commands.md +++ b/docs/user/ipfabric_commands.md @@ -21,7 +21,7 @@ Interact with IPFabric by utilizing the following sub-commands: !!! note All sub-commands are intended to be used with the `/ipfabric` prefix. -IP Fabric uses a concept of snapshots which can include different devices and data. The plugin supports querying specific snapshots via the `/ipfabric set-snapshot` command. The snapshot is set per user and cached for all future commands. If a snapshot is not set, the commands will default to `$last` unless a specific snapshot id is required. +IP Fabric uses a concept of snapshots which can include different devices and data. The app supports querying specific snapshots via the `/ipfabric set-snapshot` command. The snapshot is set per user and cached for all future commands. If a snapshot is not set, the commands will default to `$last` unless a specific snapshot id is required. ## Screenshots diff --git a/mkdocs.yml b/mkdocs.yml index 64298e45..8fdc6bf3 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -1,10 +1,10 @@ --- dev_addr: "127.0.0.1:8001" -edit_uri: "edit/main/nautobot-plugin-chatops/docs" +edit_uri: "edit/main/nautobot-app-chatops/docs" site_dir: "nautobot_chatops/static/nautobot_chatops/docs" site_name: "Nautobot ChatOps App Documentation" site_url: "https://docs.nautobot.com/projects/chatops/en/latest/" -repo_url: "https://github.com/nautobot/nautobot-plugin-chatops/" +repo_url: "https://github.com/nautobot/nautobot-app-chatops/" copyright: "Copyright © The Authors" theme: name: "material" diff --git a/nautobot_chatops/__init__.py b/nautobot_chatops/__init__.py index d180c074..30763085 100644 --- a/nautobot_chatops/__init__.py +++ b/nautobot_chatops/__init__.py @@ -1,4 +1,4 @@ -"""Plugin declaration for nautobot_chatops.""" +"""App declaration for nautobot_chatops.""" # Metadata is inherited from Nautobot. If not including Nautobot in the environment, this should be added from importlib import metadata @@ -32,7 +32,7 @@ def _check_for_conflicting_apps(): class NautobotChatOpsConfig(NautobotAppConfig): - """Plugin configuration for the nautobot_chatops plugin.""" + """App configuration for the nautobot_chatops app.""" name = "nautobot_chatops" verbose_name = "Nautobot ChatOps" @@ -51,7 +51,7 @@ class NautobotChatOpsConfig(NautobotAppConfig): # Should menus, text input fields, etc. be deleted from the chat history after the user makes a selection? "delete_input_on_submission": False, "restrict_help": False, - # As requested on https://github.com/nautobot/nautobot-plugin-chatops/issues/114 this setting is used for + # As requested on https://github.com/nautobot/nautobot-app-chatops/issues/114 this setting is used for # sending all messages as an ephemeral message, meaning only the person interacting with the bot will see the # responses. "send_all_messages_private": False, @@ -147,7 +147,7 @@ class NautobotChatOpsConfig(NautobotAppConfig): caching_config = {} def ready(self): - """Function invoked after all plugins have been loaded.""" + """Function invoked after all apps have been loaded.""" super().ready() # pylint: disable=import-outside-toplevel from nautobot_capacity_metrics import register_metric_func diff --git a/nautobot_chatops/admin.py b/nautobot_chatops/admin.py index 917b355d..53b3f889 100644 --- a/nautobot_chatops/admin.py +++ b/nautobot_chatops/admin.py @@ -1,4 +1,4 @@ -"""Administrative capabilities for nautobot_chatops plugin.""" +"""Administrative capabilities for nautobot_chatops app.""" from django.contrib import admin from .models import ChatOpsAccountLink, CommandLog diff --git a/nautobot_chatops/api/__init__.py b/nautobot_chatops/api/__init__.py index 81763b58..f5329948 100644 --- a/nautobot_chatops/api/__init__.py +++ b/nautobot_chatops/api/__init__.py @@ -1 +1 @@ -"""REST API module for nautobot_chatops plugin.""" +"""REST API module for nautobot_chatops app.""" diff --git a/nautobot_chatops/api/serializers.py b/nautobot_chatops/api/serializers.py index 583095ee..d0cac19d 100644 --- a/nautobot_chatops/api/serializers.py +++ b/nautobot_chatops/api/serializers.py @@ -1,4 +1,4 @@ -"""API Serializers for ChatOps Plugin.""" +"""API Serializers for ChatOps App.""" from rest_framework import serializers diff --git a/nautobot_chatops/api/urls.py b/nautobot_chatops/api/urls.py index a2238616..9443a98d 100644 --- a/nautobot_chatops/api/urls.py +++ b/nautobot_chatops/api/urls.py @@ -1,4 +1,4 @@ -"""Django urlpatterns declaration for nautobot_chatops plugin.""" +"""Django urlpatterns declaration for nautobot_chatops app.""" import logging diff --git a/nautobot_chatops/api/views/__init__.py b/nautobot_chatops/api/views/__init__.py index 86df9e84..1fa340b0 100644 --- a/nautobot_chatops/api/views/__init__.py +++ b/nautobot_chatops/api/views/__init__.py @@ -1,4 +1,4 @@ -"""API Views module for the nautobot_chatops Nautobot plugin. +"""API Views module for the nautobot_chatops Nautobot App. The views implemented in this module act as endpoints for various chat platforms to send requests and notifications to. diff --git a/nautobot_chatops/api/views/webex.py b/nautobot_chatops/api/views/webex.py index 3c449aa3..0e014e52 100644 --- a/nautobot_chatops/api/views/webex.py +++ b/nautobot_chatops/api/views/webex.py @@ -42,7 +42,7 @@ API = None BOT_ID = None -# TODO: the plugin should verify that the webhooks are correctly set up, or else make API calls to create them +# TODO: the app should verify that the webhooks are correctly set up, or else make API calls to create them def generate_signature(request): diff --git a/nautobot_chatops/constants.py b/nautobot_chatops/constants.py index ca668c60..22f46662 100644 --- a/nautobot_chatops/constants.py +++ b/nautobot_chatops/constants.py @@ -1,4 +1,4 @@ -"""Static variables used in plugin.""" +"""Static variables used in app.""" COMMAND_LOG_USER_NAME_HELP_TEXT = "Invoking username" COMMAND_LOG_USER_ID_HELP_TEXT = "Invoking user ID" diff --git a/nautobot_chatops/dispatchers/__init__.py b/nautobot_chatops/dispatchers/__init__.py index 71ff9a0f..f93daef7 100644 --- a/nautobot_chatops/dispatchers/__init__.py +++ b/nautobot_chatops/dispatchers/__init__.py @@ -1,4 +1,4 @@ -"""Dispatchers module for the nautobot_chatops Nautobot plugin. +"""Dispatchers module for the nautobot_chatops Nautobot App. The classes implemented in this module implement a common API for "dispatching" content (plaintext messages, formatted text, UI elements, etc.) to the user of a given chat platform. diff --git a/nautobot_chatops/dispatchers/base.py b/nautobot_chatops/dispatchers/base.py index 9bf67da6..2bbf4836 100644 --- a/nautobot_chatops/dispatchers/base.py +++ b/nautobot_chatops/dispatchers/base.py @@ -64,7 +64,7 @@ def user(self): return user def _get_cache_key(self) -> str: - """Key generator for the cache, adding the plugin prefix name.""" + """Key generator for the cache, adding the app prefix name.""" # Using __file__ as a key customization within the cache return "-".join([__file__, self.context.get("user_id", "generic")]) diff --git a/nautobot_chatops/integrations/aci/worker.py b/nautobot_chatops/integrations/aci/worker.py index 71c8288b..cb2652bf 100644 --- a/nautobot_chatops/integrations/aci/worker.py +++ b/nautobot_chatops/integrations/aci/worker.py @@ -36,7 +36,7 @@ def _read_settings(): @nautobot_task def aci(subcommand, **kwargs): - """Interact with aci plugin.""" + """Interact with aci app.""" return handle_subcommands("aci", subcommand, **kwargs) diff --git a/nautobot_chatops/integrations/ansible/tower.py b/nautobot_chatops/integrations/ansible/tower.py index fab4d4e4..0018de69 100644 --- a/nautobot_chatops/integrations/ansible/tower.py +++ b/nautobot_chatops/integrations/ansible/tower.py @@ -60,7 +60,7 @@ def __init__( self.extra_vars = {} if not self.uri or not self.username or not self.password: raise ValueError( - "Missing required parameters for Tower access - check environment and plugin configuration" + "Missing required parameters for Tower access - check environment and app configuration" ) def _launch_job(self, template_name, extra_vars): diff --git a/nautobot_chatops/integrations/grafana/api/urls.py b/nautobot_chatops/integrations/grafana/api/urls.py index 1e2a5c67..2ccef219 100644 --- a/nautobot_chatops/integrations/grafana/api/urls.py +++ b/nautobot_chatops/integrations/grafana/api/urls.py @@ -1,4 +1,4 @@ -"""Django urlpatterns declaration for nautobot_chatops.integrations.grafana plugin.""" +"""Django urlpatterns declaration for nautobot_chatops.integrations.grafana app.""" from nautobot.apps.api import OrderedDefaultRouter from nautobot.apps.config import get_app_settings_or_config diff --git a/nautobot_chatops/integrations/grafana/api/views/__init__.py b/nautobot_chatops/integrations/grafana/api/views/__init__.py index 85c920fb..752d6639 100644 --- a/nautobot_chatops/integrations/grafana/api/views/__init__.py +++ b/nautobot_chatops/integrations/grafana/api/views/__init__.py @@ -1,4 +1,4 @@ -"""API Views module for the nautobot_chatops.integrations.grafana Nautobot plugin. +"""API Views module for the nautobot_chatops.integrations.grafana Nautobot App. The views implemented in this module act as endpoints for various chat platforms to send requests and notifications to. diff --git a/nautobot_chatops/integrations/grafana/api/views/generic.py b/nautobot_chatops/integrations/grafana/api/views/generic.py index 4fdad892..da24c2cb 100644 --- a/nautobot_chatops/integrations/grafana/api/views/generic.py +++ b/nautobot_chatops/integrations/grafana/api/views/generic.py @@ -1,4 +1,4 @@ -"""API Views for Nautobot Plugin Chatops Grafana.""" +"""API Views for Nautobot App Chatops Grafana.""" from rest_framework.routers import APIRootView diff --git a/nautobot_chatops/integrations/grafana/exceptions.py b/nautobot_chatops/integrations/grafana/exceptions.py index 6763f514..38975e7d 100644 --- a/nautobot_chatops/integrations/grafana/exceptions.py +++ b/nautobot_chatops/integrations/grafana/exceptions.py @@ -1,4 +1,4 @@ -"""Nautobot Plugin ChatOps Grafana Exceptions.""" +"""Nautobot App ChatOps Grafana Exceptions.""" from pydantic import ValidationError from isodate import ISO8601Error diff --git a/nautobot_chatops/integrations/grafana/tables.py b/nautobot_chatops/integrations/grafana/tables.py index 06ef8ce5..a8f9ec67 100644 --- a/nautobot_chatops/integrations/grafana/tables.py +++ b/nautobot_chatops/integrations/grafana/tables.py @@ -6,7 +6,7 @@ class DashboardViewTable(BaseTable): - """Table for rendering panels for dashboards in the grafana plugin.""" + """Table for rendering panels for dashboards in the grafana app.""" pk = ToggleColumn() @@ -20,7 +20,7 @@ class Meta(BaseTable.Meta): # pylint: disable=too-few-public-methods class PanelViewTable(BaseTable): - """Table for rendering panels for dashboards in the grafana plugin.""" + """Table for rendering panels for dashboards in the grafana app.""" pk = ToggleColumn() @@ -40,7 +40,7 @@ class Meta(BaseTable.Meta): # pylint: disable=too-few-public-methods class PanelVariableViewTable(BaseTable): - """Table for rendering panel variables for dashboards in the grafana plugin.""" + """Table for rendering panel variables for dashboards in the grafana app.""" pk = ToggleColumn() diff --git a/nautobot_chatops/integrations/grafana/urls.py b/nautobot_chatops/integrations/grafana/urls.py index 96c67b7e..1f1f7b25 100644 --- a/nautobot_chatops/integrations/grafana/urls.py +++ b/nautobot_chatops/integrations/grafana/urls.py @@ -1,4 +1,4 @@ -"""Django urlpatterns declaration for nautobot_chatops.integrations.grafana plugin.""" +"""Django urlpatterns declaration for nautobot_chatops.integrations.grafana app.""" from django.urls import path from nautobot.extras.views import ObjectChangeLogView from nautobot_chatops.integrations.grafana.models import Dashboard, PanelVariable, Panel diff --git a/nautobot_chatops/integrations/grafana/views.py b/nautobot_chatops/integrations/grafana/views.py index 1ae3a045..09fbc5bc 100644 --- a/nautobot_chatops/integrations/grafana/views.py +++ b/nautobot_chatops/integrations/grafana/views.py @@ -1,4 +1,4 @@ -"""Views module for the nautobot_chatops.integrations.grafana plugin. +"""Views module for the nautobot_chatops.integrations.grafana App. The views implemented in this module act as endpoints for various chat platforms to send requests and notifications to. diff --git a/nautobot_chatops/integrations/ipfabric/context.py b/nautobot_chatops/integrations/ipfabric/context.py index 2cff7ab2..b8e2f38b 100644 --- a/nautobot_chatops/integrations/ipfabric/context.py +++ b/nautobot_chatops/integrations/ipfabric/context.py @@ -5,7 +5,7 @@ def _get_cache_key(user: str) -> str: - """Key generator for the cache, adding the plugin prefix name.""" + """Key generator for the cache, adding the app prefix name.""" key_string = "-".join([NautobotChatOpsConfig.name, user]) return hashlib.md5(key_string.encode("utf-8")).hexdigest() # nosec diff --git a/nautobot_chatops/integrations/ipfabric/worker.py b/nautobot_chatops/integrations/ipfabric/worker.py index a9dda45b..4957336d 100644 --- a/nautobot_chatops/integrations/ipfabric/worker.py +++ b/nautobot_chatops/integrations/ipfabric/worker.py @@ -51,7 +51,7 @@ def ipfabric_logo(dispatcher): def ipfabric(subcommand, **kwargs): - """Interact with ipfabric plugin.""" + """Interact with ipfabric app.""" return handle_subcommands("ipfabric", subcommand, **kwargs) diff --git a/nautobot_chatops/integrations/panorama/worker.py b/nautobot_chatops/integrations/panorama/worker.py index 22acc2cb..799dfa60 100644 --- a/nautobot_chatops/integrations/panorama/worker.py +++ b/nautobot_chatops/integrations/panorama/worker.py @@ -565,7 +565,7 @@ def capture_traffic( """Capture IP traffic on PANOS Device. Args: - dispatcher (object): Chatops plugin dispatcher object + dispatcher (object): Chatops app dispatcher object device (str): Device name snet (str): Source IP/network in IPv4 CIDR notation dnet (str): Destination IP/network in IPv4 CIDR notation diff --git a/nautobot_chatops/metrics.py b/nautobot_chatops/metrics.py index 6ef23428..4401bdb4 100644 --- a/nautobot_chatops/metrics.py +++ b/nautobot_chatops/metrics.py @@ -1,4 +1,4 @@ -"""Nautobot plugin metrics exposed through nautobot_metrics_ext.""" +"""Nautobot app metrics exposed through nautobot_metrics_ext.""" from prometheus_client import Counter, Histogram, Summary diff --git a/nautobot_chatops/metrics_app.py b/nautobot_chatops/metrics_app.py index 2485911d..2cc6e6d0 100644 --- a/nautobot_chatops/metrics_app.py +++ b/nautobot_chatops/metrics_app.py @@ -1,4 +1,4 @@ -"""Nautobot plugin application level metrics exposed through nautobot_metrics_ext.""" +"""Nautobot app application level metrics exposed through nautobot_metrics_ext.""" from prometheus_client.core import CounterMetricFamily diff --git a/nautobot_chatops/navigation.py b/nautobot_chatops/navigation.py index 8baaa557..3bd9ec7b 100644 --- a/nautobot_chatops/navigation.py +++ b/nautobot_chatops/navigation.py @@ -1,4 +1,4 @@ -"""Plugin additions to the Nautobot navigation menu.""" +"""App additions to the Nautobot navigation menu.""" from nautobot.apps.config import get_app_settings_or_config from nautobot.apps.ui import NavMenuAddButton, NavMenuGroup, NavMenuItem, NavMenuTab diff --git a/nautobot_chatops/tests/__init__.py b/nautobot_chatops/tests/__init__.py index 102ef4fd..ead6aa80 100644 --- a/nautobot_chatops/tests/__init__.py +++ b/nautobot_chatops/tests/__init__.py @@ -1 +1 @@ -"""Unit tests for nautobot_chatops plugin.""" +"""Unit tests for nautobot_chatops app.""" diff --git a/nautobot_chatops/tests/aci/__init__.py b/nautobot_chatops/tests/aci/__init__.py index 0991627c..daad5815 100644 --- a/nautobot_chatops/tests/aci/__init__.py +++ b/nautobot_chatops/tests/aci/__init__.py @@ -1 +1 @@ -"""Unit tests for integrations.aci plugin.""" +"""Unit tests for integrations.aci app.""" diff --git a/nautobot_chatops/tests/ansible/__init__.py b/nautobot_chatops/tests/ansible/__init__.py index 8cac59da..bea26431 100644 --- a/nautobot_chatops/tests/ansible/__init__.py +++ b/nautobot_chatops/tests/ansible/__init__.py @@ -1 +1 @@ -"""Unit tests for nautobot_chatops.integrations.ansible plugin.""" +"""Unit tests for nautobot_chatops.integrations.ansible app.""" diff --git a/nautobot_chatops/tests/grafana/__init__.py b/nautobot_chatops/tests/grafana/__init__.py index d914107c..ebfa6dfe 100644 --- a/nautobot_chatops/tests/grafana/__init__.py +++ b/nautobot_chatops/tests/grafana/__init__.py @@ -1 +1 @@ -"""Unit tests for nautobot_chatops.integrations.grafana plugin.""" +"""Unit tests for nautobot_chatops.integrations.grafana app.""" diff --git a/nautobot_chatops/tests/grafana/test_workers.py b/nautobot_chatops/tests/grafana/test_workers.py index 36f5f7a7..2707c037 100644 --- a/nautobot_chatops/tests/grafana/test_workers.py +++ b/nautobot_chatops/tests/grafana/test_workers.py @@ -142,7 +142,7 @@ def test_get_commands_registry_dynamic_subcommands(self): self.assertIn("nautobot", registry) def test_grafana_commands_registry_dynamic_subcommands(self): - """Specific testing for the Grafana Chatops Plugin.""" + """Specific testing for the Grafana Chatops App.""" with dynamic_entrypoint("nautobot.workers", name="grafana", module="nautobot_chatops.grafana.worker"): registry = get_commands_registry() diff --git a/nautobot_chatops/tests/panorama/__init__.py b/nautobot_chatops/tests/panorama/__init__.py index f762864e..e61712ea 100644 --- a/nautobot_chatops/tests/panorama/__init__.py +++ b/nautobot_chatops/tests/panorama/__init__.py @@ -1 +1 @@ -"""Unit tests for nautobot_plugin.integrations.panorama plugin.""" +"""Unit tests for nautobot_plugin.integrations.panorama app.""" diff --git a/nautobot_chatops/urls.py b/nautobot_chatops/urls.py index 6f02d1ee..8da8f0ac 100644 --- a/nautobot_chatops/urls.py +++ b/nautobot_chatops/urls.py @@ -1,4 +1,4 @@ -"""Django urlpatterns declaration for nautobot_chatops plugin.""" +"""Django urlpatterns declaration for nautobot_chatops app.""" import logging from django.urls import path diff --git a/nautobot_chatops/views.py b/nautobot_chatops/views.py index 6e980089..b629d4c9 100644 --- a/nautobot_chatops/views.py +++ b/nautobot_chatops/views.py @@ -1,4 +1,4 @@ -"""Views module for the nautobot_chatops Nautobot plugin. +"""Views module for the nautobot_chatops Nautobot App. The views implemented in this module act as endpoints for various chat platforms to send requests and notifications to. diff --git a/nautobot_chatops/workers/__init__.py b/nautobot_chatops/workers/__init__.py index dfe89d59..19bc4322 100644 --- a/nautobot_chatops/workers/__init__.py +++ b/nautobot_chatops/workers/__init__.py @@ -1,4 +1,4 @@ -"""Workers module for the nautobot_chatops Nautobot plugin. +"""Workers module for the nautobot_chatops Nautobot App. The functions in this module provide back-end worker logic that is totally ignorant of the differences between various chat platforms. They receive generic data from @@ -103,7 +103,7 @@ def get_commands_registry(): if _commands_registry[worker.name]["function"] == command_func: logger.warning("Command worker function '%s' was processed twice. This should not happen", worker.name) else: - logger.error("Duplicate worker name '%s' detected! Check for redundant plugins", worker.name) + logger.error("Duplicate worker name '%s' detected! Check for redundant apps", worker.name) continue if worker.name not in _commands_registry: diff --git a/pyproject.toml b/pyproject.toml index 76741f49..df142fc7 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,13 +1,13 @@ [tool.poetry] name = "nautobot-chatops" version = "3.0.1" -description = "A plugin providing chatbot capabilities for Nautobot" +description = "A app providing chatbot capabilities for Nautobot" authors = ["Network to Code, LLC "] license = "Apache-2.0" readme = "README.md" -homepage = "https://github.com/nautobot/nautobot-plugin-chatops/" -repository = "https://github.com/nautobot/nautobot-plugin-chatops/" -keywords = ["nautobot", "nautobot-plugin"] +homepage = "https://github.com/nautobot/nautobot-app-chatops/" +repository = "https://github.com/nautobot/nautobot-app-chatops/" +keywords = ["nautobot", "nautobot-plugin", "nautobot-app"] classifiers = [ "Intended Audience :: Developers", "Development Status :: 5 - Production/Stable", diff --git a/tasks.py b/tasks.py index 73a32283..b2960e11 100644 --- a/tasks.py +++ b/tasks.py @@ -671,7 +671,7 @@ def unittest_coverage(context): } ) def tests(context, failfast=False, keepdb=False, lint_only=False): - """Run all tests for this plugin.""" + """Run all tests for this app.""" # If we are not running locally, start the docker containers so we don't have to for each test if not is_truthy(context.nautobot_chatops.local): print("Starting Docker Containers...") From 1518d8922cbb1b0bd90189ac337112fc68f4236a Mon Sep 17 00:00:00 2001 From: Jeremy White Date: Wed, 27 Dec 2023 08:13:54 -0600 Subject: [PATCH 36/93] initial renaming commit --- docs/admin/install/slack_setup.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/admin/install/slack_setup.md b/docs/admin/install/slack_setup.md index 0a10659f..34a54bad 100644 --- a/docs/admin/install/slack_setup.md +++ b/docs/admin/install/slack_setup.md @@ -295,7 +295,7 @@ While this method is still possible, we recommend using the App Manifest method - `mpim:read` - At the top of this page, select "Install App to Workspace" and confirm it. - There should now be a "Bot User OAuth Access Token" displayed, typically a string starting with `xoxb-`. - You will need to configure this value for the plugin as the `slack_api_token` value, either directly or through an + You will need to configure this value for the app as the `slack_api_token` value, either directly or through an `.env` file. If this value is not properly configured, the bot will be unable to send content to the user. 6. Returning to the "Basic Information" page for your app, under "Display Information", you can specify the name, description, icon, and accent/background color for the app. You can use the `nautobot_logo.png` from this From f3adfc169e9a92a4dd8d30c1d766c15bf029b5d8 Mon Sep 17 00:00:00 2001 From: Jeremy White Date: Wed, 27 Dec 2023 13:05:38 -0600 Subject: [PATCH 37/93] addressing feedback --- README.md | 14 +++++++------- docs/models/chatopsaccountlink.md | 2 +- docs/models/commandtoken.md | 2 +- docs/user/app_getting_started.md | 2 +- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 721913b0..5af700d6 100644 --- a/README.md +++ b/README.md @@ -65,13 +65,13 @@ Sign up [here](https://slack.networktocode.com/) This project includes code originally written in separate apps, which have been merged into this project: -- [nautobot-plugin-chatops-aci](https://github.com/nautobot/nautobot-app-chatops-aci): +- [nautobot-plugin-chatops-aci](https://github.com/nautobot/nautobot-plugin-chatops-aci): Thanks [@mamullen13316](https://github.com/mamullen13316), [@smk4664](https://github.com/smk4664), [@ubajze](https://github.com/ubajze), [@whitej6](https://github.com/whitej6), -- [nautobot-plugin-chatops-ansible](https://github.com/nautobot/nautobot-app-chatops-ansible): +- [nautobot-plugin-chatops-ansible](https://github.com/nautobot/nautobot-plugin-chatops-ansible): Thanks [@chipn](https://github.com/chipn), [@dgjustice](https://github.com/dgjustice), @@ -81,12 +81,12 @@ This project includes code originally written in separate apps, which have been [@smk4664](https://github.com/smk4664), [@ubajze](https://github.com/ubajze), [@whitej6](https://github.com/whitej6), -- [nautobot-plugin-chatops-arista-cloudvision](https://github.com/nautobot/nautobot-app-chatops-arista-cloudvision): +- [nautobot-plugin-chatops-arista-cloudvision](https://github.com/nautobot/nautobot-plugin-chatops-arista-cloudvision): Thanks [@qduk](https://github.com/qduk), [@ubajze](https://github.com/ubajze), [@whitej6](https://github.com/whitej6), -- [nautobot-plugin-chatops-grafana](https://github.com/nautobot/nautobot-app-chatops-grafana): +- [nautobot-plugin-chatops-grafana](https://github.com/nautobot/nautobot-plugin-chatops-grafana): Thanks [@jedelman8](https://github.com/jedelman8), [@josh-silvas](https://github.com/josh-silvas), @@ -94,7 +94,7 @@ This project includes code originally written in separate apps, which have been [@tim-fiola](https://github.com/tim-fiola), [@ubajze](https://github.com/ubajze), [@whitej6](https://github.com/whitej6), -- [nautobot-plugin-chatops-ipfabric](https://github.com/nautobot/nautobot-app-chatops-ipfabric): +- [nautobot-plugin-chatops-ipfabric](https://github.com/nautobot/nautobot-plugin-chatops-ipfabric): Thanks [@alhogan](https://github.com/alhogan), [@chadell](https://github.com/chadell), @@ -106,7 +106,7 @@ This project includes code originally written in separate apps, which have been [@smk4664](https://github.com/smk4664), [@ubajze](https://github.com/ubajze), [@whitej6](https://github.com/whitej6), -- [nautobot-plugin-chatops-meraki](https://github.com/nautobot/nautobot-app-chatops-meraki): +- [nautobot-plugin-chatops-meraki](https://github.com/nautobot/nautobot-plugin-chatops-meraki): Thanks [@jedelman8](https://github.com/jedelman8), [@jeffkala](https://github.com/jeffkala), @@ -114,7 +114,7 @@ This project includes code originally written in separate apps, which have been [@tim-fiola](https://github.com/tim-fiola), [@ubajze](https://github.com/ubajze), [@whitej6](https://github.com/whitej6), -- [nautobot-plugin-chatops-panorama](https://github.com/nautobot/nautobot-app-chatops-panorama): +- [nautobot-plugin-chatops-panorama](https://github.com/nautobot/nautobot-plugin-chatops-panorama): Thanks [@FragmentedPacket](https://github.com/FragmentedPacket), [@PhillSimonds](https://github.com/PhillSimonds), diff --git a/docs/models/chatopsaccountlink.md b/docs/models/chatopsaccountlink.md index 9eef0b20..56746302 100644 --- a/docs/models/chatopsaccountlink.md +++ b/docs/models/chatopsaccountlink.md @@ -3,7 +3,7 @@ +++3.0.0 -Nautobot ChatOps now uses the built-in Nautobot permissions for Nautobot Objects (Devices, Locations, Racks, etc.). Each user will need to link their Nautobot Account with their Chat Platform User Account. Login to Nautobot then access the Link ChatOps Account within the Apps menu. Here you can provide your email address and select the ChatOps Platform you are using, then click the Look up User ID from Email to get your Chat User ID. +Nautobot ChatOps now uses the built-in Nautobot permissions for Nautobot Objects (Devices, Locations, Racks, etc.). Each user will need to link their Nautobot Account with their Chat Platform User Account. Login to Nautobot then access the Link ChatOps Account within the Plugins menu. Here you can provide your email address and select the ChatOps Platform you are using, then click the Look up User ID from Email to get your Chat User ID. A Nautobot user can have multiple Chat users connected, but the Chat User can only be linked to one Nautobot user. As an example my team is transitioning from Slack to Mattermost. My Slack User ID and my Mattermost User ID can both be connected to the same Nautobot User. diff --git a/docs/models/commandtoken.md b/docs/models/commandtoken.md index c8de74e8..1b10e073 100644 --- a/docs/models/commandtoken.md +++ b/docs/models/commandtoken.md @@ -8,7 +8,7 @@ create a separate `token` for every slash command. Keeping the records for Matt `.creds.env` file would not be sustainable. To solve this issue, the app has the option to store Command Tokens to the Nautobot Database. -In Nautobot, open Nautobot and go to the Apps and select Command Tokens. Below is an example to +In Nautobot, open Nautobot and go to the Plugins and select Command Tokens. Below is an example to get you started. ## Example: Adding tokens for Mattermost diff --git a/docs/user/app_getting_started.md b/docs/user/app_getting_started.md index e75458a6..a49f69d3 100644 --- a/docs/user/app_getting_started.md +++ b/docs/user/app_getting_started.md @@ -10,7 +10,7 @@ To install the App, please follow the instructions detailed in the [Installation +++3.0.0 -Nautobot ChatOps now uses the built-in Nautobot permissions for Nautobot Objects (Devices, Locations, Racks, etc.). Each user will need to link their Nautobot Account with their Chat Platform User Account. Login to Nautobot then access the Link ChatOps Account within the Apps menu. Here you can provide your email address and select the ChatOps Platform you are using, then click the Look up User ID from Email to get your Chat User ID. +Nautobot ChatOps now uses the built-in Nautobot permissions for Nautobot Objects (Devices, Locations, Racks, etc.). Each user will need to link their Nautobot Account with their Chat Platform User Account. Login to Nautobot then access the Link ChatOps Account within the Plugins menu. Here you can provide your email address and select the ChatOps Platform you are using, then click the Look up User ID from Email to get your Chat User ID. ![Link Accounts](../images/account_link.png) From f3a51b9478224282daa56cbe40443c687edc166a Mon Sep 17 00:00:00 2001 From: Jeremy White Date: Wed, 27 Dec 2023 13:07:31 -0600 Subject: [PATCH 38/93] addressing feedback --- nautobot_chatops/integrations/ansible/tower.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/nautobot_chatops/integrations/ansible/tower.py b/nautobot_chatops/integrations/ansible/tower.py index 0018de69..a8d07914 100644 --- a/nautobot_chatops/integrations/ansible/tower.py +++ b/nautobot_chatops/integrations/ansible/tower.py @@ -59,9 +59,7 @@ def __init__( self.origin = origin self.extra_vars = {} if not self.uri or not self.username or not self.password: - raise ValueError( - "Missing required parameters for Tower access - check environment and app configuration" - ) + raise ValueError("Missing required parameters for Tower access - check environment and app configuration") def _launch_job(self, template_name, extra_vars): """Launch a playbook in Ansible Tower. From 19fe5ca9385deb5df66ce729df167daf57e94e99 Mon Sep 17 00:00:00 2001 From: Jan Snasel Date: Tue, 30 Jan 2024 10:26:45 +0000 Subject: [PATCH 39/93] fix: Drift management --- .cookiecutter.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.cookiecutter.json b/.cookiecutter.json index 0235408c..1cd564a0 100644 --- a/.cookiecutter.json +++ b/.cookiecutter.json @@ -4,15 +4,15 @@ "full_name": "Network to Code, LLC", "email": "opensource@networktocode.com", "github_org": "nautobot", - "plugin_name": "nautobot_chatops", + "app_name": "nautobot_chatops", "verbose_name": "Nautobot ChatOps App", - "plugin_slug": "nautobot-chatops", - "project_slug": "nautobot-plugin-chatops", - "repo_url": "https://github.com/nautobot/nautobot-plugin-chatops/", + "app_slug": "nautobot-chatops", + "project_slug": "nautobot-app-chatops", + "repo_url": "https://github.com/nautobot/nautobot-app-chatops/", "base_url": "chatops", "min_nautobot_version": "2.0.0", "max_nautobot_version": "2.9999", - "camel_name": "NautobotChatOpsPlugin", + "camel_name": "NautobotChatOpsApp", "project_short_description": "Nautobot ChatOps App", "model_class_name": "None", "open_source_license": "Apache-2.0", From 463cd2dcf25e269c0a3da2c63ee2e7b2b2f88db4 Mon Sep 17 00:00:00 2001 From: Jan Snasel Date: Thu, 1 Feb 2024 08:27:01 +0100 Subject: [PATCH 40/93] Apply suggestions from code review Co-authored-by: Cristian --- docs/admin/integrations/aci.md | 6 +++--- docs/admin/integrations/ansible.md | 6 +++--- docs/admin/integrations/aristacv.md | 6 +++--- docs/admin/integrations/grafana.md | 6 +++--- docs/admin/integrations/ipfabric.md | 6 +++--- docs/admin/integrations/meraki.md | 6 +++--- docs/admin/integrations/panorama.md | 6 +++--- 7 files changed, 21 insertions(+), 21 deletions(-) diff --git a/docs/admin/integrations/aci.md b/docs/admin/integrations/aci.md index dc4f226d..9109b8d4 100644 --- a/docs/admin/integrations/aci.md +++ b/docs/admin/integrations/aci.md @@ -6,15 +6,15 @@ This guide will walk you through steps to set up Cisco ACI integration with the Before configuring the integration, please ensure the following: -- `nautobot-chatops` App was [installed with integration extra dependencies](./../install.md#installation-guide). +- `nautobot-chatops` App was [installed with integration extra dependencies](../install.md#installation-guide). ```shell pip install nautobot-chatops[aci] ``` -- `nautobot-chatops` App is set up with at least one [enabled chat platform](./../install.md#chat-platforms-configuration) and [tested](./../install.md#test-your-chatbot). +- `nautobot-chatops` App is set up with at least one [enabled chat platform](../install.md#chat-platforms-configuration) and [tested](./../install.md#test-your-chatbot). ## Command Setup -Create a top-level command named `aci` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./../install.md#chat-platforms-configuration). +Create a top-level command named `aci` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](../install.md#chat-platforms-configuration). ## Configuration diff --git a/docs/admin/integrations/ansible.md b/docs/admin/integrations/ansible.md index ea81b323..8be859e5 100644 --- a/docs/admin/integrations/ansible.md +++ b/docs/admin/integrations/ansible.md @@ -6,15 +6,15 @@ This guide will walk you through steps to set up AWX / Ansible Tower integration Before configuring the integration, please ensure the following: -- `nautobot-chatops` App was [installed with integration extra dependencies](./../install.md#installation-guide). +- `nautobot-chatops` App was [installed with integration extra dependencies](../install.md#installation-guide). ```shell pip install nautobot-chatops[ansible] ``` -- `nautobot-chatops` App is set up with at least one [enabled chat platform](./../install.md#chat-platforms-configuration) and [tested](./../install.md#test-your-chatbot). +- `nautobot-chatops` App is set up with at least one [enabled chat platform](../install.md#chat-platforms-configuration) and [tested](./../install.md#test-your-chatbot). ## Command Setup -Create a top-level command named `ansible` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./../install.md#chat-platforms-configuration). +Create a top-level command named `ansible` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](../install.md#chat-platforms-configuration). ## Configuration diff --git a/docs/admin/integrations/aristacv.md b/docs/admin/integrations/aristacv.md index 211b14d3..00ecd78e 100644 --- a/docs/admin/integrations/aristacv.md +++ b/docs/admin/integrations/aristacv.md @@ -6,15 +6,15 @@ This guide will walk you through steps to set up Arista CloudVision integration Before configuring the integration, please ensure the following: -- `nautobot-chatops` App was [installed with integration extra dependencies](./../install.md#installation-guide). +- `nautobot-chatops` App was [installed with integration extra dependencies](../install.md#installation-guide). ```shell pip install nautobot-chatops[aristacv] ``` -- `nautobot-chatops` App is set up with at least one [enabled chat platform](./../install.md#chat-platforms-configuration) and [tested](./../install.md#test-your-chatbot). +- `nautobot-chatops` App is set up with at least one [enabled chat platform](../install.md#chat-platforms-configuration) and [tested](./../install.md#test-your-chatbot). ## Command Setup -Create a top-level command named `aristacv` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./../install.md#chat-platforms-configuration). +Create a top-level command named `aristacv` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](../install.md#chat-platforms-configuration). ## Configuration diff --git a/docs/admin/integrations/grafana.md b/docs/admin/integrations/grafana.md index a5568732..13f6f563 100644 --- a/docs/admin/integrations/grafana.md +++ b/docs/admin/integrations/grafana.md @@ -6,18 +6,18 @@ This guide will walk you through steps to set up Grafana integration with the `n Before configuring the integration, please ensure the following: -- `nautobot-chatops` App was [installed with integration extra dependencies](./../install.md#installation-guide). +- `nautobot-chatops` App was [installed with integration extra dependencies](../install.md#installation-guide). ```shell pip install nautobot-chatops[grafana] ``` -- `nautobot-chatops` App is set up with at least one [enabled chat platform](./../install.md#chat-platforms-configuration) and [tested](./../install.md#test-your-chatbot). +- `nautobot-chatops` App is set up with at least one [enabled chat platform](../install.md#chat-platforms-configuration) and [tested](./../install.md#test-your-chatbot). - [Grafana](https://grafana.com/docs/grafana/latest/installation/) application installed and configured with dashboards and panels. - [Grafana Image Rendering Service](https://grafana.com/docs/grafana/latest/administration/image_rendering/) installed. - [Grafana Image Rending App for Grafana](https://grafana.com/grafana/plugins/grafana-image-renderer/) installed in your Grafana application. ## Command Setup -Create a top-level command named `grafana` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./../install.md#chat-platforms-configuration). +Create a top-level command named `grafana` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](../install.md#chat-platforms-configuration). ## Configuration diff --git a/docs/admin/integrations/ipfabric.md b/docs/admin/integrations/ipfabric.md index d2645e7b..f1b27bf3 100644 --- a/docs/admin/integrations/ipfabric.md +++ b/docs/admin/integrations/ipfabric.md @@ -6,11 +6,11 @@ This guide will walk you through steps to set up IPFabric integration with the ` Before configuring the integration, please ensure the following: -- `nautobot-chatops` App was [installed with integration extra dependencies](./../install.md#installation-guide). +- `nautobot-chatops` App was [installed with integration extra dependencies](../install.md#installation-guide). ```shell pip install nautobot-chatops[ipfabric] ``` -- `nautobot-chatops` App is set up with at least one [enabled chat platform](./../install.md#chat-platforms-configuration) and [tested](./../install.md#test-your-chatbot). +- `nautobot-chatops` App is set up with at least one [enabled chat platform](../install.md#chat-platforms-configuration) and [tested](./../install.md#test-your-chatbot). ## Version Matrix @@ -25,7 +25,7 @@ Here is a compatibility matrix and the minimum versions required to run this app ## Command Setup -Create a top-level command named `ipfabric` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./../install.md#chat-platforms-configuration). +Create a top-level command named `ipfabric` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](../install.md#chat-platforms-configuration). ## Configuration diff --git a/docs/admin/integrations/meraki.md b/docs/admin/integrations/meraki.md index f1115418..5988a1b2 100644 --- a/docs/admin/integrations/meraki.md +++ b/docs/admin/integrations/meraki.md @@ -6,15 +6,15 @@ This guide will walk you through steps to set up Cisco Meraki integration with t Before configuring the integration, please ensure the following: -- `nautobot-chatops` App was [installed with integration extra dependencies](./../install.md#installation-guide). +- `nautobot-chatops` App was [installed with integration extra dependencies](../install.md#installation-guide). ```shell pip install nautobot-chatops[meraki] ``` -- `nautobot-chatops` App is set up with at least one [enabled chat platform](./../install.md#chat-platforms-configuration) and [tested](./../install.md#test-your-chatbot). +- `nautobot-chatops` App is set up with at least one [enabled chat platform](../install.md#chat-platforms-configuration) and [tested](./../install.md#test-your-chatbot). ## Command Setup -Create a top-level command named `meraki` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./../install.md#chat-platforms-configuration). +Create a top-level command named `meraki` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](../install.md#chat-platforms-configuration). ## Configuration diff --git a/docs/admin/integrations/panorama.md b/docs/admin/integrations/panorama.md index fd432c31..70be3ff4 100644 --- a/docs/admin/integrations/panorama.md +++ b/docs/admin/integrations/panorama.md @@ -6,15 +6,15 @@ This guide will walk you through steps to set up Palo Alto Panorama integration Before configuring the integration, please ensure the following: -- `nautobot-chatops` App was [installed with integration extra dependencies](./../install.md#installation-guide). +- `nautobot-chatops` App was [installed with integration extra dependencies](../install.md#installation-guide). ```shell pip install nautobot-chatops[panorama] ``` -- `nautobot-chatops` App is set up with at least one [enabled chat platform](./../install.md#chat-platforms-configuration) and [tested](./../install.md#test-your-chatbot). +- `nautobot-chatops` App is set up with at least one [enabled chat platform](../install.md#chat-platforms-configuration) and [tested](./../install.md#test-your-chatbot). ## Command Setup -Create a top-level command named `panorama` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./../install.md#chat-platforms-configuration). +Create a top-level command named `panorama` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](../install.md#chat-platforms-configuration). ## Configuration From 78ccc874d445cec992d4aaaa43b83b9e5d4b5421 Mon Sep 17 00:00:00 2001 From: Jan Snasel Date: Thu, 1 Feb 2024 07:40:42 +0000 Subject: [PATCH 41/93] fix: admin install doc links --- docs/admin/install.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/admin/install.md b/docs/admin/install.md index 75164591..f0942106 100644 --- a/docs/admin/install.md +++ b/docs/admin/install.md @@ -13,7 +13,7 @@ This guide outlines the process of enabling Nautobot ChatOps, which includes: - [Test Your Chatbot](#test-your-chatbot) - [Integrations Configuration](#integrations-configuration) -{% include-markdown '../../glossary.md' heading-offset=1 %} +{% include-markdown '../glossary.md' heading-offset=1 %} ## Prerequisites @@ -126,7 +126,7 @@ Adjust the App's behavior with the following settings: ## Granting Access to the Chat Platform {% - include-markdown '../../models/accessgrant.md' + include-markdown '../models/accessgrant.md' start='' heading-offset=1 %} @@ -134,7 +134,7 @@ Adjust the App's behavior with the following settings: ## Link Nautobot Account {% - include-markdown '../../models/chatopsaccountlink.md' + include-markdown '../models/chatopsaccountlink.md' start='' heading-offset=1 %} From 3b450c4fb752a4affa889532bf26d52fa6d451ae Mon Sep 17 00:00:00 2001 From: bakebot Date: Thu, 1 Feb 2024 14:57:46 +0000 Subject: [PATCH 42/93] Cookie updated by NetworkToCode Cookie Drift Manager Tool Template: ``` { "template": "https://github.com/nautobot/cookiecutter-nautobot-app.git", "dir": "nautobot-app", "ref": "refs/tags/nautobot-app-v2.1.0", "path": null } ``` Cookie: ``` { "remote": "https://github.com/nautobot/nautobot-app-chatops.git", "path": "/tmp/tmp3t7nocrc/nautobot-app-chatops", "repository_path": "/tmp/tmp3t7nocrc/nautobot-app-chatops", "dir": "", "branch_prefix": "drift-manager", "context": { "codeowner_github_usernames": "@glennmatthews @jvanderaa @smk4664 @whitej6", "full_name": "Network to Code, LLC", "email": "opensource@networktocode.com", "github_org": "nautobot", "app_name": "nautobot_chatops", "verbose_name": "Nautobot ChatOps App", "app_slug": "nautobot-chatops", "project_slug": "nautobot-app-chatops", "repo_url": "https://github.com/nautobot/nautobot-app-chatops/", "base_url": "chatops", "min_nautobot_version": "2.0.0", "max_nautobot_version": "2.9999", "camel_name": "NautobotChatOpsApp", "project_short_description": "Nautobot ChatOps App", "model_class_name": "None", "open_source_license": "Apache-2.0", "docs_base_url": "https://docs.nautobot.com", "docs_app_url": "https://docs.nautobot.com/projects/chatops/en/latest", "_template": "https://github.com/nautobot/cookiecutter-nautobot-app.git", "_output_dir": "/tmp/tmp3t7nocrc", "_repo_dir": "/github/home/.cookiecutters/cookiecutter-nautobot-app/nautobot-app", "_checkout": "refs/tags/nautobot-app-v2.1.0" }, "base_branch": "develop", "remote_name": "origin", "pull_request_strategy": "PullRequestStrategy.CREATE", "post_actions": [ "PostAction.BLACK" ], "baked_commit_ref": "f7199da166a77ef00af4347535a1e09f939a711a", "draft": true } ``` CLI Arguments: ``` { "cookie_dir": "", "input": false, "json_filename": "", "output_dir": "", "push": true, "template": "", "template_dir": "", "template_ref": "refs/tags/nautobot-app-v2.1.0", "pull_request": null, "post_action": [], "disable_post_actions": false, "draft": null } ``` --- .cookiecutter.json | 4 +- .github/CODEOWNERS | 11 +- .../pull_request_template.md | 2 +- .github/workflows/ci.yml | 53 +++-- .github/workflows/rebake.yml | 118 ----------- LICENSE | 2 +- README.md | 46 +++-- development/Dockerfile | 4 +- development/docker-compose.base.yml | 6 +- development/docker-compose.dev.yml | 12 ++ development/nautobot_config.py | 3 - development/towncrier_template.j2 | 4 +- docs/admin/compatibility_matrix.md | 26 +-- docs/admin/install.md | 81 ++++++++ docs/admin/release_notes/version_1.0.md | 48 +++++ docs/admin/uninstall.md | 14 +- docs/admin/upgrade.md | 4 +- docs/assets/extra.css | 5 + docs/dev/arch_decision.md | 7 + docs/dev/contributing.md | 140 +------------ docs/dev/dev_environment.md | 11 +- docs/user/app_overview.md | 17 +- nautobot_chatops/__init__.py | 35 +--- nautobot_chatops/migrations/__init__.py | 0 nautobot_chatops/tests/test_api.py | 3 +- nautobot_chatops/tests/test_basic.py | 12 -- pyproject.toml | 184 ++++++++++-------- tasks.py | 158 ++++++++++++--- 28 files changed, 507 insertions(+), 503 deletions(-) delete mode 100644 .github/workflows/rebake.yml create mode 100644 docs/admin/install.md create mode 100644 docs/admin/release_notes/version_1.0.md create mode 100644 docs/dev/arch_decision.md delete mode 100644 nautobot_chatops/migrations/__init__.py diff --git a/.cookiecutter.json b/.cookiecutter.json index 1cd564a0..6e537e17 100644 --- a/.cookiecutter.json +++ b/.cookiecutter.json @@ -21,7 +21,7 @@ "_drift_manager": { "template": "https://github.com/nautobot/cookiecutter-nautobot-app.git", "template_dir": "nautobot-app", - "template_ref": "develop", + "template_ref": "refs/tags/nautobot-app-v2.1.0", "cookie_dir": "", "branch_prefix": "drift-manager", "pull_request_strategy": "create", @@ -29,7 +29,7 @@ "black" ], "draft": true, - "baked_commit_ref": "f7199da166a77ef00af4347535a1e09f939a711a" + "baked_commit_ref": "4b6c888ec08af5233332d01d66b9f71c2f9368a8" } } } diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 9d83a2e6..e5d2e518 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1,9 +1,2 @@ -# Default owners for all files in this repository -* @glennmatthews @jvanderaa @smk4664 @whitej6 @romanukes -/nautobot_chatops/integrations/aci/ @pato23arg -/nautobot_chatops/integrations/ansible/ @smk4664 -/nautobot_chatops/integrations/aristacv/ @qduk -/nautobot_chatops/integrations/grafana/ @davidban77 -/nautobot_chatops/integrations/meraki/ @jeffkala -/nautobot_chatops/integrations/ipfabric/ @alhogan @pke11y -/nautobot_chatops/integrations/panorama/ @jdrew82 +# Default owner(s) of all files in this repository +* @glennmatthews @jvanderaa @smk4664 @whitej6 diff --git a/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md b/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md index b1eba070..31b4e282 100644 --- a/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md +++ b/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md @@ -1,5 +1,5 @@ " +issue_format = "[#{issue}](https://github.com/nautobot/nautobot-app-chatops//issues/{issue})" + +[[tool.towncrier.type]] +directory = "security" +name = "Security" +showcontent = true + +[[tool.towncrier.type]] +directory = "added" +name = "Added" +showcontent = true + +[[tool.towncrier.type]] +directory = "changed" +name = "Changed" +showcontent = true + +[[tool.towncrier.type]] +directory = "deprecated" +name = "Deprecated" +showcontent = true + +[[tool.towncrier.type]] +directory = "removed" +name = "Removed" +showcontent = true + +[[tool.towncrier.type]] +directory = "fixed" +name = "Fixed" +showcontent = true + +[[tool.towncrier.type]] +directory = "dependencies" +name = "Dependencies" +showcontent = true + +[[tool.towncrier.type]] +directory = "documentation" +name = "Documentation" +showcontent = true + +[[tool.towncrier.type]] +directory = "housekeeping" +name = "Housekeeping" +showcontent = true diff --git a/tasks.py b/tasks.py index b2960e11..282a62a7 100644 --- a/tasks.py +++ b/tasks.py @@ -13,6 +13,8 @@ """ import os +from pathlib import Path +from time import sleep from invoke.collection import Collection from invoke.tasks import task as invoke_task @@ -21,7 +23,8 @@ def is_truthy(arg): """Convert "truthy" strings into Booleans. - Examples: + Examples + -------- >>> is_truthy('yes') True Args: @@ -69,6 +72,25 @@ def _is_compose_included(context, name): return f"docker-compose.{name}.yml" in context.nautobot_chatops.compose_files +def _await_healthy_service(context, service): + container_id = docker_compose(context, f"ps -q -- {service}", pty=False, echo=False, hide=True).stdout.strip() + _await_healthy_container(context, container_id) + + +def _await_healthy_container(context, container_id): + while True: + result = context.run( + "docker inspect --format='{{.State.Health.Status}}' " + container_id, + pty=False, + echo=False, + hide=True, + ) + if result.stdout.strip() == "healthy": + break + print(f"Waiting for `{container_id}` container to become healthy ...") + sleep(1) + + def task(function=None, *args, **kwargs): """Task decorator to override the default Invoke task decorator and add each task to the invoke namespace.""" @@ -92,6 +114,7 @@ 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. @@ -218,11 +241,46 @@ def stop(context, service=""): docker_compose(context, "stop" if service else "down --remove-orphans", service=service) -@task -def destroy(context): +@task( + aliases=("down",), + help={ + "volumes": "Remove Docker compose volumes (default: True)", + "import-db-file": "Import database from `import-db-file` file into the fresh environment (default: empty)", + }, +) +def destroy(context, volumes=True, import_db_file=""): """Destroy all containers and volumes.""" print("Destroying Nautobot...") - docker_compose(context, "down --remove-orphans --volumes") + docker_compose(context, f"down --remove-orphans {'--volumes' if volumes else ''}") + + if not import_db_file: + return + + if not volumes: + raise ValueError("Cannot specify `--no-volumes` and `--import-db-file` arguments at the same time.") + + print(f"Importing database file: {import_db_file}...") + + input_path = Path(import_db_file).absolute() + if not input_path.is_file(): + raise ValueError(f"File not found: {input_path}") + + command = [ + "run", + "--rm", + "--detach", + f"--volume='{input_path}:/docker-entrypoint-initdb.d/dump.sql'", + "--", + "db", + ] + + container_id = docker_compose(context, " ".join(command), pty=False, echo=False, hide=True).stdout.strip() + _await_healthy_container(context, container_id) + print("Stopping database container...") + context.run(f"docker stop {container_id}", pty=False, echo=False, hide=True) + + print("Database import complete, you can start Nautobot with the following command:") + print("invoke start") @task @@ -426,27 +484,43 @@ def dbshell(context, db_name="", input_file="", output_file="", query=""): @task( help={ + "db-name": "Database name to create (default: Nautobot database)", "input-file": "SQL dump file to replace the existing database with. This can be generated using `invoke backup-db` (default: `dump.sql`).", } ) -def import_db(context, input_file="dump.sql"): - """Stop Nautobot containers and replace the current database with the dump into the running `db` container.""" - docker_compose(context, "stop -- nautobot worker") +def import_db(context, db_name="", input_file="dump.sql"): + """Stop Nautobot containers and replace the current database with the dump into `db` container.""" + docker_compose(context, "stop -- nautobot worker beat") + start(context, "db") + _await_healthy_service(context, "db") command = ["exec -- db sh -c '"] if _is_compose_included(context, "mysql"): + if not db_name: + db_name = "$MYSQL_DATABASE" command += [ + "mysql --user root --password=$MYSQL_ROOT_PASSWORD", + '--execute="', + f"DROP DATABASE IF EXISTS {db_name};", + f"CREATE DATABASE {db_name};", + "" + if db_name == "$MYSQL_DATABASE" + else f"GRANT ALL PRIVILEGES ON {db_name}.* TO $MYSQL_USER; FLUSH PRIVILEGES;", + '"', + "&&", "mysql", - "--database=$MYSQL_DATABASE", + f"--database={db_name}", "--user=$MYSQL_USER", "--password=$MYSQL_PASSWORD", ] elif _is_compose_included(context, "postgres"): + if not db_name: + db_name = "$POSTGRES_DB" command += [ - "psql", - "--username=$POSTGRES_USER", - "postgres", + f"dropdb --if-exists --user=$POSTGRES_USER {db_name} &&", + f"createdb --user=$POSTGRES_USER {db_name} &&", + f"psql --user=$POSTGRES_USER --dbname={db_name}", ] else: raise ValueError("Unsupported database backend.") @@ -469,7 +543,10 @@ def import_db(context, input_file="dump.sql"): } ) def backup_db(context, db_name="", output_file="dump.sql", readable=True): - """Dump database into `output_file` file from running `db` container.""" + """Dump database into `output_file` file from `db` container.""" + start(context, "db") + _await_healthy_service(context, "db") + command = ["exec -- db sh -c '"] if _is_compose_included(context, "mysql"): @@ -477,17 +554,12 @@ def backup_db(context, db_name="", output_file="dump.sql", readable=True): "mysqldump", "--user=root", "--password=$MYSQL_ROOT_PASSWORD", - "--add-drop-database", "--skip-extended-insert" if readable else "", - "--databases", db_name if db_name else "$MYSQL_DATABASE", ] elif _is_compose_included(context, "postgres"): command += [ "pg_dump", - "--clean", - "--create", - "--if-exists", "--username=$POSTGRES_USER", f"--dbname={db_name or '$POSTGRES_DB'}", "--inserts" if readable else "", @@ -544,6 +616,19 @@ def help_task(context): context.run(f"invoke {task_name} --help") +@task( + help={ + "version": "Version of Nautobot ChatOps App to generate the release notes for.", + } +) +def generate_release_notes(context, version=""): + """Generate Release Notes using Towncrier.""" + command = "env DJANGO_SETTINGS_MODULE=nautobot.core.settings towncrier build" + if version: + command += f" --version {version}" + run_command(context, command) + + # ------------------------------------------------------------------------------ # TESTS # ------------------------------------------------------------------------------ @@ -585,12 +670,34 @@ def pylint(context): run_command(context, command) -@task -def pydocstyle(context): - """Run pydocstyle to validate docstring formatting adheres to NTC defined standards.""" - # We exclude the /migrations/ directory since it is autogenerated code - command = "pydocstyle ." - run_command(context, command) +@task(aliases=("a",)) +def autoformat(context): + """Run code autoformatting.""" + black(context, autoformat=True) + ruff(context, action="both", fix=True) + + +@task( + help={ + "action": "One of 'lint', 'format', or 'both'", + "fix": "Automatically fix selected action. May not be able to fix all.", + "output_format": "see https://docs.astral.sh/ruff/settings/#output-format", + }, +) +def ruff(context, action="lint", fix=False, output_format="text"): + """Run ruff to perform code formatting and/or linting.""" + if action != "lint": + command = "ruff format" + if not fix: + command += " --check" + command += " ." + run_command(context, command) + if action != "format": + command = "ruff check" + if fix: + command += " --fix" + command += f" --output-format {output_format} ." + run_command(context, command) @task @@ -605,6 +712,7 @@ 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" @@ -679,12 +787,12 @@ def tests(context, failfast=False, keepdb=False, lint_only=False): # Sorted loosely from fastest to slowest print("Running black...") black(context) + print("Running ruff...") + ruff(context) print("Running flake8...") flake8(context) print("Running bandit...") bandit(context) - print("Running pydocstyle...") - pydocstyle(context) print("Running yamllint...") yamllint(context) print("Running poetry check...") From a186fae1afd514e7d9c7d01e8c0fe38c7d7a8c41 Mon Sep 17 00:00:00 2001 From: Jan Snasel Date: Thu, 1 Feb 2024 15:34:45 +0000 Subject: [PATCH 43/93] chore: Manual fixes --- .github/CODEOWNERS | 9 +- README.md | 46 +++--- development/towncrier_template.j2 | 2 +- docs/admin/compatibility_matrix.md | 26 +++- docs/admin/install.md | 81 ---------- docs/admin/release_notes/version_1.0.md | 48 ------ docs/admin/upgrade.md | 4 +- docs/dev/arch_decision.md | 7 - docs/dev/contributing.md | 138 ++++++++++++++++++ docs/dev/dev_environment.md | 2 +- docs/user/app_overview.md | 17 +-- nautobot_chatops/__init__.py | 33 ++++- nautobot_chatops/integrations/__init__.py | 1 + .../integrations/grafana/__init__.py | 1 + nautobot_chatops/migrations/__init__.py | 0 nautobot_chatops/sockets/__init__.py | 1 + nautobot_chatops/tests/test_api.py | 3 +- pyproject.toml | 78 ++++++++-- tasks.py | 18 +-- 19 files changed, 299 insertions(+), 216 deletions(-) delete mode 100644 docs/admin/install.md delete mode 100644 docs/admin/release_notes/version_1.0.md delete mode 100644 docs/dev/arch_decision.md create mode 100644 nautobot_chatops/migrations/__init__.py diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index e5d2e518..33f44a03 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1,2 +1,9 @@ # Default owner(s) of all files in this repository -* @glennmatthews @jvanderaa @smk4664 @whitej6 +* @glennmatthews @jvanderaa @smk4664 @whitej6 @romanukes +/nautobot_chatops/integrations/aci/ @pato23arg +/nautobot_chatops/integrations/ansible/ @smk4664 +/nautobot_chatops/integrations/aristacv/ @qduk +/nautobot_chatops/integrations/grafana/ @davidban77 +/nautobot_chatops/integrations/meraki/ @jeffkala +/nautobot_chatops/integrations/ipfabric/ @alhogan @pke11y +/nautobot_chatops/integrations/panorama/ @jdrew82 diff --git a/README.md b/README.md index df4f4503..5af700d6 100644 --- a/README.md +++ b/README.md @@ -1,37 +1,33 @@ # Nautobot ChatOps

- +
- - + +
A multi-platform ChatOps bot App for Nautobot.

-## 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. - -### 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-chatops/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/chatops/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-chatops/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/)! - -> 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/). +- Support for multiple chat platforms: + - Mattermost + - Microsoft Teams + - Slack + - Cisco Webex +- Support for multiple integrations: + - Cisco ACI + - AWX / Ansible Tower + - Arista CloudVision + - Grafana + - IPFabric + - Cisco Meraki + - Palo Alto Panorama +- Write a command once and run it on every supported platform, including rich content formatting. +- Extensible - other Nautobot apps can provide additional commands which will be dynamically discovered. +- Automatic generation of basic help menus (accessed via `help`, `/command help`, or `/command sub-command help`). +- Metrics of command usage via the `nautobot_capacity_metrics` app. ## Documentation @@ -46,7 +42,7 @@ Full web-based HTML documentation for this app can be found over on the [Nautobo ## Try it Out -You can find all the Markdown source for the App documentation under the [`docs`](https://github.com/nautobot/nautobot-app-chatops//tree/develop/docs) folder in this repository. For simple edits, a Markdown capable editor is sufficient: clone the repository and edit away. +Interested to see Nautobot ChatOps in action? It's currently setup on the [Demo Instance](https://demo.nautobot.com/) and integrated into [NTC Slack](https://slack.networktocode.com). You can sign up for that Slack workspace and join the `#nautobot-chat` channel to understand what this bot can do and try it for yourself. You can try these exact chat commands and many more: ### Command: `/nautobot` diff --git a/development/towncrier_template.j2 b/development/towncrier_template.j2 index d2ec61bd..7010b057 100644 --- a/development/towncrier_template.j2 +++ b/development/towncrier_template.j2 @@ -1,6 +1,6 @@ {% if render_title %} -## v{{ versiondata.version }} ({{ versiondata.date }}) +## [v{{ versiondata.version }} ({{ versiondata.date }})](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v{{ versiondata.version}}) {% endif %} {% for section, _ in sections.items() %} diff --git a/docs/admin/compatibility_matrix.md b/docs/admin/compatibility_matrix.md index 7494f0a4..c799cf60 100644 --- a/docs/admin/compatibility_matrix.md +++ b/docs/admin/compatibility_matrix.md @@ -1,8 +1,24 @@ # 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. +Changes to the support of upstream Nautobot releases will be announced 1 minor or major version ahead. -| Nautobot ChatOps App Version | Nautobot First Support Version | Nautobot Last Support Version | -| ------------- | -------------------- | ------------- | -| 1.0.X | 2.0.0 | 2.99.99 | +The **deprecation policy** will be announced within the [release notes](release_notes/index.md), and updated in the table below. There will be a `stable-.` branch that will be minimally maintained. Any security enhancements or major bugs in that branch will be supported for a limited time. + +While that last supported version will not be strictly enforced via the `max_version` setting, any issues with an updated Nautobot supported version in a minor release will require raising a bug and fixing it in Nautobot core, with no fixes expected in this app. This allows the Chatops app the ability to quickly take advantage of the latest features in Nautobot. + +| Chatops Version | Nautobot First Support Version | Nautobot Last Support Version | +| --------------- | ------------------------------ | ----------------------------- | +| 1.0.X | 1.0.0 | 1.2.99 [Official] | +| 1.1.X | 1.0.0 | 1.2.99 [Official] | +| 1.2.X | 1.0.0 | 1.2.99 [Official] | +| 1.3.X | 1.0.0 | 1.2.99 [Official] | +| 1.4.X | 1.0.0 | 1.2.99 [Official] | +| 1.5.X | 1.0.0 | 1.2.99 [Official] | +| 1.6.X | 1.0.0 | 1.2.99 [Official] | +| 1.7.X | 1.0.0 | 1.2.99 [Official] | +| 1.8.X | 1.1.0 | 1.4.99 [Official] | +| 1.9.X | 1.2.0 | 1.5.99 [Official] | +| 1.10.X | 1.3.0 | 1.5.99 [Official] | +| 2.0.X | 1.5.4 | 1.6.99 [Official] | +| 2.1.X | 1.6.2 | 1.6.99 [Official] | +| 3.0.X | 2.0.0 | 2.2.99 [Official] | diff --git a/docs/admin/install.md b/docs/admin/install.md deleted file mode 100644 index 5fa696c0..00000000 --- a/docs/admin/install.md +++ /dev/null @@ -1,81 +0,0 @@ -# Installing the App in Nautobot - -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. -- Databases supported: PostgreSQL, MySQL - -!!! note - Please check the [dedicated page](compatibility_matrix.md) for a full compatibility matrix and the deprecation policy. - -### Access Requirements - -!!! warning "Developer Note - Remove Me!" - What external systems (if any) it needs access to in order to work. - -## Install Guide - -!!! note - Apps can be installed manually or using Python's `pip`. See the [nautobot documentation](https://nautobot.readthedocs.io/en/latest/plugins/#install-the-package) for more details. The pip package name for this app is [`nautobot-chatops`](https://pypi.org/project/nautobot-chatops/). - -The app is available as a Python package via PyPI and can be installed with `pip`: - -```shell -pip install nautobot-chatops -``` - -To ensure Nautobot ChatOps App is automatically re-installed during future upgrades, create a file named `local_requirements.txt` (if not already existing) in the Nautobot root directory (alongside `requirements.txt`) and list the `nautobot-chatops` package: - -```shell -echo nautobot-chatops >> local_requirements.txt -``` - -Once installed, the app needs to be enabled in your Nautobot configuration. The following block of code below shows the additional configuration required to be added to your `nautobot_config.py` file: - -- Append `"nautobot_chatops"` to the `PLUGINS` list. -- Append the `"nautobot_chatops"` dictionary to the `PLUGINS_CONFIG` dictionary and override any defaults. - -```python -# In your nautobot_config.py -PLUGINS = ["nautobot_chatops"] - -# PLUGINS_CONFIG = { -# "nautobot_chatops": { -# ADD YOUR SETTINGS HERE -# } -# } -``` - -Once the Nautobot configuration is updated, run the Post Upgrade command (`nautobot-server post_upgrade`) to run migrations and clear any cache: - -```shell -nautobot-server post_upgrade -``` - -Then restart (if necessary) the Nautobot services which may include: - -- Nautobot -- Nautobot Workers -- Nautobot Scheduler - -```shell -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 | -| ------- | ------ | -------- | ------------------------------------- | -| `enable_backup` | `True` | `True` | A boolean to represent whether or not to run backup configurations within the app. | -| `platform_slug_map` | `{"cisco_wlc": "cisco_aireos"}` | `None` | A dictionary in which the key is the platform slug and the value is what netutils uses in any "network_os" parameter. | -| `per_feature_bar_width` | `0.15` | `0.15` | The width of the table bar within the overview report | diff --git a/docs/admin/release_notes/version_1.0.md b/docs/admin/release_notes/version_1.0.md deleted file mode 100644 index f1f4f4c2..00000000 --- a/docs/admin/release_notes/version_1.0.md +++ /dev/null @@ -1,48 +0,0 @@ -# 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 - -- Major features or milestones -- Achieved in this `x.y` release -- Changes to compatibility with Nautobot and/or other apps, libraries etc. - -## [v1.0.1] - 2021-09-08 - -### Added - -### Changed - -### Fixed - -- [#123](https://github.com/nautobot/nautobot-app-chatops//issues/123) Fixed Tag filtering not working in job launch form - -## [v1.0.0] - 2021-08-03 - -### Added - -### Changed - -### Fixed diff --git a/docs/admin/upgrade.md b/docs/admin/upgrade.md index eba97c56..6c8becb4 100644 --- a/docs/admin/upgrade.md +++ b/docs/admin/upgrade.md @@ -6,4 +6,6 @@ Here you will find any steps necessary to upgrade the App in your Nautobot envir 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-chatops` package via `pip`. -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-chatops` package via `pip`. +### Upgrading to ChatOps 3.0 + +Introduced in 3.0.0 is [Account Linking](../models/chatopsaccountlink.md), users will now need to link their Chat Platform User with their Nautobot User. Until this is done, the `fallback_chatops_user` setting controls the default Nautobot User and should have proper Nautobot Permissions applied. diff --git a/docs/dev/arch_decision.md b/docs/dev/arch_decision.md deleted file mode 100644 index 6a68035d..00000000 --- a/docs/dev/arch_decision.md +++ /dev/null @@ -1,7 +0,0 @@ -# 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). diff --git a/docs/dev/contributing.md b/docs/dev/contributing.md index b6277a4d..1d03330e 100644 --- a/docs/dev/contributing.md +++ b/docs/dev/contributing.md @@ -39,6 +39,144 @@ All pull requests to `next` or `develop` must include a changelog fragment file Changed release notes generation. ``` +## Adding a new top-level command + +First, you should be familiar with the design goals and constraints involved in Nautobot (`design.md`). +Be sure that this is really what you want to do, versus adding a sub-command instead. + +We recommend that each command exist as its own submodule under `nautobot_chatops/workers/` (or, as a separate package +entirely, such as `nautobot_chatops_mycommand/worker.py`, using the `entrypoint/plugin` capability described in `design.md`) +to keep code files to a reasonable size and complexity. This submodule or package should implement a +`celery` worker function(s). In general this worker function shouldn't need to do much more than call +the `handle_subcommands` helper function provided: + +```python +# nautobot_chatops/workers/mycommand.py + +from nautobot_chatops.workers import handle_subcommands, subcommand_of + + +def mycommand(subcommand, **kwargs) + """Perform mycommand and its subcommands.""" + return handle_subcommands("mycommand", subcommand, **kwargs) +``` + +By using `handle_subcommands`, the top-level command worker will automatically recognize the sub-command "help", +as well as any sub-commands registered using the `@subcommand_of` decorator. + +You shouldn't need to make any changes to the `views` or `dispatchers` modules in this scenario. + +For usability, you should use the App Studio app in the Microsoft Teams client to update the bot settings +(`Nautobot_ms_teams.zip`) to include this new top-level command as a documented command supported by the bot. +You will probably then need to delete the bot deployment from your team and re-deploy it for the new command to appear. + +You will also need to log in to api.slack.com and add the new slash-command to your bot's configuration. + +## Adding a new sub-command + +First, you should be familiar with the design goals and constraints involved in Nautobot (`design.md`). + +To register a sub-command, write a function whose name matches the sub-command's name (any `_` in the function name +will be automatically converted to `-` for the sub-command name), and decorate it with the `@subcommand_of` decorator. +This function must take `dispatcher` (an instance of any `Dispatcher` subclass) as its first argument; any additional +positional arguments become arguments in the chat app UI. The docstring of this function will become the help text +displayed for this sub-command when a user invokes ` help`, so it should be concise and to the point. + +```python +from nautobot_chatops.workers import subcommand_of + +# ... + +@subcommand_of("mycommand") +def do_something(dispatcher, first_arg, second_arg): + """Do something with two arguments.""" + # ... +``` + +With the above code, the command `mycommand do_something [first_arg] [second_arg]` will now be available. + +You shouldn't need to make any changes to the `views` or `dispatchers` modules in this scenario. + +A sub-command worker function should always return one of the following: + +### `return False` + +This indicates that the function did not do anything meaningful, and it so should not be logged in Nautobot's +command log. Typically, this is only returned when not all required parameters have been provided by the user +and so the function needs to prompt the user for additional inputs, for example: + +```python +@subcommand_of("nautobot") +def get_rack(dispatcher, site_key, rack_id): + """Get information about a specific rack from Nautobot.""" + site_lt = LocationType.objects.get(name="Site") + if not site_key: + site_options = [(site.name, site.composite_key) for site in Location.objects.filter(location_type=site_lt)] + dispatcher.prompt_from_menu("nautobot get-rack", "Select a site (location)", site_options) + return False # command did not run to completion and therefore should not be logged + ... +``` + +### `return CommandStatusChoices.STATUS_SUCCEEDED` + +This indicates that the command was successful, and no further details are necessary in the logging. +You *could* return another status code besides `STATUS_SUCCEEDED` in this pattern, but in general any other status +code should be accompanied by an explanatory message: + +### `return (CommandStatusChoices.STATUS_FAILED, details_str)` + +This indicates that the command failed for some reason, which is provided for logging purposes. +You could also use other status codes (including `STATUS_SUCCEEDED`) for any other outcome that also requires +explanation. + +The provided `details_str` will be stored in the Nautobot command log history. + +## Adding support for a new chat platform (Webhooks) + +First, you should be familiar with the design goals and constraints involved in Nautobot (`design.md`). + +You'll need to add a new `nautobot_chatops.views.` submodule that provides any necessary API endpoints. + +You'll also need to add a new `nautobot_chatops.dispatchers.` submodule that implements an appropriate +subclass of `Dispatcher`. This new dispatcher class will need to implement any abstract methods of the base class +and override any other methods where platform-specific behavior is required (which will probably be most of them). + +You shouldn't need to make any changes to the `workers` module in this scenario. + +## Adding support for a new chat platform (WebSockets) + +First, you should be familiar with the design goals and constraints involved in Nautobot (`design.md`). + +You'll need to add a new `nautobot_chatops.sockets.` submodule that provides the necessary WebSockets connection to the Platform. + +You'll also need to add a new `nautobot_chatops.dispatchers.` submodule that implements an appropriate +subclass of `Dispatcher`. This new dispatcher class will need to implement any abstract methods of the base class +and override any other methods where platform-specific behavior is required (which will probably be most of them). + +Finally, you will need to add a new `nautobot_chatops.management.start__socket` management command that will start the WebSockets asynchronous loop. +In 2.0 these will likely be condensed to use a single base command with arguments to select the platform. + +You shouldn't need to make any changes to the `workers` module in this scenario. + +## Submitting Pull Requests + +- It is recommended to open an issue **before** starting work on a pull request, and discuss your idea with the Nautobot maintainers before beginning work. This will help prevent wasting time on something that we might not be able to implement. When suggesting a new feature, also make sure it won't conflict with any work that's already in progress. + +- Once you've opened or identified an issue you'd like to work on, ask that it + be assigned to you so that others are aware it's being worked on. A maintainer + will then mark the issue as "accepted." + +- If you followed the project guidelines, have ample tests, code quality, you will first be acknowledged for your work. So, thank you in advance! After that, the PR will be quickly reviewed to ensure that it makes sense as a contribution to the project, and to gauge the work effort or issues with merging into *current*. If the effort required by the core team isn’t trivial, it’ll likely still be a few weeks before it gets thoroughly reviewed and merged, thus it won't be uncommon to move it to *near term* with a `near-term` label. It will just depend on the current backlog. + +- All code submissions should meet the following criteria (CI will enforce +these checks): + - Python syntax is valid + - All unit tests pass successfully + - PEP 8 compliance is enforced, with the exception that lines may be + greater than 80 characters in length + - At least one [changelog fragment](#creating-changelog-fragments) has + been included in the feature branch + ## Branching Policy The branching policy includes the following tenets: diff --git a/docs/dev/dev_environment.md b/docs/dev/dev_environment.md index 80b02327..9a9a458e 100644 --- a/docs/dev/dev_environment.md +++ b/docs/dev/dev_environment.md @@ -368,7 +368,7 @@ Once the dependencies are resolved, stop the existing containers, rebuild the Do ### Installing Additional Nautobot Apps -Let's say for example you want the new app you're creating to integrate into Slack. To do this, you will want to integrate into the existing Nautobot ChatOps App. +Let's say for example you want the new app you're creating to integrate into Nautobot ChatOps. To do this, you will want to integrate into the existing Nautobot ChatOps App. ```bash ➜ poetry shell diff --git a/docs/user/app_overview.md b/docs/user/app_overview.md index 29247449..0e8a188f 100644 --- a/docs/user/app_overview.md +++ b/docs/user/app_overview.md @@ -23,16 +23,7 @@ The ChatOps framework provides Network Engineers power to query Nautobot or thei ## 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? +- Glenn Matthews (@glennmatthews) +- Josh VanDeraa (@jvanderaa) +- Jeremy White (@whitej6) +- Stephen Kiely (@smk4664) diff --git a/nautobot_chatops/__init__.py b/nautobot_chatops/__init__.py index a3c495a0..b191b59e 100644 --- a/nautobot_chatops/__init__.py +++ b/nautobot_chatops/__init__.py @@ -2,12 +2,36 @@ # Metadata is inherited from Nautobot. If not including Nautobot in the environment, this should be added from importlib import metadata -from nautobot.apps import NautobotAppConfig +from django.conf import settings +from nautobot.apps import ConstanceConfigItem, NautobotAppConfig __version__ = metadata.version(__name__) -class NautobotChatOpsAppConfig(NautobotAppConfig): +_CONFLICTING_APP_NAMES = [ + # App names that conflict with nautobot_chatops + "nautobot_plugin_chatops_aci", + "nautobot_plugin_chatops_ansible", + "nautobot_plugin_chatops_aristacv", + "nautobot_plugin_chatops_grafana", + "nautobot_plugin_chatops_ipfabric", + "nautobot_plugin_chatops_meraki", + "nautobot_plugin_chatops_panorama", +] + + +def _check_for_conflicting_apps(): + intersection = set(_CONFLICTING_APP_NAMES).intersection(set(settings.PLUGINS)) + if intersection: + raise RuntimeError( + f"The following apps are installed and conflict with `nautobot-chatops`: {', '.join(intersection)}." + ) + + +_check_for_conflicting_apps() + + +class NautobotChatOpsConfig(NautobotAppConfig): """App configuration for the nautobot_chatops app.""" name = "nautobot_chatops" @@ -129,4 +153,7 @@ def ready(self): from nautobot_capacity_metrics import register_metric_func from .metrics_app import metric_commands -config = NautobotChatOpsAppConfig # pylint:disable=invalid-name + register_metric_func(metric_commands) + + +config = NautobotChatOpsConfig # pylint:disable=invalid-name diff --git a/nautobot_chatops/integrations/__init__.py b/nautobot_chatops/integrations/__init__.py index e69de29b..9c158ba0 100644 --- a/nautobot_chatops/integrations/__init__.py +++ b/nautobot_chatops/integrations/__init__.py @@ -0,0 +1 @@ +"""Nautobot ChatOps Integrations.""" diff --git a/nautobot_chatops/integrations/grafana/__init__.py b/nautobot_chatops/integrations/grafana/__init__.py index e69de29b..10a07da3 100644 --- a/nautobot_chatops/integrations/grafana/__init__.py +++ b/nautobot_chatops/integrations/grafana/__init__.py @@ -0,0 +1 @@ +"""Nautobot ChatOps Graphana Integration.""" diff --git a/nautobot_chatops/migrations/__init__.py b/nautobot_chatops/migrations/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/nautobot_chatops/sockets/__init__.py b/nautobot_chatops/sockets/__init__.py index e69de29b..c63edf0d 100644 --- a/nautobot_chatops/sockets/__init__.py +++ b/nautobot_chatops/sockets/__init__.py @@ -0,0 +1 @@ +"""Nautobot ChatOps Sockets.""" diff --git a/nautobot_chatops/tests/test_api.py b/nautobot_chatops/tests/test_api.py index 4508c7c5..3113ce4e 100644 --- a/nautobot_chatops/tests/test_api.py +++ b/nautobot_chatops/tests/test_api.py @@ -7,8 +7,7 @@ from nautobot_chatops.models import AccessGrant, CommandToken -class PlaceholderAPITest(TestCase): - """Test the NautobotChatOpsApp API.""" +nautobot_version = metadata.version("nautobot") class AppTest(APITestCase): # pylint: disable=too-many-ancestors diff --git a/pyproject.toml b/pyproject.toml index 4dfc1eeb..77230393 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -70,6 +70,7 @@ texttable = "^1.6.2" webexteamssdk = "^1.3" [tool.poetry.group.dev.dependencies] +Markdown = "*" bandit = "*" black = "*" coverage = "~5.4" @@ -77,27 +78,79 @@ django-debug-toolbar = "*" flake8 = "*" invoke = "*" ipython = "*" -pylint = "*" -pylint-django = "*" -pylint-nautobot = "*" -ruff = "*" -yamllint = "*" -toml = "*" -Markdown = "*" -# Rendering docs to HTML mkdocs = "1.5.2" -# Material for MkDocs theme +mkdocs-include-markdown-plugin = "6.0.3" mkdocs-material = "9.1.15" -# Render custom markdown for version added/changed/remove notes mkdocs-version-annotations = "1.0.0" -# Automatic documentation from sources, for MkDocs mkdocstrings = "0.22.0" mkdocstrings-python = "1.5.2" +prybar = "*" +pylint = "*" +pylint-django = "*" +pylint-nautobot = "*" +requests-mock = "^1.9.3" +ruff = "*" +toml = "*" towncrier = "~23.6.0" +yamllint = "*" [tool.poetry.extras] all = [ + "PyYAML", + "certifi", + "cloudvision", + "cvprac", + "defusedxml", + "diffsync", + "ipaddr", + "ipfabric", + "ipfabric-diagrams", + "isodate", + "meraki", + "netmiko", + "netutils", + "pan-os-python", + "prettytable", + "protobuf", + "pydantic", + "schema-enforcer", + "termcolor", +] +aci = [ + "prettytable", +] +aristacv = [ + "certifi", + "cloudvision", + "cvprac", + "protobuf" +] +ansible = [ + "PyYAML", ] +grafana = [ + "diffsync", + "isodate", + "pydantic", + "schema-enforcer", + "termcolor", +] +ipfabric = [ + "ipfabric", + "ipfabric-diagrams", + "netutils", +] +meraki = [ + "meraki", +] +panorama = [ + "defusedxml", + "ipaddr", + "netmiko", + "netutils", + "pan-os-python", +] +nautobot = ["nautobot"] [tool.black] line-length = 120 @@ -183,6 +236,9 @@ ignore = [ "D401", # First line of docstring should be in imperative mood "D407", # Missing dashed underline after section "D416", # Section name ends in colon + + # Package specific + "D417", # Missing argument descriptions in Docstrings ] [tool.ruff.lint.pydocstyle] diff --git a/tasks.py b/tasks.py index 282a62a7..8891db05 100644 --- a/tasks.py +++ b/tasks.py @@ -23,8 +23,7 @@ def is_truthy(arg): """Convert "truthy" strings into Booleans. - Examples - -------- + Examples: >>> is_truthy('yes') True Args: @@ -114,7 +113,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. @@ -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" @@ -859,16 +856,3 @@ def connect_awx_container(context, container_name="tools_awx_1"): bridge_network = f"{context.nautobot_chatops.project_name}_awx" context.run(f"docker network connect --alias awx {bridge_network} {container_name}") print(f"Container {container_name} connected to {bridge_network} network") - - -@task( - help={ - "version": "Version of Nautobot ChatOps to generate the release notes for.", - } -) -def generate_release_notes(context, version=""): - """Generate Release Notes using Towncrier.""" - command = "env DJANGO_SETTINGS_MODULE=nautobot.core.settings towncrier build" - if version: - command += f" --version {version}" - run_command(context, command) From a98b2e5c18dea08ecc86e76f186d0b9741714cbf Mon Sep 17 00:00:00 2001 From: Jan Snasel Date: Thu, 1 Feb 2024 15:37:28 +0000 Subject: [PATCH 44/93] chore: Poetry lock --- poetry.lock | 89 ++++++++++++++++++++++------------------------------- 1 file changed, 36 insertions(+), 53 deletions(-) diff --git a/poetry.lock b/poetry.lock index cec3f276..88348e98 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 1.5.1 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.7.1 and should not be changed by hand. [[package]] name = "aiodns" @@ -3409,23 +3409,6 @@ typing-extensions = ">=4.2.0" dotenv = ["python-dotenv (>=0.10.4)"] email = ["email-validator (>=1.0.3)"] -[[package]] -name = "pydocstyle" -version = "6.3.0" -description = "Python docstring style checker" -optional = false -python-versions = ">=3.6" -files = [ - {file = "pydocstyle-6.3.0-py3-none-any.whl", hash = "sha256:118762d452a49d6b05e194ef344a55822987a462831ade91ec5c06fd2169d019"}, - {file = "pydocstyle-6.3.0.tar.gz", hash = "sha256:7ce43f0c0ac87b07494eb9c0b462c0b73e6ff276807f204d6b53edc72b7e44e1"}, -] - -[package.dependencies] -snowballstemmer = ">=2.2.0" - -[package.extras] -toml = ["tomli (>=1.2.3)"] - [[package]] name = "pyflakes" version = "2.3.1" @@ -4141,7 +4124,8 @@ files = [ {file = "ruamel.yaml.clib-0.2.7-cp310-cp310-win32.whl", hash = "sha256:763d65baa3b952479c4e972669f679fe490eee058d5aa85da483ebae2009d231"}, {file = "ruamel.yaml.clib-0.2.7-cp310-cp310-win_amd64.whl", hash = "sha256:d000f258cf42fec2b1bbf2863c61d7b8918d31ffee905da62dede869254d3b8a"}, {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:045e0626baf1c52e5527bd5db361bc83180faaba2ff586e763d3d5982a876a9e"}, - {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-macosx_12_6_arm64.whl", hash = "sha256:721bc4ba4525f53f6a611ec0967bdcee61b31df5a56801281027a3a6d1c2daf5"}, + {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-macosx_13_0_arm64.whl", hash = "sha256:1a6391a7cabb7641c32517539ca42cf84b87b667bad38b78d4d42dd23e957c81"}, + {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-manylinux2014_aarch64.whl", hash = "sha256:9c7617df90c1365638916b98cdd9be833d31d337dbcd722485597b43c4a215bf"}, {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:41d0f1fa4c6830176eef5b276af04c89320ea616655d01327d5ce65e50575c94"}, {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-win32.whl", hash = "sha256:f6d3d39611ac2e4f62c3128a9eed45f19a6608670c5a2f4f07f24e8de3441d38"}, {file = "ruamel.yaml.clib-0.2.7-cp311-cp311-win_amd64.whl", hash = "sha256:da538167284de58a52109a9b89b8f6a53ff8437dd6dc26d33b57bf6699153122"}, @@ -4172,6 +4156,32 @@ files = [ {file = "ruamel.yaml.clib-0.2.7.tar.gz", hash = "sha256:1f08fd5a2bea9c4180db71678e850b995d2a5f4537be0e94557668cf0f5f9497"}, ] +[[package]] +name = "ruff" +version = "0.1.15" +description = "An extremely fast Python linter and code formatter, written in Rust." +optional = false +python-versions = ">=3.7" +files = [ + {file = "ruff-0.1.15-py3-none-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:5fe8d54df166ecc24106db7dd6a68d44852d14eb0729ea4672bb4d96c320b7df"}, + {file = "ruff-0.1.15-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:6f0bfbb53c4b4de117ac4d6ddfd33aa5fc31beeaa21d23c45c6dd249faf9126f"}, + {file = "ruff-0.1.15-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e0d432aec35bfc0d800d4f70eba26e23a352386be3a6cf157083d18f6f5881c8"}, + {file = "ruff-0.1.15-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:9405fa9ac0e97f35aaddf185a1be194a589424b8713e3b97b762336ec79ff807"}, + {file = "ruff-0.1.15-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c66ec24fe36841636e814b8f90f572a8c0cb0e54d8b5c2d0e300d28a0d7bffec"}, + {file = "ruff-0.1.15-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl", hash = "sha256:6f8ad828f01e8dd32cc58bc28375150171d198491fc901f6f98d2a39ba8e3ff5"}, + {file = "ruff-0.1.15-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:86811954eec63e9ea162af0ffa9f8d09088bab51b7438e8b6488b9401863c25e"}, + {file = "ruff-0.1.15-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fd4025ac5e87d9b80e1f300207eb2fd099ff8200fa2320d7dc066a3f4622dc6b"}, + {file = "ruff-0.1.15-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b17b93c02cdb6aeb696effecea1095ac93f3884a49a554a9afa76bb125c114c1"}, + {file = "ruff-0.1.15-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:ddb87643be40f034e97e97f5bc2ef7ce39de20e34608f3f829db727a93fb82c5"}, + {file = "ruff-0.1.15-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:abf4822129ed3a5ce54383d5f0e964e7fef74a41e48eb1dfad404151efc130a2"}, + {file = "ruff-0.1.15-py3-none-musllinux_1_2_i686.whl", hash = "sha256:6c629cf64bacfd136c07c78ac10a54578ec9d1bd2a9d395efbee0935868bf852"}, + {file = "ruff-0.1.15-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:1bab866aafb53da39c2cadfb8e1c4550ac5340bb40300083eb8967ba25481447"}, + {file = "ruff-0.1.15-py3-none-win32.whl", hash = "sha256:2417e1cb6e2068389b07e6fa74c306b2810fe3ee3476d5b8a96616633f40d14f"}, + {file = "ruff-0.1.15-py3-none-win_amd64.whl", hash = "sha256:3837ac73d869efc4182d9036b1405ef4c73d9b1f88da2413875e34e0d6919587"}, + {file = "ruff-0.1.15-py3-none-win_arm64.whl", hash = "sha256:9a933dfb1c14ec7a33cceb1e49ec4a16b51ce3c20fd42663198746efc0427360"}, + {file = "ruff-0.1.15.tar.gz", hash = "sha256:f6dfa8c1b21c913c326919056c390966648b680966febcb796cc9d1aaab8564e"}, +] + [[package]] name = "rx" version = "1.6.3" @@ -4224,22 +4234,6 @@ files = [ [package.dependencies] paramiko = "*" -[[package]] -name = "setuptools" -version = "68.2.2" -description = "Easily download, build, install, upgrade, and uninstall Python packages" -optional = false -python-versions = ">=3.8" -files = [ - {file = "setuptools-68.2.2-py3-none-any.whl", hash = "sha256:b454a35605876da60632df1a60f736524eb73cc47bbc9f3f1ef1b644de74fd2a"}, - {file = "setuptools-68.2.2.tar.gz", hash = "sha256:4ac1475276d2f1c48684874089fefcd83bd7162ddaafb81fac866ba0db282a87"}, -] - -[package.extras] -docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-hoverxref (<2)", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier"] -testing = ["build[virtualenv]", "filelock (>=3.4.0)", "flake8-2020", "ini2toml[lite] (>=0.9)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "pip (>=19.1)", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-perf", "pytest-ruff", "pytest-timeout", "pytest-xdist", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"] -testing-integration = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "packaging (>=23.1)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"] - [[package]] name = "singledispatch" version = "4.1.0" @@ -4303,17 +4297,6 @@ files = [ {file = "sniffio-1.3.0.tar.gz", hash = "sha256:e60305c5e5d314f5389259b7f22aaa33d8f7dee49763119234af3755c55b9101"}, ] -[[package]] -name = "snowballstemmer" -version = "2.2.0" -description = "This package provides 29 stemmers for 28 languages generated from Snowball algorithms." -optional = false -python-versions = "*" -files = [ - {file = "snowballstemmer-2.2.0-py2.py3-none-any.whl", hash = "sha256:c8e1716e83cc398ae16824e5572ae04e0d9fc2c6b985fb0f900f5f0c96ecba1a"}, - {file = "snowballstemmer-2.2.0.tar.gz", hash = "sha256:09b16deb8547d3412ad7b590689584cd0fe25ec8db3be37788be3810cbf19cb1"}, -] - [[package]] name = "social-auth-app-django" version = "5.2.0" @@ -4515,25 +4498,25 @@ files = [ [[package]] name = "towncrier" -version = "22.8.0" +version = "23.6.0" description = "Building newsfiles for your project." optional = false python-versions = ">=3.7" files = [ - {file = "towncrier-22.8.0-py2.py3-none-any.whl", hash = "sha256:3b780c3d966e1b26414830aec3d15000654b31e64e024f3e5fd128b4c6eb8f47"}, - {file = "towncrier-22.8.0.tar.gz", hash = "sha256:7d3839b033859b45fb55df82b74cfd702431933c0cc9f287a5a7ea3e05d042cb"}, + {file = "towncrier-23.6.0-py3-none-any.whl", hash = "sha256:da552f29192b3c2b04d630133f194c98e9f14f0558669d427708e203fea4d0a5"}, + {file = "towncrier-23.6.0.tar.gz", hash = "sha256:fc29bd5ab4727c8dacfbe636f7fb5dc53b99805b62da1c96b214836159ff70c1"}, ] [package.dependencies] click = "*" click-default-group = "*" +importlib-resources = {version = ">=5", markers = "python_version < \"3.10\""} incremental = "*" jinja2 = "*" -setuptools = "*" -tomli = "*" +tomli = {version = "*", markers = "python_version < \"3.11\""} [package.extras] -dev = ["packaging"] +dev = ["furo", "packaging", "sphinx (>=5)", "twisted"] [[package]] name = "traitlets" @@ -4997,4 +4980,4 @@ panorama = ["defusedxml", "ipaddr", "netmiko", "netutils", "pan-os-python"] [metadata] lock-version = "2.0" python-versions = ">=3.8,<3.12" -content-hash = "ab7d4f0eab523ac12ffe5ed51c5764fc1fb4e477c8ff161753a984db7d495722" +content-hash = "9edc678921261739f715585db93b205eb9d4e92b525c11a27d87dbe7625d1196" From c5bc13b8fc813a500f0d361878be896bb58b4f24 Mon Sep 17 00:00:00 2001 From: Jan Snasel Date: Thu, 1 Feb 2024 15:37:35 +0000 Subject: [PATCH 45/93] chore: Changelog fragment --- changes/297.changed | 1 + 1 file changed, 1 insertion(+) create mode 100644 changes/297.changed diff --git a/changes/297.changed b/changes/297.changed new file mode 100644 index 00000000..7a7cdde0 --- /dev/null +++ b/changes/297.changed @@ -0,0 +1 @@ +Replaced pydocstyle with ruff. From 31615b18c8e6f4e8eac8dbad3e74c4112f5302fc Mon Sep 17 00:00:00 2001 From: Stephen Kiely Date: Mon, 5 Feb 2024 11:30:15 -0600 Subject: [PATCH 46/93] Fix Version Annotations --- docs/admin/install.md | 5 ++--- docs/models/chatopsaccountlink.md | 2 +- docs/user/app_getting_started.md | 2 +- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/docs/admin/install.md b/docs/admin/install.md index f0942106..a432d036 100644 --- a/docs/admin/install.md +++ b/docs/admin/install.md @@ -107,9 +107,8 @@ PLUGINS_CONFIG = { } ``` -+++3.0.0 - -Some configuration settings have now been added to the Nautobot Admin Config page. See [Nautobot Admin](https://docs.nautobot.com/projects/core/en/stable/configuration/optional-settings/?h=administr#administratively-configurable-settings) ++++ 3.0.0 + Some configuration settings have now been added to the Nautobot Admin Config page. See [Nautobot Admin](https://docs.nautobot.com/projects/core/en/stable/configuration/optional-settings/?h=administr#administratively-configurable-settings) ## Configuration Guide diff --git a/docs/models/chatopsaccountlink.md b/docs/models/chatopsaccountlink.md index 56746302..a1eb488c 100644 --- a/docs/models/chatopsaccountlink.md +++ b/docs/models/chatopsaccountlink.md @@ -1,7 +1,7 @@ # Account Link -+++3.0.0 ++++ 3.0.0 Nautobot ChatOps now uses the built-in Nautobot permissions for Nautobot Objects (Devices, Locations, Racks, etc.). Each user will need to link their Nautobot Account with their Chat Platform User Account. Login to Nautobot then access the Link ChatOps Account within the Plugins menu. Here you can provide your email address and select the ChatOps Platform you are using, then click the Look up User ID from Email to get your Chat User ID. diff --git a/docs/user/app_getting_started.md b/docs/user/app_getting_started.md index b304f49a..89bb62ed 100644 --- a/docs/user/app_getting_started.md +++ b/docs/user/app_getting_started.md @@ -8,7 +8,7 @@ To install the App, please follow the instructions detailed in the [Administrato ## Link Nautobot Account -+++3.0.0 ++++ 3.0.0 Nautobot ChatOps now uses the built-in Nautobot permissions for Nautobot Objects (Devices, Locations, Racks, etc.). Each user will need to link their Nautobot Account with their Chat Platform User Account. Login to Nautobot then access the Link ChatOps Account within the Plugins menu. Here you can provide your email address and select the ChatOps Platform you are using, then click the Look up User ID from Email to get your Chat User ID. From 87ca889ff0ac22ae112f95f626e8d1e47b2ec296 Mon Sep 17 00:00:00 2001 From: Josh VanDeraa Date: Mon, 5 Feb 2024 16:29:09 -0600 Subject: [PATCH 47/93] Updates codeowners. --- .github/CODEOWNERS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 9d83a2e6..1d574925 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1,5 +1,5 @@ # Default owners for all files in this repository -* @glennmatthews @jvanderaa @smk4664 @whitej6 @romanukes +* @glennmatthews @smk4664 @whitej6 @romanukes /nautobot_chatops/integrations/aci/ @pato23arg /nautobot_chatops/integrations/ansible/ @smk4664 /nautobot_chatops/integrations/aristacv/ @qduk From 9a259a5af66d884ea2f437041ce8af030eab754d Mon Sep 17 00:00:00 2001 From: meganerddev Date: Mon, 5 Feb 2024 18:06:07 -0500 Subject: [PATCH 48/93] CI history expired, re-running checks --- nautobot_chatops/workers/nautobot.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index 29e8eea0..be197e27 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1329,7 +1329,7 @@ def init_job_form(dispatcher, job_name: str = ""): ) elif field_type == "number": - # TODO: Can we enforce numeric-character mask for widget input? + # TODO: Can we enforce numeric-character mask for widget input without JavaScript? default_value = field.initial form_item_dialogs.append( { From 8dd56fed62e8397f6ef2e806352d1f21a6f49663 Mon Sep 17 00:00:00 2001 From: meganerddev Date: Mon, 5 Feb 2024 18:38:28 -0500 Subject: [PATCH 49/93] pylint CI fixes: W1113, R0914, C0301 --- nautobot_chatops/workers/nautobot.py | 26 +++++++++----------------- 1 file changed, 9 insertions(+), 17 deletions(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index be197e27..05d9810d 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1097,7 +1097,7 @@ def get_jobs(dispatcher, kwargs: str = ""): dispatcher.send_error(f"Invalid JSON-string, cannot decode: {kwargs}") return (CommandStatusChoices.STATUS_FAILED, f"Invalid JSON-string, cannot decode: {kwargs}") - # confirm `name` is always present in export + # Confirm `name` is always present in export name_key = json_args.get("name") or json_args.get("Name") if not name_key: json_args.append("name") @@ -1121,14 +1121,13 @@ def get_jobs(dispatcher, kwargs: str = ""): @subcommand_of("nautobot") -def init_job(dispatcher, job_name: str = "", json_string_kwargs: str = "", *args): +def init_job(dispatcher, *args, job_name: str = "", json_string_kwargs: str = ""): """Initiate a job in Nautobot by job name. Args: job_name (str): Name of Nautobot job to run. json_string_kwargs (str): JSON-string dictionary for input keyword arguments for job run. *args (tuple): Dispatcher form will pass job args as tuple. - #profile (str): Whether to profile the job execution. """ # Prompt the user to pick a job if they did not specify one if not job_name: @@ -1161,9 +1160,7 @@ def init_job(dispatcher, job_name: str = "", json_string_kwargs: str = "", *args dispatcher.send_error(f"The requested job {job_name} is not enabled") return (CommandStatusChoices.STATUS_FAILED, f'Job "{job_name}" is not enabled') - job_class_path = job_model.class_path - job_class = get_job(job_model.class_path) - form_class = job_class.as_form() + form_class = get_job(job_model.class_path).as_form() # Parse base form fields from job class form_fields = [] @@ -1175,20 +1172,16 @@ def init_job(dispatcher, job_name: str = "", json_string_kwargs: str = "", *args # Basic logic check with what we know, we should expect init-job-form vs init-job to parse the same base fields if len(form_fields) != len(args): dispatcher.send_error( - "The form class fields and the passed init-jobs args do no match. Something went wrong parsing the base field items." + "The form class fields and the passed init-jobs args do not match." ) return ( CommandStatusChoices.STATUS_FAILED, - "The form class fields and the passed init-jobs args do no match. Something went wrong parsing the base field items.", + "The form class fields and the passed init-jobs args do not match.", ) - # Convert positional args to kwargs - # TODO: we might just pass the job the positional args we already have - # ideal I would prefer something similar to multi_input_dialog that passes kwargs back - # but ultimately we follow the same logic used to get them in both subcommands, so it is the same ordered result at runtime form_item_kwargs = {} for index, _ in enumerate(form_fields): # pylint: disable=unused-variable - # Check if json dictionary as string. We could probably check the input types and know instead of checking if valid json string + # Check request input (string-type) is also valid JSON if args[index][0] == "{": try: json_arg = json.loads(args[index]) @@ -1220,7 +1213,7 @@ def init_job(dispatcher, job_name: str = "", json_string_kwargs: str = "", *args job_url = job_result.get_absolute_url() blocks = [ dispatcher.markdown_block( - f"The requested job {job_class_path} was initiated! [`click here`]({job_url}) to open the job." + f"The requested job {job_model.class_path} was initiated! [`click here`]({job_url}) to open the job." ), ] @@ -1246,7 +1239,7 @@ def init_job_form(dispatcher, job_name: str = ""): except Job.DoesNotExist: blocks = [ dispatcher.markdown_block( - f"Job {job_name} does not exist or requesting user {dispatcher.user} does not have permissions to run job." + f"Job {job_name} does not exist or {dispatcher.user} does not have permissions to run job." # pylint: disable=line-too-long ), ] dispatcher.send_blocks(blocks) @@ -1266,8 +1259,7 @@ def init_job_form(dispatcher, job_name: str = ""): dispatcher.send_blocks(blocks) return CommandStatusChoices.STATUS_SUCCEEDED - job_class = get_job(job.class_path) - form_class = job_class.as_form() + form_class = get_job(job.class_path).as_form() # Parse base form fields from job class form_items = {} From 195c888a78f16979a2148fa188768623355a4ae5 Mon Sep 17 00:00:00 2001 From: meganerddev Date: Mon, 5 Feb 2024 19:18:35 -0500 Subject: [PATCH 50/93] Black code formatter --- nautobot_chatops/workers/nautobot.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index 05d9810d..dce0ebcb 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1171,9 +1171,7 @@ def init_job(dispatcher, *args, job_name: str = "", json_string_kwargs: str = "" # Basic logic check with what we know, we should expect init-job-form vs init-job to parse the same base fields if len(form_fields) != len(args): - dispatcher.send_error( - "The form class fields and the passed init-jobs args do not match." - ) + dispatcher.send_error("The form class fields and the passed init-jobs args do not match.") return ( CommandStatusChoices.STATUS_FAILED, "The form class fields and the passed init-jobs args do not match.", @@ -1239,7 +1237,7 @@ def init_job_form(dispatcher, job_name: str = ""): except Job.DoesNotExist: blocks = [ dispatcher.markdown_block( - f"Job {job_name} does not exist or {dispatcher.user} does not have permissions to run job." # pylint: disable=line-too-long + f"Job {job_name} does not exist or {dispatcher.user} does not have permissions to run job." # pylint: disable=line-too-long ), ] dispatcher.send_blocks(blocks) From 28c1d95b93f65b6980324057c2232c2b753754be Mon Sep 17 00:00:00 2001 From: meganerddev Date: Mon, 5 Feb 2024 19:31:44 -0500 Subject: [PATCH 51/93] pylint ignore too-many-locals for init_job --- nautobot_chatops/workers/nautobot.py | 1 + 1 file changed, 1 insertion(+) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index dce0ebcb..acdb3851 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1120,6 +1120,7 @@ def get_jobs(dispatcher, kwargs: str = ""): return CommandStatusChoices.STATUS_SUCCEEDED +# pylint: disable=too-many-locals @subcommand_of("nautobot") def init_job(dispatcher, *args, job_name: str = "", json_string_kwargs: str = ""): """Initiate a job in Nautobot by job name. From cb26441ffb3edcc2963c00e31f7a0933d3404738 Mon Sep 17 00:00:00 2001 From: meganerd Date: Mon, 5 Feb 2024 19:43:20 -0500 Subject: [PATCH 52/93] Replace execute_job with enqueue_job, which is correct Nautobot 2.x pattern Added wait for job to initiate using refresh_from_db Corrected the initiated job url hyperlink message --- nautobot_chatops/workers/nautobot.py | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index acdb3851..82af0815 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1,6 +1,7 @@ """Worker functions for interacting with Nautobot.""" import json +import time from django.core.exceptions import ValidationError @@ -13,6 +14,7 @@ from nautobot.dcim.models import Device, DeviceType, Location, LocationType, Manufacturer, Rack, Cable from nautobot.ipam.models import VLAN, Prefix, VLANGroup from nautobot.tenancy.models import Tenant +from nautobot.extras.choices import JobResultStatusChoices from nautobot.extras.models import Job, JobResult, Role, Status from nautobot.extras.jobs import get_job @@ -1197,22 +1199,28 @@ def init_job(dispatcher, *args, job_name: str = "", json_string_kwargs: str = "" continue form_item_kwargs[form_fields[index]] = args[index] - job_result = JobResult.execute_job( + job_result = JobResult.enqueue_job( job_model=job_model, user=dispatcher.user, profile=profile, **form_item_kwargs, ) + # Wait on the job to finish + while job_result.status not in JobResultStatusChoices.READY_STATES: + time.sleep(1) + job_result.refresh_from_db() + if job_result and job_result.status == "FAILURE": dispatcher.send_error(f"The requested job {job_name} failed to initiate. Result: {job_result.result}") return (CommandStatusChoices.STATUS_FAILED, f'Job "{job_name}" failed to initiate. Result: {job_result.result}') - # TODO: Need base-domain, this yields: /extras/job-results// - job_url = job_result.get_absolute_url() + job_url = ( + f"{dispatcher.context['request_scheme']}://{dispatcher.context['request_host']}{job_result.get_absolute_url()}" + ) blocks = [ dispatcher.markdown_block( - f"The requested job {job_model.class_path} was initiated! [`click here`]({job_url}) to open the job." + f"The requested job {job_class_path} was initiated! [`click here`]({job_url}) to open the job." ), ] From 64ed9366d1a992d44d4422f977b46820f79d6a87 Mon Sep 17 00:00:00 2001 From: meganerd Date: Mon, 5 Feb 2024 19:58:50 -0500 Subject: [PATCH 53/93] Fix missing variable --- nautobot_chatops/workers/nautobot.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index 82af0815..9f20ec47 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1220,7 +1220,7 @@ def init_job(dispatcher, *args, job_name: str = "", json_string_kwargs: str = "" ) blocks = [ dispatcher.markdown_block( - f"The requested job {job_class_path} was initiated! [`click here`]({job_url}) to open the job." + f"The requested job {job_model.class_path} was initiated! [`click here`]({job_url}) to open the job." ), ] From 00eb275cdbbca2441426dd24c04aba27f2a4a08c Mon Sep 17 00:00:00 2001 From: meganerd Date: Mon, 5 Feb 2024 20:55:23 -0500 Subject: [PATCH 54/93] Update breadcrumb changes Follow existing pylint ignore pattern on repo --- changes/270.added | 4 ++-- nautobot_chatops/workers/nautobot.py | 5 ++--- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/changes/270.added b/changes/270.added index 2a43fc7f..c1c87383 100644 --- a/changes/270.added +++ b/changes/270.added @@ -1,4 +1,4 @@ -Add init_jobs Nautobot subcommand. -Add kwargs input to init_jobs as JSON-string to init_jobs. +Add init_job Nautobot subcommand, which initiates a job with kwargs or a job requiring no manual form input. +Add init_job_form Nautobot subcommand, which presents job's form widgets to the user. Add get_jobs Nautobot subcommand, which returns all Nautobot jobs viewable to user. Add filter_jobs Nautobot subcommand, which returns filtered set of Nautobot jobs viewable to user. diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index 9f20ec47..b1ab606a 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1122,15 +1122,14 @@ def get_jobs(dispatcher, kwargs: str = ""): return CommandStatusChoices.STATUS_SUCCEEDED -# pylint: disable=too-many-locals @subcommand_of("nautobot") -def init_job(dispatcher, *args, job_name: str = "", json_string_kwargs: str = ""): +def init_job(dispatcher, *args, job_name: str = "", json_string_kwargs: str = ""): # pylint: disable=too-many-locals """Initiate a job in Nautobot by job name. Args: + *args (tuple): Dispatcher form will pass job args as tuple. job_name (str): Name of Nautobot job to run. json_string_kwargs (str): JSON-string dictionary for input keyword arguments for job run. - *args (tuple): Dispatcher form will pass job args as tuple. """ # Prompt the user to pick a job if they did not specify one if not job_name: From 7470ec861458a86e523e452ede9a7ef5e13af6cd Mon Sep 17 00:00:00 2001 From: meganerd Date: Mon, 5 Feb 2024 21:10:36 -0500 Subject: [PATCH 55/93] Add max iterations for waiting on job to enter ready state in the database --- nautobot_chatops/workers/nautobot.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index b1ab606a..c0fc1049 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1206,7 +1206,12 @@ def init_job(dispatcher, *args, job_name: str = "", json_string_kwargs: str = "" ) # Wait on the job to finish + max_wait_iterations = 60 while job_result.status not in JobResultStatusChoices.READY_STATES: + max_wait_iterations -= 1 + if not max_wait_iterations: + dispatcher.send_error(f"The requested job {job_name} failed to reach ready state.") + return (CommandStatusChoices.STATUS_FAILED, f'Job "{job_name}" failed to reach ready state.') time.sleep(1) job_result.refresh_from_db() From 0ab7e78c83ef788326a7be1dca4a70053c597d6e Mon Sep 17 00:00:00 2001 From: meganerddev Date: Tue, 6 Feb 2024 16:03:29 -0500 Subject: [PATCH 56/93] Rename `init_job` subcommand to `run_job` Rename `init_job_form`subcommand to `run_job_form` --- changes/270.added | 4 ++-- nautobot_chatops/workers/nautobot.py | 16 ++++++++-------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/changes/270.added b/changes/270.added index c1c87383..a5f14277 100644 --- a/changes/270.added +++ b/changes/270.added @@ -1,4 +1,4 @@ -Add init_job Nautobot subcommand, which initiates a job with kwargs or a job requiring no manual form input. -Add init_job_form Nautobot subcommand, which presents job's form widgets to the user. +Add run_job Nautobot subcommand, which initiates a job with kwargs or a job requiring no manual form input. +Add run_job_form Nautobot subcommand, which presents job's form widgets to the user. Add get_jobs Nautobot subcommand, which returns all Nautobot jobs viewable to user. Add filter_jobs Nautobot subcommand, which returns filtered set of Nautobot jobs viewable to user. diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index c0fc1049..45f4555d 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1123,7 +1123,7 @@ def get_jobs(dispatcher, kwargs: str = ""): @subcommand_of("nautobot") -def init_job(dispatcher, *args, job_name: str = "", json_string_kwargs: str = ""): # pylint: disable=too-many-locals +def run_job(dispatcher, *args, job_name: str = "", json_string_kwargs: str = ""): # pylint: disable=too-many-locals """Initiate a job in Nautobot by job name. Args: @@ -1133,7 +1133,7 @@ def init_job(dispatcher, *args, job_name: str = "", json_string_kwargs: str = "" """ # Prompt the user to pick a job if they did not specify one if not job_name: - return prompt_for_job(dispatcher, "nautobot init-job") + return prompt_for_job(dispatcher, "nautobot run-job") if args: json_string_kwargs = "{}" @@ -1171,12 +1171,12 @@ def init_job(dispatcher, *args, job_name: str = "", json_string_kwargs: str = "" continue form_fields.append(f"{field_name}") - # Basic logic check with what we know, we should expect init-job-form vs init-job to parse the same base fields + # Basic logic check with what we know, we should expect run-job-form vs run-job to parse the same base fields if len(form_fields) != len(args): - dispatcher.send_error("The form class fields and the passed init-jobs args do not match.") + dispatcher.send_error("The form class fields and the passed run-job args do not match.") return ( CommandStatusChoices.STATUS_FAILED, - "The form class fields and the passed init-jobs args do not match.", + "The form class fields and the passed run-job args do not match.", ) form_item_kwargs = {} @@ -1234,7 +1234,7 @@ def init_job(dispatcher, *args, job_name: str = "", json_string_kwargs: str = "" @subcommand_of("nautobot") -def init_job_form(dispatcher, job_name: str = ""): +def run_job_form(dispatcher, job_name: str = ""): """Send job form as a multi-input dialog. On form submit it initiates the job with the form arguments. Args: @@ -1242,7 +1242,7 @@ def init_job_form(dispatcher, job_name: str = ""): """ # Prompt the user to pick a job if they did not specify one if not job_name: - return prompt_for_job(dispatcher, "nautobot init-job-form") + return prompt_for_job(dispatcher, "nautobot run-job-form") # Get jobs available to user try: @@ -1373,7 +1373,7 @@ def init_job_form(dispatcher, job_name: str = ""): # TODO: BUG: Single inputs will present but not submit properly with multi_input_dialog dispatcher.multi_input_dialog( command="nautobot", - sub_command=f"init-job {job_name} {{}}", + sub_command=f"run-job {job_name} {{}}", dialog_title=f"job {job_name} form input", dialog_list=form_item_dialogs, ) From 875ca649bdd0cde11e6ac7a0d668ee729560f463 Mon Sep 17 00:00:00 2001 From: meganerddev Date: Wed, 7 Feb 2024 02:22:49 -0500 Subject: [PATCH 57/93] Update error for initiated job status failure state --- nautobot_chatops/workers/nautobot.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index 45f4555d..37b1f757 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1216,8 +1216,8 @@ def run_job(dispatcher, *args, job_name: str = "", json_string_kwargs: str = "") job_result.refresh_from_db() if job_result and job_result.status == "FAILURE": - dispatcher.send_error(f"The requested job {job_name} failed to initiate. Result: {job_result.result}") - return (CommandStatusChoices.STATUS_FAILED, f'Job "{job_name}" failed to initiate. Result: {job_result.result}') + dispatcher.send_error(f"The requested job {job_name} was initiated but failed. Result: {job_result.result}") + return (CommandStatusChoices.STATUS_FAILED, f'Job "{job_name}" was initiated but failed. Result: {job_result.result}') # pylint: disable=line-too-long job_url = ( f"{dispatcher.context['request_scheme']}://{dispatcher.context['request_host']}{job_result.get_absolute_url()}" From e6c14c6ee278c1757f36fe1c24ff69b9a26d26ba Mon Sep 17 00:00:00 2001 From: meganerddev Date: Wed, 7 Feb 2024 02:23:48 -0500 Subject: [PATCH 58/93] Rub Black formatter --- nautobot_chatops/workers/nautobot.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nautobot_chatops/workers/nautobot.py b/nautobot_chatops/workers/nautobot.py index 37b1f757..11fc74c1 100644 --- a/nautobot_chatops/workers/nautobot.py +++ b/nautobot_chatops/workers/nautobot.py @@ -1217,7 +1217,10 @@ def run_job(dispatcher, *args, job_name: str = "", json_string_kwargs: str = "") if job_result and job_result.status == "FAILURE": dispatcher.send_error(f"The requested job {job_name} was initiated but failed. Result: {job_result.result}") - return (CommandStatusChoices.STATUS_FAILED, f'Job "{job_name}" was initiated but failed. Result: {job_result.result}') # pylint: disable=line-too-long + return ( + CommandStatusChoices.STATUS_FAILED, + f'Job "{job_name}" was initiated but failed. Result: {job_result.result}', + ) # pylint: disable=line-too-long job_url = ( f"{dispatcher.context['request_scheme']}://{dispatcher.context['request_host']}{job_result.get_absolute_url()}" From ac21062c4d1eec8ea20b7dd5f974a8373ad3fe39 Mon Sep 17 00:00:00 2001 From: Sergey Romanyuk Date: Fri, 27 Oct 2023 12:19:33 -0400 Subject: [PATCH 59/93] Add NSO integration - initial commit --- development/creds.example.env | 6 +- development/development.env | 6 + development/mattermost/nautobot_bootstrap.py | 1 + development/nautobot_config.py | 6 + nautobot_chatops/__init__.py | 10 +- nautobot_chatops/integrations/nso/__init__.py | 0 .../integrations/nso/exceptions.py | 17 + nautobot_chatops/integrations/nso/forms.py | 26 + .../integrations/nso/jinja_filters.py | 14 + nautobot_chatops/integrations/nso/models.py | 20 + .../integrations/nso/navigation.py | 41 ++ nautobot_chatops/integrations/nso/nso.py | 210 ++++++ nautobot_chatops/integrations/nso/tables.py | 49 ++ .../integrations/nso/tests/__init__.py | 1 + .../fixtures/compare_config_responses.json | 28 + .../fixtures/connect_device_responses.json | 40 ++ .../tests/fixtures/live_status_responses.json | 142 ++++ .../tests/fixtures/ping_device_responses.json | 44 ++ .../tests/fixtures/sync_from_responses.json | 23 + .../tests/fixtures/sync_status_responses.json | 61 ++ .../nso/tests/fixtures/sync_to_responses.json | 23 + .../integrations/nso/tests/test_basic.py | 16 + .../integrations/nso/tests/test_nso.py | 157 +++++ .../integrations/nso/tests/test_worker.py | 617 ++++++++++++++++++ nautobot_chatops/integrations/nso/urls.py | 25 + nautobot_chatops/integrations/nso/views.py | 54 ++ nautobot_chatops/integrations/nso/worker.py | 286 ++++++++ .../migrations/0008_commandfilter.py | 29 + nautobot_chatops/models.py | 3 + nautobot_chatops/static/nso/nso-logo.png | Bin 0 -> 28056 bytes pyproject.toml | 1 + 31 files changed, 1954 insertions(+), 2 deletions(-) create mode 100644 nautobot_chatops/integrations/nso/__init__.py create mode 100644 nautobot_chatops/integrations/nso/exceptions.py create mode 100644 nautobot_chatops/integrations/nso/forms.py create mode 100644 nautobot_chatops/integrations/nso/jinja_filters.py create mode 100644 nautobot_chatops/integrations/nso/models.py create mode 100644 nautobot_chatops/integrations/nso/navigation.py create mode 100644 nautobot_chatops/integrations/nso/nso.py create mode 100644 nautobot_chatops/integrations/nso/tables.py create mode 100644 nautobot_chatops/integrations/nso/tests/__init__.py create mode 100644 nautobot_chatops/integrations/nso/tests/fixtures/compare_config_responses.json create mode 100644 nautobot_chatops/integrations/nso/tests/fixtures/connect_device_responses.json create mode 100644 nautobot_chatops/integrations/nso/tests/fixtures/live_status_responses.json create mode 100644 nautobot_chatops/integrations/nso/tests/fixtures/ping_device_responses.json create mode 100644 nautobot_chatops/integrations/nso/tests/fixtures/sync_from_responses.json create mode 100644 nautobot_chatops/integrations/nso/tests/fixtures/sync_status_responses.json create mode 100644 nautobot_chatops/integrations/nso/tests/fixtures/sync_to_responses.json create mode 100644 nautobot_chatops/integrations/nso/tests/test_basic.py create mode 100644 nautobot_chatops/integrations/nso/tests/test_nso.py create mode 100644 nautobot_chatops/integrations/nso/tests/test_worker.py create mode 100644 nautobot_chatops/integrations/nso/urls.py create mode 100644 nautobot_chatops/integrations/nso/views.py create mode 100644 nautobot_chatops/integrations/nso/worker.py create mode 100644 nautobot_chatops/migrations/0008_commandfilter.py create mode 100644 nautobot_chatops/static/nso/nso-logo.png diff --git a/development/creds.example.env b/development/creds.example.env index fef92421..e269244a 100644 --- a/development/creds.example.env +++ b/development/creds.example.env @@ -69,7 +69,7 @@ NAUTOBOT_TOWER_PASSWORD="admin" # - Grafana -------------------------- # GRAFANA_API_KEY="changeme" -# - IPFabric --------------------- +# - IPFabric ------------------------- # IPFABRIC_API_TOKEN="changeme" # - Cisco Meraki --------------------- @@ -77,3 +77,7 @@ NAUTOBOT_TOWER_PASSWORD="admin" # - Palo Alto Panorama --------------- # PANORAMA_PASSWORD="changeme" + +# - Cisco NSO ------------------------ +# NSO_USERNAME="changeme" +# NSO_PASSWORD="changeme" \ No newline at end of file diff --git a/development/development.env b/development/development.env index 9d9b4636..82706ab8 100644 --- a/development/development.env +++ b/development/development.env @@ -94,3 +94,9 @@ NAUTOBOT_CHATOPS_ENABLE_MERAKI="False" NAUTOBOT_CHATOPS_ENABLE_PANORAMA="False" PANORAMA_HOST="https://panorama.example.com" PANORAMA_USER="admin" + +# - Cisco NSO ------------------------ +NAUTOBOT_CHATOPS_ENABLE_NSO="False" +# NSO_URL="https://nso.example.com" +# NSO_USERNAME="admin" +# NSO_PASSWORD="admin" diff --git a/development/mattermost/nautobot_bootstrap.py b/development/mattermost/nautobot_bootstrap.py index 032abce6..5a89c2c2 100644 --- a/development/mattermost/nautobot_bootstrap.py +++ b/development/mattermost/nautobot_bootstrap.py @@ -36,6 +36,7 @@ "meraki": "11ix54hycjr4dmxcgw4d77qc4w", # nosec "nautobot": "ncygprhkt3rrxr4rkytcaa7c9c", # nosec "panorama": "fh1kbk45xtgm8r48jzr39ru1ww", # nosec + "nso": "j9bcga71hl4lreaczecen7i5dz", # nosec } for command, token in _COMMAND_TOKENS.items(): diff --git a/development/nautobot_config.py b/development/nautobot_config.py index 52a474f4..1de25621 100644 --- a/development/nautobot_config.py +++ b/development/nautobot_config.py @@ -205,6 +205,12 @@ "panorama_host": os.environ.get("PANORAMA_HOST"), "panorama_password": os.environ.get("PANORAMA_PASSWORD"), "panorama_user": os.environ.get("PANORAMA_USER"), + # - Cisco NSO ------------------------ + "enable_nso": is_truthy(os.getenv("NAUTOBOT_CHATOPS_ENABLE_NSO")), + "nso_url": os.environ.get("NSO_URL"), + "nso_username": os.environ.get("NSO_USERNAME"), + "nso_password": os.environ.get("NSO_PASSWORD"), + "nso_request_timeout": os.environ.get("NSO_REQUEST_TIMEOUT", 60), }, } diff --git a/nautobot_chatops/__init__.py b/nautobot_chatops/__init__.py index b191b59e..f0def3d7 100644 --- a/nautobot_chatops/__init__.py +++ b/nautobot_chatops/__init__.py @@ -105,7 +105,7 @@ class NautobotChatOpsConfig(NautobotAppConfig): "grafana_default_timespan": "", "grafana_org_id": 1, "grafana_default_tz": "", - # - IPFabric --------------------- + # - IPFabric ------------------------- "ipfabric_api_token": "", "ipfabric_host": "", "ipfabric_timeout": "", @@ -116,6 +116,11 @@ class NautobotChatOpsConfig(NautobotAppConfig): "panorama_host": "", "panorama_password": "", "panorama_user": "", + # - Cisco NSO ------------------------ + "nso_url": "", + "nso_username": "", + "nso_password": "", + "nso_request_timeout": "", } constance_config = { "fallback_chatops_user": ConstanceConfigItem(default="chatbot", help_text="Enable Mattermost Chat Platform."), @@ -142,6 +147,9 @@ class NautobotChatOpsConfig(NautobotAppConfig): "enable_panorama": ConstanceConfigItem( default=False, help_text="Enable Panorama Integration.", field_type=bool ), + "enable_nso": ConstanceConfigItem( + default=False, help_text="Enable NSO Integration.", field_type=bool + ), } caching_config = {} diff --git a/nautobot_chatops/integrations/nso/__init__.py b/nautobot_chatops/integrations/nso/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/nautobot_chatops/integrations/nso/exceptions.py b/nautobot_chatops/integrations/nso/exceptions.py new file mode 100644 index 00000000..fdbbfe18 --- /dev/null +++ b/nautobot_chatops/integrations/nso/exceptions.py @@ -0,0 +1,17 @@ +"""Custom Exceptions for the nautobot_plugin_chatops_nso plugin.""" + + +class CommunicationError(Exception): + """Error communicating with NSO.""" + + +class DeviceNotFound(Exception): + """Device not found in NSO.""" + + +class DeviceNotSupported(Exception): + """Device not supported in NSO.""" + + +class DeviceLocked(Exception): + """Device not reachable in NSO.""" diff --git a/nautobot_chatops/integrations/nso/forms.py b/nautobot_chatops/integrations/nso/forms.py new file mode 100644 index 00000000..8951f1ae --- /dev/null +++ b/nautobot_chatops/integrations/nso/forms.py @@ -0,0 +1,26 @@ +"""Forms for Nautobot.""" + +from django.forms import ModelForm, CharField +from nautobot.utilities.forms import BootstrapMixin +from nautobot.dcim.models.devices import Platform, DeviceRole +from nautobot.utilities.forms import DynamicModelChoiceField +from nautobot_plugin_chatops_nso.models import CommandFilter + + +class CommandFilterForm(BootstrapMixin, ModelForm): + """Form for editing command filters.""" + + command = CharField( + max_length=200, help_text=" Supports Regular Expression." + ) + device_role = DynamicModelChoiceField(queryset=DeviceRole.objects.all()) + platform = DynamicModelChoiceField( + queryset=Platform.objects.all(), + ) + + class Meta: + """Metaclass attributes of the command filters form.""" + + model = CommandFilter + + fields = ("command", "device_role", "platform") diff --git a/nautobot_chatops/integrations/nso/jinja_filters.py b/nautobot_chatops/integrations/nso/jinja_filters.py new file mode 100644 index 00000000..cfc6000d --- /dev/null +++ b/nautobot_chatops/integrations/nso/jinja_filters.py @@ -0,0 +1,14 @@ +"""Custom filters for nautobot_plugin_chatops_nso.""" +from django_jinja import library +from nautobot_plugin_chatops_nso.nso import NSOClient + + +@library.filter +def get_nso_sync_status(device_name): + """Pull NSO sync status for specified device.""" + nso = NSOClient() + try: + response = nso.sync_status(device_name) + return response + except Exception: # pylint: disable=W0703 + return "N/A" diff --git a/nautobot_chatops/integrations/nso/models.py b/nautobot_chatops/integrations/nso/models.py new file mode 100644 index 00000000..2859ee1c --- /dev/null +++ b/nautobot_chatops/integrations/nso/models.py @@ -0,0 +1,20 @@ +"""Django models for recording user interactions with Nautobot.""" +from django.db import models +from nautobot.core.models import BaseModel + + +class CommandFilter(BaseModel): + """An allowed command tied to a given object.""" + + command = models.CharField(max_length=200, help_text="Standard regex supported.") + device_role = models.ForeignKey(to="extras.Role", on_delete=models.CASCADE) + platform = models.ForeignKey(to="dcim.Platform", on_delete=models.CASCADE) + + def __str__(self): + """String representation of an CommandFilter.""" + return f'cmd: "{self.command}; on: {self.device_role}:{self.platform}' + + class Meta: + """Meta-attributes of an CommandFilter.""" + + ordering = ["command", "device_role", "platform"] diff --git a/nautobot_chatops/integrations/nso/navigation.py b/nautobot_chatops/integrations/nso/navigation.py new file mode 100644 index 00000000..5cf411ad --- /dev/null +++ b/nautobot_chatops/integrations/nso/navigation.py @@ -0,0 +1,41 @@ +"""Custom navigation options for the nautobot_plugin_chatops_nso plugin.""" +from nautobot.core.apps import NavMenuTab, NavMenuGroup, NavMenuItem, NavMenuButton +from nautobot.utilities.choices import ButtonColorChoices + +menu_items = ( + NavMenuTab( + name="Plugins", + groups=( + NavMenuGroup( + name="NSO ChatOps", + weight=200, + items=( + NavMenuItem( + link="plugins:nautobot_plugin_chatops_nso:commandfilter_list", + name="Command Filters", + permissions=[ + "nautobot_plugin_chatops_nso.view_commandfilter", + ], + buttons=( + NavMenuButton( + link="plugins:nautobot_plugin_chatops_nso:commandfilter_add", + title="Command Filter", + icon_class="mdi mdi-plus-thick", + button_class=ButtonColorChoices.GREEN, + permissions=[ + "nautobot_plugin_chatops_nso.add_commandfilter", + ], + ), + ), + ), + NavMenuItem( + link="plugins:nautobot_plugin_chatops_nso:nso_page", + name="NSO Instance Link", + permissions=[], + buttons=(), + ), + ), + ), + ), + ), +) diff --git a/nautobot_chatops/integrations/nso/nso.py b/nautobot_chatops/integrations/nso/nso.py new file mode 100644 index 00000000..2b2c3850 --- /dev/null +++ b/nautobot_chatops/integrations/nso/nso.py @@ -0,0 +1,210 @@ +"""All interactions with nso.""" + +import logging +import requests +from django.conf import settings +from rest_framework import status + +from nautobot_chatops.integrations.nso.exceptions import CommunicationError, DeviceNotFound, DeviceNotSupported, DeviceLocked + + +logger = logging.getLogger("nautobot.plugin.nso") + +# Import config vars from nautobot_config.py +PLUGIN_SETTINGS = settings.PLUGINS_CONFIG["nautobot_chatops"] + +SLASH_COMMAND = "nso" +REQUEST_TIMEOUT_SEC = PLUGIN_SETTINGS["nso_request_timeout"] + +NSO_URL = PLUGIN_SETTINGS["nso_url"] +NSO_USERNAME = PLUGIN_SETTINGS["nso_username"] +NSO_PASSWORD = PLUGIN_SETTINGS["nso_password"] + + +class NSOClient: + """Representation and methods for interacting with nso.""" + + def __init__(self, url=NSO_URL, username=NSO_USERNAME, password=NSO_PASSWORD): + """Initialization of nso class.""" + self.url = url + self.auth = (username, password) + self.headers = {"Accept": "application/yang-data+json", "Content-Type": "application/yang-data+json"} + + @property + def base_url(self): + """Base URL for RESTCONF.""" + return f"{self.url}/restconf/data" + + def __device_operation(self, device, operation): + """Basic device operations. + + Args: + device (str): Device name + operation (str): Device operation, such as ping, connect, sync-to + + Returns: + The response. + + Raises: + CommunicationError: Raises an exception when response code != 200 or 404. + DeviceNotFound: Raises an exception when response code == 404. + """ + url = f"{self.base_url}/tailf-ncs:devices/device={device}/{operation}" + + response = requests.post(url, headers=self.headers, auth=self.auth, timeout=REQUEST_TIMEOUT_SEC) + + if response.ok: + json_response = response.json() + out = json_response.get("tailf-ncs:output", {}) + if "result" in out: + return out["result"] + if "diff" in out: + return out["diff"] + return out + if response.status_code == status.HTTP_404_NOT_FOUND: + json_response = response.json() + out = json_response.get("ietf-restconf:errors", {}) + if "error" in out: + if "error-message" in out["error"][0]: + if out["error"][0]["error-message"] == "uri keypath not found": + raise DeviceNotFound(f"Device {device} does not exist in NSO") + raise CommunicationError(f"Error communicating to NSO! ({response.status_code})") + + def ping(self, device): + """Ping device operation. + + Args: + device (str): Device name + + Returns: + The response. + """ + return self.__device_operation(device, "ping") + + def connect(self, device): + """Connect device operation. + + Args: + device (str): Device name + + Returns: + The response. + """ + return self.__device_operation(device, "connect") + + def sync_to(self, device): + """Sync to device operation. + + Args: + device (str): Device name + + Returns: + The response. + """ + return self.__device_operation(device, "sync-to") + + def sync_from(self, device): + """Sync from device operation. + + Args: + device (str): Device name + + Returns: + The response. + """ + return self.__device_operation(device, "sync-from") + + def sync_status(self, device): + """Check sync device operation. + + Args: + device (str): Device name + + Returns: + The response. + """ + return self.__device_operation(device, "check-sync") + + def sync_status_all(self): + """Check sync of all devices operation. + + Returns: + The response. + + Raises: + CommunicationError: Raises an exception when response code != 200. + """ + url = f"{self.base_url}/tailf-ncs:devices/check-sync" + + response = requests.post(url, headers=self.headers, auth=self.auth, timeout=REQUEST_TIMEOUT_SEC) + + if response.ok: + json_response = response.json() + out = json_response.get("tailf-ncs:output", {}) + if "sync-result" in out: + return out["sync-result"] + return out + raise CommunicationError(f"Error communicating to NSO! ({response.status_code})") + + def compare_config(self, device): + """Compare config device operation. + + Args: + device (str): Device name + + Returns: + The response. + """ + return self.__device_operation(device, "compare-config") + + def live_status(self, device, command): + """Executes a show command. + + Args: + device (str): Device name + command (str): The show command + + Returns: + The response. + """ + # Get device type + url = f"{self.base_url}/tailf-ncs:devices/device={device}/device-type" + response = requests.get(url, headers=self.headers, auth=self.auth, timeout=REQUEST_TIMEOUT_SEC) + + if not response.ok: + json_response = response.json() + out = json_response.get("ietf-restconf:errors", {}) + if "error" in out: + if "error-message" in out["error"][0]: + if out["error"][0]["error-message"] == "uri keypath not found": + raise DeviceNotFound(f"Device {device} does not exist in NSO") + raise CommunicationError(f"Error communicating to NSO! ({response.status_code})") + + json_response = response.json() + ned_id = json_response["tailf-ncs:device-type"]["cli"]["ned-id"] + if "nx" in ned_id: + ned_id_live = "tailf-ned-cisco-nx-stats" + elif "ios" in ned_id: + ned_id_live = "tailf-ned-cisco-ios-stats" + else: + raise DeviceNotSupported(f"Device type is not supported! ({ned_id})") + + url = f"{self.base_url}/tailf-ncs:devices/device={device}" + url += f"/live-status/{ned_id_live}:exec/show" + + command = command.replace("show ", "") + body = {"input": {"args": command}} + + response = requests.post(url, headers=self.headers, auth=self.auth, json=body, timeout=REQUEST_TIMEOUT_SEC) + + if response.ok: + json_response = response.json() + return json_response[f"{ned_id_live}:output"]["result"] + if response.status_code == status.HTTP_500_INTERNAL_SERVER_ERROR: + json_response = response.json() + out = json_response.get("ietf-restconf:errors", {}) + if "error" in out: + if "error-message" in out["error"][0]: + if "southbound locked" in out["error"][0]["error-message"]: + raise DeviceLocked(f"Device {device} is southbound locked") + raise CommunicationError(f"Error communicating to NSO! ({response.status_code})") diff --git a/nautobot_chatops/integrations/nso/tables.py b/nautobot_chatops/integrations/nso/tables.py new file mode 100644 index 00000000..9f810d3b --- /dev/null +++ b/nautobot_chatops/integrations/nso/tables.py @@ -0,0 +1,49 @@ +"""Django table classes for Nautobot.""" +import django_tables2 as tables +from django_tables2 import TemplateColumn +from nautobot.utilities.tables import BaseTable, ColoredLabelColumn +from nautobot_plugin_chatops_nso.models import CommandFilter + + +def _action_template(view: str) -> str: + return f""" + + + + + + + + + + +""" + + +class CommandFilterTable(BaseTable): + """Table for rendering filter commands.""" + + command = TemplateColumn( + template_code="{{ record.command }}", + attrs={"span": {"class": "text-secondary"}}, + verbose_name="Command Regex", + ) + + device_role = ColoredLabelColumn(linkify=True, verbose_name="Role") + + platform = tables.Column(linkify=True, verbose_name="Platform") + + actions = TemplateColumn( + template_code=_action_template("commandfilter"), + attrs={"td": {"class": "text-right noprint"}}, + verbose_name="", + ) + + class Meta(BaseTable.Meta): # pylint: disable=too-few-public-methods + """Meta for class PanelViewTable.""" + + model = CommandFilter + fields = ("command", "device_role", "platform") diff --git a/nautobot_chatops/integrations/nso/tests/__init__.py b/nautobot_chatops/integrations/nso/tests/__init__.py new file mode 100644 index 00000000..3b57b2e3 --- /dev/null +++ b/nautobot_chatops/integrations/nso/tests/__init__.py @@ -0,0 +1 @@ +"""Unit tests nautobot_plugin_chatops nso integration plugin.""" diff --git a/nautobot_chatops/integrations/nso/tests/fixtures/compare_config_responses.json b/nautobot_chatops/integrations/nso/tests/fixtures/compare_config_responses.json new file mode 100644 index 00000000..ad16fb9d --- /dev/null +++ b/nautobot_chatops/integrations/nso/tests/fixtures/compare_config_responses.json @@ -0,0 +1,28 @@ +[ + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=in_sync_device/compare-config", + "method": "POST", + "status": 200, + "response_json": {} + }, + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=out_of_sync_device/compare-config", + "method": "POST", + "status": 200, + "response_json": { + "tailf-ncs:output": { + "diff": "\n devices {\n device out_of_sync_device {\n config {\n interface {\n+ Loopback 100 {\n+ description \"Test Change\";\n+ }\n }\n }\n }\n }\n" + } + } + }, + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=offline_device/compare-config", + "method": "POST", + "status": 200, + "response_json": { + "tailf-ncs:output": { + "info": "Device c3 is southbound locked" + } + } + } +] \ No newline at end of file diff --git a/nautobot_chatops/integrations/nso/tests/fixtures/connect_device_responses.json b/nautobot_chatops/integrations/nso/tests/fixtures/connect_device_responses.json new file mode 100644 index 00000000..9e39422e --- /dev/null +++ b/nautobot_chatops/integrations/nso/tests/fixtures/connect_device_responses.json @@ -0,0 +1,40 @@ +[ + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=good_device/connect", + "method": "POST", + "status": 200, + "response_json": { + "tailf-ncs:output": { + "result": true, + "info": "(admin) Connected to good_device - 127.0.0.1:10022" + } + } + }, + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=offline_device/connect", + "method": "POST", + "status": 200, + "response_json": { + "tailf-ncs:output": { + "result": false, + "info": "Device c3 is southbound locked" + } + } + }, + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=nonexistent_device/connect", + "method": "POST", + "status": 404, + "response_json": { + "ietf-restconf:errors": { + "error": [ + { + "error-type": "application", + "error-tag": "invalid-value", + "error-message": "uri keypath not found" + } + ] + } + } + } +] \ No newline at end of file diff --git a/nautobot_chatops/integrations/nso/tests/fixtures/live_status_responses.json b/nautobot_chatops/integrations/nso/tests/fixtures/live_status_responses.json new file mode 100644 index 00000000..96d0469b --- /dev/null +++ b/nautobot_chatops/integrations/nso/tests/fixtures/live_status_responses.json @@ -0,0 +1,142 @@ +[ + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=good_device/device-type", + "method": "GET", + "status": 200, + "response_json": { + "tailf-ncs:device-type": { + "cli": { + "ned-id": "cisco-ios-cli-6.77:cisco-ios-cli-6.77" + } + } + } + }, + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=good_device/live-status/tailf-ned-cisco-ios-stats:exec/show", + "method": "POST", + "status": 200, + "body": { + "input": { + "args": "version" + } + }, + "response_json": { + "tailf-ned-cisco-ios-stats:output": { + "result": "\r\nCisco IOS Software, NETSIM\r\ngood_device# " + } + } + }, + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=offline_device/device-type", + "method": "GET", + "status": 200, + "response_json": { + "tailf-ncs:device-type": { + "cli": { + "ned-id": "cisco-ios-cli-6.77:cisco-ios-cli-6.77" + } + } + } + }, + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=offline_device/live-status/tailf-ned-cisco-ios-stats:exec/show", + "method": "POST", + "status": 500, + "body": { + "input": { + "args": "version" + } + }, + "response_json": { + "ietf-restconf:errors": { + "error": [ + { + "error-type": "application", + "error-tag": "operation-failed", + "error-path": "/tailf-ncs:devices/device[name='offline_device']/live-status/tailf-ned-cisco-ios-stats:exec/show", + "error-message": "Device offline_device is southbound locked" + } + ] + } + } + }, + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=nonexistent_device/device-type", + "method": "GET", + "status": 404, + "response_json": { + "ietf-restconf:errors": { + "error": [ + { + "error-type": "application", + "error-tag": "invalid-value", + "error-message": "uri keypath not found" + } + ] + } + } + }, + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=good_device_nx/device-type", + "method": "GET", + "status": 200, + "response_json": { + "tailf-ncs:device-type": { + "cli": { + "ned-id": "cisco-nx-cli-3.0:cisco-nx-cli-3.0" + } + } + } + }, + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=good_device_nx/live-status/tailf-ned-cisco-nx-stats:exec/show", + "method": "POST", + "status": 200, + "body": { + "input": { + "args": "version" + } + }, + "response_json": { + "tailf-ned-cisco-nx-stats:output": { + "result": "\r\nCisco NX-OS Software, NETSIM\r\ngood_device_nx# " + } + } + }, + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=unsupported_device_asa/device-type", + "method": "GET", + "status": 200, + "response_json": { + "tailf-ncs:device-type": { + "cli": { + "ned-id": "cisco-asa-cli-6.6:cisco-asa-cli-6.6" + } + } + } + }, + { + "url": "https://nso.error/restconf/data/tailf-ncs:devices/device=error_device_type/device-type", + "method": "GET", + "status": 404, + "response_json": {} + }, + { + "url": "https://nso.error/restconf/data/tailf-ncs:devices/device=error_live_status/device-type", + "method": "GET", + "status": 200, + "response_json": { + "tailf-ncs:device-type": { + "cli": { + "ned-id": "cisco-ios-cli-6.77:cisco-ios-cli-6.77" + } + } + } + }, + { + "url": "https://nso.error/restconf/data/tailf-ncs:devices/device=error_live_status/live-status/tailf-ned-cisco-ios-stats:exec/show", + "method": "POST", + "status": 404, + "response_json": {} + } +] \ No newline at end of file diff --git a/nautobot_chatops/integrations/nso/tests/fixtures/ping_device_responses.json b/nautobot_chatops/integrations/nso/tests/fixtures/ping_device_responses.json new file mode 100644 index 00000000..c8f98b1e --- /dev/null +++ b/nautobot_chatops/integrations/nso/tests/fixtures/ping_device_responses.json @@ -0,0 +1,44 @@ +[ + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=good_device/ping", + "method": "POST", + "status": 200, + "response_json": { + "tailf-ncs:output": { + "result": "PING 10.0.0.2 (10.0.0.2) 56(84) bytes of data.\n64 bytes from 10.0.0.2: icmp_seq=1 ttl=64 time=0.014 ms\n\n--- 10.0.0.2 ping statistics ---\n1 packets transmitted, 1 received, 0% packet loss, time 0ms\nrtt min/avg/max/mdev = 0.014/0.014/0.014/0.000 ms\n" + } + } + }, + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=offline_device/ping", + "method": "POST", + "status": 200, + "response_json": { + "tailf-ncs:output": { + "result": "PING 10.0.0.2 (10.0.0.2) 56(84) bytes of data.\n\n--- 10.0.0.2 ping statistics ---\n1 packets transmitted, 0 received, 100% packet loss, time 0ms\n\n" + } + } + }, + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=nonexistent_device/ping", + "method": "POST", + "status": 404, + "response_json": { + "ietf-restconf:errors": { + "error": [ + { + "error-type": "application", + "error-tag": "invalid-value", + "error-message": "uri keypath not found" + } + ] + } + } + }, + { + "url": "https://nso.error/restconf/data/tailf-ncs:devices/device=error_device/ping", + "method": "POST", + "status": 404, + "response_json": {} + } +] \ No newline at end of file diff --git a/nautobot_chatops/integrations/nso/tests/fixtures/sync_from_responses.json b/nautobot_chatops/integrations/nso/tests/fixtures/sync_from_responses.json new file mode 100644 index 00000000..2f2fa7db --- /dev/null +++ b/nautobot_chatops/integrations/nso/tests/fixtures/sync_from_responses.json @@ -0,0 +1,23 @@ +[ + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=good_device/sync-from", + "method": "POST", + "status": 200, + "response_json": { + "tailf-ncs:output": { + "result": true + } + } + }, + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=offline_device/sync-from", + "method": "POST", + "status": 200, + "response_json": { + "tailf-ncs:output": { + "result": false, + "info": "Device c3 is southbound locked" + } + } + } +] \ No newline at end of file diff --git a/nautobot_chatops/integrations/nso/tests/fixtures/sync_status_responses.json b/nautobot_chatops/integrations/nso/tests/fixtures/sync_status_responses.json new file mode 100644 index 00000000..57edacc6 --- /dev/null +++ b/nautobot_chatops/integrations/nso/tests/fixtures/sync_status_responses.json @@ -0,0 +1,61 @@ +[ + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=in_sync_device/check-sync", + "method": "POST", + "status": 200, + "response_json": { + "tailf-ncs:output": { + "result": "in-sync" + } + } + }, + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=out_of_sync_device/check-sync", + "method": "POST", + "status": 200, + "response_json": { + "tailf-ncs:output": { + "result": "out-of-sync" + } + } + }, + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=offline_device/check-sync", + "method": "POST", + "status": 200, + "response_json": { + "tailf-ncs:output": { + "result": "locked" + } + } + }, + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/check-sync", + "method": "POST", + "status": 200, + "response_json": { + "tailf-ncs:output": { + "sync-result": [ + { + "device": "in_sync_device", + "result": "in-sync" + }, + { + "device": "out_of_sync_device", + "result": "out-of-sync" + }, + { + "device": "offline_device", + "result": "locked" + } + ] + } + } + }, + { + "url": "https://nso.error/restconf/data/tailf-ncs:devices/check-sync", + "method": "POST", + "status": 404, + "response_json": {} + } +] \ No newline at end of file diff --git a/nautobot_chatops/integrations/nso/tests/fixtures/sync_to_responses.json b/nautobot_chatops/integrations/nso/tests/fixtures/sync_to_responses.json new file mode 100644 index 00000000..9416a586 --- /dev/null +++ b/nautobot_chatops/integrations/nso/tests/fixtures/sync_to_responses.json @@ -0,0 +1,23 @@ +[ + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=good_device/sync-to", + "method": "POST", + "status": 200, + "response_json": { + "tailf-ncs:output": { + "result": true + } + } + }, + { + "url": "https://nso.test/restconf/data/tailf-ncs:devices/device=offline_device/sync-to", + "method": "POST", + "status": 200, + "response_json": { + "tailf-ncs:output": { + "result": false, + "info": "Device c3 is southbound locked" + } + } + } +] \ No newline at end of file diff --git a/nautobot_chatops/integrations/nso/tests/test_basic.py b/nautobot_chatops/integrations/nso/tests/test_basic.py new file mode 100644 index 00000000..95df9160 --- /dev/null +++ b/nautobot_chatops/integrations/nso/tests/test_basic.py @@ -0,0 +1,16 @@ +"""Basic tests that do not require Django.""" +import unittest +import os +import toml + +from nautobot_plugin_chatops_nso import __version__ as project_version + + +class TestVersion(unittest.TestCase): + """Test Version is the same.""" + + def test_version(self): + """Verify that pyproject.toml version is same as version specified in the package.""" + parent_path = os.path.dirname(os.path.dirname(os.path.dirname(os.path.realpath(__file__)))) + poetry_version = toml.load(os.path.join(parent_path, "pyproject.toml"))["tool"]["poetry"]["version"] + self.assertEqual(project_version, poetry_version) diff --git a/nautobot_chatops/integrations/nso/tests/test_nso.py b/nautobot_chatops/integrations/nso/tests/test_nso.py new file mode 100644 index 00000000..2523d1c2 --- /dev/null +++ b/nautobot_chatops/integrations/nso/tests/test_nso.py @@ -0,0 +1,157 @@ +"""Test rundeck client.""" +# Disable protected access, since..ya know. We need to test them. # pylint: disable=protected-access + +from os import path +import json +import responses +from django.test import SimpleTestCase + +from nautobot_plugin_chatops_nso.nso import NSOClient as nso +from nautobot_plugin_chatops_nso.exceptions import CommunicationError, DeviceNotFound, DeviceNotSupported, DeviceLocked + + +HERE = path.abspath(path.dirname(__file__)) + + +def load_api_calls(responses, fixture): + """Load the API calls into memory for mocking.""" + with open(f"{HERE}/fixtures/{fixture}.json", "r", encoding="utf-8") as file_: + api_calls = json.load(file_) + + for api_call in api_calls: + if api_call["method"] == "GET": + responses.add( + responses.GET, + api_call["url"], + json=api_call["response_json"], + status=api_call["status"], + headers={"Content-Type": "application/yang-data+xml"}, + ) + continue + + if api_call["method"] == "POST": + responses.add( + responses.POST, + api_call["url"], + json=api_call["response_json"], + match=[responses.matchers.json_params_matcher(api_call["body"])] if "body" in api_call else [], + status=api_call["status"], + headers={"Content-Type": "application/yang-data+xml"}, + ) + continue + + +class TestNSO(SimpleTestCase): + """Test Base NSO Client and Calls.""" + + def setUp(self): + """Setup.""" + self.url = "https://nso.test" + self.username = "username" + self.password = "password" # nosec + self.nso = nso(self.url, self.username, self.password) + + self.error_url = "https://nso.error" + self.error_nso = nso(self.error_url, self.username, self.password) + + @responses.activate + def test_ping(self): + """Test Ping Device API Call.""" + + load_api_calls(responses, "ping_device_responses") + + self.assertIn("1 packets transmitted, 1 received, 0% packet loss", self.nso.ping("good_device")) + self.assertIn("100% packet loss", self.nso.ping("offline_device")) + # self.assertIn("Device does not exist in NSO", self.nso.ping("nonexistent_device")) + with self.assertRaises(DeviceNotFound): + self.nso.ping("nonexistent_device") + with self.assertRaises(CommunicationError): + self.error_nso.ping("error_device") + + @responses.activate + def test_connect(self): + """Test Connect to Device API Call.""" + + load_api_calls(responses, "connect_device_responses") + + self.assertEqual(self.nso.connect("good_device"), True) + self.assertEqual(self.nso.connect("offline_device"), False) + # self.assertEqual(self.nso.connect("nonexistent_device"), "Device does not exist in NSO") + with self.assertRaises(DeviceNotFound): + self.nso.connect("nonexistent_device") + + @responses.activate + def test_sync_to(self): + """Test Sync to Device API Call.""" + + load_api_calls(responses, "sync_to_responses") + + self.assertEqual(self.nso.sync_to("good_device"), True) + self.assertEqual(self.nso.sync_to("offline_device"), False) + + @responses.activate + def test_sync_from(self): + """Test Sync from Device API Call.""" + + load_api_calls(responses, "sync_from_responses") + + self.assertEqual(self.nso.sync_from("good_device"), True) + self.assertEqual(self.nso.sync_from("offline_device"), False) + + @responses.activate + def test_sync_status(self): + """Test Check Sync Status of Device API Call.""" + + load_api_calls(responses, "sync_status_responses") + + self.assertEqual(self.nso.sync_status("in_sync_device"), "in-sync") + self.assertEqual(self.nso.sync_status("out_of_sync_device"), "out-of-sync") + self.assertEqual(self.nso.sync_status("offline_device"), "locked") + + @responses.activate + def test_sync_status_all(self): + """Test Check Sync Status of All Devices API Call.""" + + load_api_calls(responses, "sync_status_responses") + response_sync_status_all = [ + {"device": "in_sync_device", "result": "in-sync"}, + {"device": "out_of_sync_device", "result": "out-of-sync"}, + {"device": "offline_device", "result": "locked"}, + ] + self.assertEqual(self.nso.sync_status_all(), response_sync_status_all) + with self.assertRaises(CommunicationError): + self.error_nso.sync_status_all() + + @responses.activate + def test_compare_config(self): + """Test Compare Config of Device API Call.""" + + load_api_calls(responses, "compare_config_responses") + + self.assertEqual(self.nso.compare_config("in_sync_device"), {}) + self.assertIn("Test Change", self.nso.compare_config("out_of_sync_device")) + self.assertEqual(self.nso.compare_config("offline_device"), {"info": "Device c3 is southbound locked"}) + + @responses.activate + def test_live_status(self): + """Test Compare Config of Device API Call.""" + + load_api_calls(responses, "live_status_responses") + + self.assertEqual( + self.nso.live_status("good_device", "show version"), "\r\nCisco IOS Software, NETSIM\r\ngood_device# " + ) + self.assertEqual( + self.nso.live_status("good_device_nx", "show version"), + "\r\nCisco NX-OS Software, NETSIM\r\ngood_device_nx# ", + ) + with self.assertRaises(DeviceLocked): + self.nso.live_status("offline_device", "show version") + with self.assertRaises(DeviceNotSupported): + self.nso.live_status("unsupported_device_asa", "show version") + with self.assertRaises(DeviceNotFound): + self.nso.live_status("nonexistent_device", "show version") + with self.assertRaises(CommunicationError): + self.error_nso.live_status("error_device_type", "show version") + with self.assertRaises(CommunicationError): + self.error_nso.live_status("error_live_status", "show version") diff --git a/nautobot_chatops/integrations/nso/tests/test_worker.py b/nautobot_chatops/integrations/nso/tests/test_worker.py new file mode 100644 index 00000000..777392ac --- /dev/null +++ b/nautobot_chatops/integrations/nso/tests/test_worker.py @@ -0,0 +1,617 @@ +# """Tests for Nautobot Rundeck worker.""" +# # Testing protected members # pylint: disable=protected-access +# # Testing Class is quite full of tests: # pylint: disable=too-many-public-methods +# import datetime +# import os +# from unittest import TestCase +# from unittest.mock import MagicMock, call, patch +# +# import responses +# from django.conf import settings +# from nautobot_chatops.dispatchers.slack import SlackDispatcher, WebClient +# +# from nautobot_chatops_extension_rundeck import worker +# from nautobot_chatops_extension_rundeck.rundeck import Rundeck +# from nautobot_chatops_extension_rundeck.tests.fixtures import real_path +# from nautobot_chatops_extension_rundeck.tests.utilities import json_fixture +# +# FIXTURES = os.environ.get("FIXTURE_DIR", real_path) +# +# +# class TestSlackDispatcher(TestCase): +# """Test the SlackDispatcher class.""" +# +# dispatcher_class = SlackDispatcher +# platform_name = "Slack" +# enable_opt_name = "enable_slack" +# +# def setUp(self): +# """Setup Class.""" +# settings.PLUGINS_CONFIG["nautobot_chatops"][self.enable_opt_name] = True +# self.dispatcher = self.dispatcher_class( +# context={ +# "user_name": "Hugo", +# "user_id": "UserID69", +# "channel_id": "T02HVAUAYD9", +# "request_scheme": "SomeScheme", +# "request_host": "SomeHost", +# } +# ) +# self.uri = "https://rundeck-server.com" +# self.token = "junkToken" +# # self.api_version = "40" +# self.rundeck = Rundeck(self.uri, self.token) +# self.job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" +# +# def test_rundeck_logo(self): +# """Make sure image_element() (rundeck_logo) is implemented.""" +# image = worker.rundeck_logo(self.dispatcher) +# +# self.assertDictEqual( +# image, +# { +# "type": "image", +# "image_url": "SomeScheme://SomeHost/static/nautobot_chatops_extension_rundeck/images/Rundeck_Logo.png", +# "alt_text": "Rundeck Logo", +# }, +# ) +# +# def test_default_values(self): +# """Test Rundeck Client Default Values.""" +# self.assertTrue(self.rundeck.session.verify) +# self.assertEqual(self.rundeck.version, "36") +# +# @patch.object(WebClient, "chat_postEphemeral") +# def test_rundeck_subcommand(self, mock_client): +# """Test rundeck sub-command.""" +# mock_client.return_value = {} +# command = worker.rundeck( +# "help", dispatcher_class=TestSlackDispatcher.dispatcher_class, context=self.dispatcher.context +# ) +# self.assertFalse(command) +# +# +# class TestRundeckWorker(TestCase): +# """Test Rundeck Worker Calls.""" +# +# def setUp(self): +# """Setup.""" +# # Load JSON Fixture +# self.projects_json = json_fixture(f"{FIXTURES}/get_projects.json") +# self.jobs_json = json_fixture(f"{FIXTURES}/get_project_jobs.json") +# self.project_exec_json = json_fixture(f"{FIXTURES}/get_project_executions.json") +# self.trigger_job_json = json_fixture(f"{FIXTURES}/trigger_job.json") +# self.jobs_exec_json = json_fixture(f"{FIXTURES}/get_job_executions.json") +# +# # Rundeck Client +# self.uri = "https://rundeck-server.com" +# self.token = "junkToken" +# self.api_version = "40" +# self.rundeck = Rundeck(self.uri, self.token, self.api_version) +# +# # Dispatcher Mock +# self.dispatcher = MagicMock() +# self.dispatcher.prompt_from_menu = MagicMock() +# self.dispatcher.send_error = MagicMock() +# self.dispatcher.send_large_table = MagicMock() +# self.dispatcher.send_markdown = MagicMock() +# self.dispatcher.send_snippet = MagicMock() +# self.dispatcher.send_markdown = MagicMock() +# self.dispatcher.user_mention = MagicMock() +# self.dispatcher.user_mention.return_value = "Ripley" +# self.dispatcher.hyperlink = MagicMock() +# self.dispatcher.hyperlink.return_value = ( +# "Job Results", +# "http://ec2-52-53-205-88.us-west-1.compute.amazonaws.com/project/Prometheus/execution/show/3", +# ) +# +# @responses.activate +# def test_get_project_success(self): +# """Test private `_get_project` Success.""" +# +# responses.add( +# responses.GET, +# f"{self.uri}/api/{self.api_version}/projects", +# json=self.projects_json, +# status=200, +# ) +# +# private_get_project = worker._get_project(self.dispatcher, self.rundeck, "test-command") +# self.dispatcher.prompt_from_menu.assert_called_once_with( +# "rundeck test-command", "Select project name", [("Prometheus", "Prometheus")] +# ) +# self.assertFalse(private_get_project) +# +# @responses.activate +# def test_get_project_bad_response(self): +# """Test `_get_project` bad API Response.""" +# +# responses.add( +# responses.GET, +# f"{self.uri}/api/{self.api_version}/projects", +# json={}, +# status=404, +# ) +# +# private_get_project = worker._get_project(self.dispatcher, self.rundeck, "test-command") +# +# self.dispatcher.send_error.assert_called_once_with("Rundeck API response is not 200. 404") +# self.assertEqual(private_get_project, ("failed", "`get_projects` failed. Rundeck API Response Code: 404")) +# +# @responses.activate +# def test_get_job_success(self): +# """Test `_get_job` Success.""" +# +# project = "Prometheus" +# responses.add( +# responses.GET, +# f"{self.uri}/api/{self.api_version}/project/{project}/jobs", +# json=json_fixture(f"{FIXTURES}/get_project_jobs.json"), +# status=200, +# ) +# +# private_get_job = worker._get_job( +# dispatcher=self.dispatcher, rundeck_client=self.rundeck, project=project, command="test-command" +# ) +# self.dispatcher.prompt_from_menu.assert_called_once_with( +# "rundeck test-command", "Select job", [("Crash The Ship", "cc2d5f73-0479-4601-9986-f759ea87f18b")] +# ) +# self.assertFalse(private_get_job) +# +# @responses.activate +# def test_get_job_bad_response_bad_response(self): +# """Test `_get_job` error.""" +# +# project = "Prometheus" +# responses.add( +# responses.GET, +# f"{self.uri}/api/{self.api_version}/project/{project}/jobs", +# json=json_fixture(f"{FIXTURES}/get_project_jobs.json"), +# status=400, +# ) +# +# private_get_job = worker._get_job( +# dispatcher=self.dispatcher, rundeck_client=self.rundeck, project=project, command="test-command" +# ) +# self.dispatcher.send_error.assert_called_once_with("Rundeck API response is not 200. 400") +# self.assertEqual(private_get_job, ("failed", "`get_job` failed. Rundeck API Response Code: 400")) +# +# # The strategy for testing changes below this point. We instantiate a client +# # Each time a worker call is made. So, we rely on mocking the Rundeck Client +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_get_projects_success(self, rundeck): +# """Test `get_project` Success.""" +# +# rundeck.return_value.get_projects = MagicMock() +# rundeck.return_value.get_projects.return_value.json.return_value = self.projects_json +# rundeck.return_value.get_projects.return_value.ok = True +# rundeck.return_value.get_projects.return_value.status_code = 200 +# +# get_projects = worker.get_projects(self.dispatcher) +# self.dispatcher.send_large_table.assert_called_once_with(["Name", "Description"], [("Prometheus", "")]) +# # Updating to see if this feels more natural +# self.dispatcher.send_markdown.assert_called_once_with( +# "Hello, Ripley! Here is the list of projects you requested." +# ) +# self.assertEqual(get_projects, "succeeded") +# +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_get_projects_bad_response(self, rundeck): +# """Test `get_project` bad API Response.""" +# +# rundeck.return_value.get_projects = MagicMock() +# rundeck.return_value.get_projects.return_value.json.return_value = {"BAD_RESPONSE": "yep"} +# rundeck.return_value.get_projects.return_value.ok = False +# rundeck.return_value.get_projects.return_value.status_code = 400 +# +# get_projects = worker.get_projects(self.dispatcher) +# +# self.dispatcher.send_error.assert_called_once_with("Rundeck API response is not 200. 400") +# self.assertEqual(get_projects, ("failed", "`get_projects` failed. Rundeck API Response Code: 400")) +# +# # Get Jobs +# @patch("nautobot_chatops_extension_rundeck.worker._get_project") +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_get_project_jobs_no_project(self, rundeck, get_project_mock): # pylint: disable=unused-argument +# """Test `get_jobs` no project passed in, prompt for project.""" +# +# get_project_mock.return_value = "Prometheus" +# +# get_jobs = worker.get_jobs(self.dispatcher) +# self.assertEqual(get_jobs, "Prometheus") +# +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_get_project_jobs_success(self, rundeck): +# """Test `get_jobs` Success""" +# +# rundeck.return_value.get_jobs = MagicMock() +# rundeck.return_value.get_jobs.return_value.json.return_value = self.jobs_json +# rundeck.return_value.get_jobs.return_value.ok = True +# rundeck.return_value.get_jobs.return_value.status_code = 200 +# +# get_jobs = worker.get_jobs(self.dispatcher, "Prometheus") +# self.dispatcher.send_markdown.assert_called_once_with("Ripley, Here is the list of jobs you requested.") +# self.dispatcher.send_large_table.assert_called_once_with( +# ["Name", "Enabled", "Description"], [("Crash The Ship", True, "Prometheus is down")] +# ) +# self.assertEqual(get_jobs, "succeeded") +# +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_get_project_jobs_error(self, rundeck): +# """Test `get_jobs` Error, bad API Response""" +# +# rundeck.return_value.get_jobs = MagicMock() +# rundeck.return_value.get_jobs.return_value.json.return_value = {} +# rundeck.return_value.get_jobs.return_value.ok = False +# rundeck.return_value.get_jobs.return_value.status_code = 400 +# +# get_jobs = worker.get_jobs(self.dispatcher, "Prometheus") +# self.dispatcher.send_error.assert_called_once_with("Rundeck API response is not 200. 400") +# self.assertEqual(get_jobs, ("failed", "`get_jobs` failed. Rundeck API Response Code: 400")) +# +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_get_project_exectuion_success(self, rundeck): +# """Test `get_project_execution` Success.""" +# +# rundeck.return_value.get_project_executions = MagicMock() +# rundeck.return_value.get_project_executions.return_value.json.return_value = self.project_exec_json +# rundeck.return_value.get_project_executions.return_value.ok = True +# rundeck.return_value.get_project_executions.return_value.status_code = 200 +# +# get_proj_exec = worker.get_project_executions(self.dispatcher, "Prometheus") +# self.dispatcher.send_markdown.assert_called_once_with( +# "Ripley, Here is the list of project executions you requested." +# ) +# self.dispatcher.send_large_table.assert_called_once_with( +# ["Permalink", "Status", "User", "Date Started"], +# [ +# ( +# "http://ec2-52-53-205-88.us-west-1.compute.amazonaws.com/project/Prometheus/execution/show/2", +# "succeeded", +# "admin", +# datetime.date(2021, 10, 16), +# ), +# ( +# "http://ec2-52-53-205-88.us-west-1.compute.amazonaws.com/project/Prometheus/execution/show/1", +# "succeeded", +# "admin", +# datetime.date(2021, 10, 14), +# ), +# ], +# ) +# self.assertEqual(get_proj_exec, "succeeded") +# +# @patch("nautobot_chatops_extension_rundeck.worker._get_project") +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_get_project_executions_no_project(self, rundeck, get_project_mock): # pylint: disable=unused-argument +# """Test `get_project_executions` no project passed in, prompt for project.""" +# +# get_project_mock.return_value = "Prometheus" +# +# get_project_executions = worker.get_project_executions(self.dispatcher) +# self.assertEqual(get_project_executions, "Prometheus") +# +# # Execute Job +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_job_execution_success(self, rundeck): +# """Test `execute_job` Success.""" +# job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" +# +# rundeck.return_value.trigger_job = MagicMock() +# rundeck.return_value.trigger_job.return_value.json.return_value = self.trigger_job_json +# rundeck.return_value.trigger_job.return_value.ok = True +# rundeck.return_value.trigger_job.return_value.status_code = 200 +# +# execute_job = worker.execute_job( +# self.dispatcher, +# "Prometheus", +# job_id, +# False, +# None, +# ) +# # Send Markdown mock is called twice. Assert the list of arguments used +# call_list = [ +# call("Stand by Ripley, I am executing the job you requested."), +# call( +# "Crash The Ship has been started. View job results: ('Job Results', 'http://ec2-52-53-205-88.us-west-1.compute.amazonaws.com/project/Prometheus/execution/show/3')" +# ), +# call( +# "To rerun this command, use the following: /rundeck execute-job Prometheus cc2d5f73-0479-4601-9986-f759ea87f18b False None" +# ), +# ] +# self.assertEqual(self.dispatcher.send_markdown.call_args_list, call_list) +# self.assertEqual(self.dispatcher.send_markdown.call_count, 3) +# self.assertEqual(execute_job, "succeeded") +# +# # pylint: disable=unused-argument +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_job_execution_prompt_for_need_options(self, rundeck): +# """Test `execute_job` with `prompt_for_need_options`.""" +# job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" +# +# execute_job = worker.execute_job( +# self.dispatcher, +# "Prometheus", +# job_id, +# None, +# ) +# self.assertEqual( +# self.dispatcher.prompt_from_menu.call_args, +# call( +# action_id="rundeck execute-job Prometheus cc2d5f73-0479-4601-9986-f759ea87f18b", +# help_text="Does the Job require options?", +# choices=[("Yes", "yes"), ("No", "no")], +# default=("No", "no"), +# ), +# ) +# self.assertFalse(execute_job) +# +# # pylint: disable=unused-argument +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_job_execution_if_options(self, rundeck): +# """Test `execute_job` with prompt for options.""" +# job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" +# +# execute_job = worker.execute_job( +# self.dispatcher, +# "Prometheus", +# job_id, +# True, +# None, +# ) +# self.assertEqual( +# self.dispatcher.prompt_for_text.call_args, +# call( +# action_id="rundeck execute-job Prometheus cc2d5f73-0479-4601-9986-f759ea87f18b True", +# help_text="Example: option1=some_value, option2='some spaced value'", +# label="Please enter the job options.", +# title="Job Options", +# ), +# ) +# self.assertFalse(execute_job) +# +# # pylint: disable=unused-argument +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_job_execution_bad_optinos_reprompt(self, rundeck): +# """Test `execute_job` with prompt for options.""" +# job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" +# options = "dna perfect_match david 'created because we could'" +# +# execute_job = worker.execute_job( +# self.dispatcher, +# "Prometheus", +# job_id, +# True, +# options, +# ) +# self.assertEqual( +# self.dispatcher.prompt_for_text.call_args, +# call( +# action_id="rundeck execute-job Prometheus cc2d5f73-0479-4601-9986-f759ea87f18b True", +# help_text="Example: option1=some_value, option2='some spaced value'", +# label="Please enter the job options.", +# title="Job Options", +# ), +# ) +# self.assertFalse(execute_job) +# +# @patch("nautobot_chatops_extension_rundeck.worker._get_job") +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_job_execution_success_no_job(self, rundeck, get_job): # pylint: disable=unused-argument +# """Test `execute_job` without specifying job.""" +# +# get_job.return_value = "cc2d5f73-0479-4601-9986-f759ea87f18b" +# +# execute_job = worker.execute_job(self.dispatcher, "Prometheus") +# self.assertEqual(execute_job, "cc2d5f73-0479-4601-9986-f759ea87f18b") +# +# @patch("nautobot_chatops_extension_rundeck.worker._get_project") +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_job_execution_success_no_project(self, rundeck, get_project): # pylint: disable=unused-argument +# """Test `execute_job` without specifying job.""" +# +# get_project.return_value = "Prometheus" +# +# execute_job = worker.execute_job(self.dispatcher) +# self.assertEqual(execute_job, "Prometheus") +# +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_job_execution_error(self, rundeck): +# """Test `execute_job` Error.""" +# job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" +# +# rundeck.return_value.trigger_job = MagicMock() +# rundeck.return_value.trigger_job.return_value.json.return_value = {} +# rundeck.return_value.trigger_job.return_value.ok = False +# rundeck.return_value.trigger_job.return_value.status_code = 400 +# +# execute_job = worker.execute_job(self.dispatcher, "Prometheus", job_id, True, "option1=cool option") +# self.dispatcher.send_error.assert_called_once_with("Rundeck API response is not 200. 400") +# self.assertEqual(execute_job, ("failed", "`execute_job` failed. Rundeck API Response Code: 400")) +# +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_job_execution_success_argstring_options(self, rundeck): +# """Test `execute_job` Success with argstring.""" +# job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" +# +# rundeck.return_value.trigger_job = MagicMock() +# rundeck.return_value.trigger_job.return_value.json.return_value = self.trigger_job_json +# rundeck.return_value.trigger_job.return_value.ok = True +# rundeck.return_value.trigger_job.return_value.status_code = 200 +# argstring = "option_one=some_value, option_two=some second value" +# +# execute_job = worker.execute_job(self.dispatcher, "Prometheus", job_id, True, argstring) +# # Send Markdown mock is called twice. Assert the list of arguments used +# call_list = [ +# call( +# "Stand by Ripley, I am executing the job you requested with the following 2 options: {'option_one': 'some_value', 'option_two': 'some second value'}" +# ), +# call( +# "Crash The Ship has been started. View job results: ('Job Results', 'http://ec2-52-53-205-88.us-west-1.compute.amazonaws.com/project/Prometheus/execution/show/3')" +# ), +# call( +# "To rerun this command, use the following: /rundeck execute-job Prometheus cc2d5f73-0479-4601-9986-f759ea87f18b True 'option_one=some_value, option_two=some second value'" +# ), +# ] +# +# self.assertEqual(self.dispatcher.send_markdown.call_args_list, call_list) +# self.assertEqual(self.dispatcher.send_markdown.call_count, 3) +# self.assertEqual(execute_job, "succeeded") +# +# # Get Job Definition +# @patch("nautobot_chatops_extension_rundeck.worker._get_job") +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_job_definition_success_no_job(self, rundeck, get_job): # pylint: disable=unused-argument +# """Test `get_job_definition` without specifying job.""" +# +# get_job.return_value = "cc2d5f73-0479-4601-9986-f759ea87f18b" +# +# get_job_definition = worker.get_job_definition(self.dispatcher, "Prometheus") +# self.assertEqual(get_job_definition, "cc2d5f73-0479-4601-9986-f759ea87f18b") +# +# @patch("nautobot_chatops_extension_rundeck.worker._get_project") +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_get_job_definition_success_no_project(self, rundeck, get_project): # pylint: disable=unused-argument +# """Test `get_job_definition` without specifying job.""" +# +# get_project.return_value = "Prometheus" +# +# get_job_definition = worker.get_job_definition(self.dispatcher) +# self.assertEqual(get_job_definition, "Prometheus") +# +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_get_job_definition_error(self, rundeck): +# """Test `get_job_definition` Error.""" +# job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" +# +# rundeck.return_value.get_job_definition = MagicMock() +# rundeck.return_value.get_job_definition.return_value.ok = False +# rundeck.return_value.get_job_definition.return_value.status_code = 400 +# +# get_job_definition = worker.get_job_definition(self.dispatcher, "Prometheus", job_id) +# self.dispatcher.send_error.assert_called_once_with("Rundeck API response is not 200. 400") +# self.assertEqual(get_job_definition, ("failed", "`get_job_definition` failed. Rundeck API Response Code: 400")) +# +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_get_job_definition_success(self, rundeck): +# """Test `get_job_definition` Success.""" +# job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" +# +# rundeck.return_value.get_job_definition = MagicMock() +# rundeck.return_value.get_job_definition.return_value.text = "Job Definition Text" +# rundeck.return_value.get_job_definition.return_value.ok = True +# rundeck.return_value.get_job_definition.return_value.status_code = 200 +# +# get_job_definition = worker.get_job_definition(self.dispatcher, "Prometheus", job_id) +# self.dispatcher.send_markdown.assert_called_once_with("Ripley, Here is the job definition you requested.") +# self.dispatcher.send_snippet.assert_called_once_with("Job Definition Text") +# self.assertEqual(get_job_definition, "succeeded") +# +# # Get Job Executions +# @patch("nautobot_chatops_extension_rundeck.worker._get_job") +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_get_job_exec_success_no_job(self, rundeck, get_job): # pylint: disable=unused-argument +# """Test `get_job_executions` without specifying job.""" +# +# get_job.return_value = "cc2d5f73-0479-4601-9986-f759ea87f18b" +# +# get_job_executions = worker.get_job_executions(self.dispatcher, "Prometheus") +# self.assertEqual(get_job_executions, "cc2d5f73-0479-4601-9986-f759ea87f18b") +# +# @patch("nautobot_chatops_extension_rundeck.worker._get_project") +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_get_job_exec_success_no_project(self, rundeck, get_project): # pylint: disable=unused-argument +# """Test `get_job_executions` without specifying job.""" +# +# get_project.return_value = "Prometheus" +# +# get_job_executions = worker.get_job_executions(self.dispatcher) +# self.assertEqual(get_job_executions, "Prometheus") +# +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_get_job_exec_success_no_status(self, rundeck): # pylint: disable=unused-argument +# """Test `get_job_executions` without status, prompt from menu.""" +# +# job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" +# project = "Prometheus" +# +# get_job_executions = worker.get_job_executions(self.dispatcher, project, job_id) +# self.dispatcher.prompt_from_menu.assert_called_once_with( +# "rundeck get-job-executions Prometheus cc2d5f73-0479-4601-9986-f759ea87f18b", +# "Select status", +# [ +# ("All", "all"), +# ("Succeeded", "succeeded"), +# ("Failed", "failed"), +# ("Aborted", "aborted"), +# ("Running", "running"), +# ], +# ) +# self.assertFalse(get_job_executions) +# +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_get_job_exec_success_all_params_success_all(self, rundeck): # pylint: disable=unused-argument +# """Test `get_job_executions` with all params success.""" +# +# job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" +# project = "Prometheus" +# +# rundeck.return_value.get_job_executions = MagicMock() +# rundeck.return_value.get_job_executions.return_value.json.return_value = self.jobs_exec_json +# rundeck.return_value.get_job_executions.return_value.ok = True +# rundeck.return_value.get_job_executions.return_value.status_code = 200 +# +# get_job_executions = worker.get_job_executions(self.dispatcher, project, job_id, "all") +# self.assertTrue(get_job_executions, "Prometheus") +# self.dispatcher.send_markdown.assert_called_once_with( +# "Ripley, Here is the list of job executions you requested." +# ) +# self.dispatcher.send_large_table.assert_called_once_with( +# ["Permalink", "Status", "User", "Date Started"], +# [ +# ( +# "http://ec2-52-53-205-88.us-west-1.compute.amazonaws.com/project/Prometheus/execution/show/2", +# "succeeded", +# "admin", +# datetime.date(2021, 10, 16), +# ), +# ( +# "http://ec2-52-53-205-88.us-west-1.compute.amazonaws.com/project/Prometheus/execution/show/1", +# "succeeded", +# "admin", +# datetime.date(2021, 10, 14), +# ), +# ], +# ) +# +# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") +# def test_get_job_exec_success_all_params_success(self, rundeck): # pylint: disable=unused-argument +# """Test `get_job_executions` without all as status.""" +# +# job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" +# project = "Prometheus" +# +# rundeck.return_value.get_job_executions = MagicMock() +# rundeck.return_value.get_job_executions.return_value.json.return_value = self.jobs_exec_json +# rundeck.return_value.get_job_executions.return_value.ok = True +# rundeck.return_value.get_job_executions.return_value.status_code = 200 +# +# get_job_executions = worker.get_job_executions(self.dispatcher, project, job_id, "succeeded") +# self.assertTrue(get_job_executions, "Prometheus") +# self.dispatcher.send_large_table.assert_called_once_with( +# ["Permalink", "Status", "User", "Date Started"], +# [ +# ( +# "http://ec2-52-53-205-88.us-west-1.compute.amazonaws.com/project/Prometheus/execution/show/2", +# "succeeded", +# "admin", +# datetime.date(2021, 10, 16), +# ), +# ( +# "http://ec2-52-53-205-88.us-west-1.compute.amazonaws.com/project/Prometheus/execution/show/1", +# "succeeded", +# "admin", +# datetime.date(2021, 10, 14), +# ), +# ], +# ) diff --git a/nautobot_chatops/integrations/nso/urls.py b/nautobot_chatops/integrations/nso/urls.py new file mode 100644 index 00000000..f8de5896 --- /dev/null +++ b/nautobot_chatops/integrations/nso/urls.py @@ -0,0 +1,25 @@ +"""Django urlpatterns declaration for nautobot_plugin_chatops_nso plugin.""" +from django.urls import path +from nautobot.extras.views import ObjectChangeLogView +from nautobot_plugin_chatops_nso.models import CommandFilter +from nautobot_plugin_chatops_nso.views import ( + CiscoNSOView, + CommandFilterListView, + CommandFiltersCreateView, + CommandFiltersUpdateView, + CommandFiltersDeleteView, +) + +urlpatterns = [ + path("nso/", CiscoNSOView.as_view(), name="nso_page"), + path("command-filter/", CommandFilterListView.as_view(), name="commandfilter_list"), + path( + "command-filter//changelog/", + ObjectChangeLogView.as_view(), + name="commandfilter_changelog", + kwargs={"model": CommandFilter}, + ), + path("command-filter/add/", CommandFiltersCreateView.as_view(), name="commandfilter_add"), + path("command-filter//edit/", CommandFiltersUpdateView.as_view(), name="commandfilter_update"), + path("command-filter//delete/", CommandFiltersDeleteView.as_view(), name="commandfilter_delete"), +] diff --git a/nautobot_chatops/integrations/nso/views.py b/nautobot_chatops/integrations/nso/views.py new file mode 100644 index 00000000..b528a3e1 --- /dev/null +++ b/nautobot_chatops/integrations/nso/views.py @@ -0,0 +1,54 @@ +"""Views module for the nautobot_plugin_chatops_nso plugin. + +The views implemented in this module act as endpoints for various chat platforms +to send requests and notifications to. +""" + +from django.views import View +from django.shortcuts import redirect +from django.contrib.auth.mixins import PermissionRequiredMixin +from nautobot.core.views.generic import ObjectListView, ObjectEditView, ObjectDeleteView +from nautobot_plugin_chatops_nso.nso import PLUGIN_SETTINGS +from nautobot_plugin_chatops_nso.tables import CommandFilterTable +from nautobot_plugin_chatops_nso.models import CommandFilter +from nautobot_plugin_chatops_nso.forms import CommandFilterForm + + +class CiscoNSOView(View): + """View for redirecting to the Cisco NSO pages.""" + + def get(self, request, *args, **kwargs): + """Get request for the redirect.""" + return redirect(PLUGIN_SETTINGS.get("nso_url")) + + +class CommandFilterListView(ObjectListView): + """View for command filters list.""" + + queryset = CommandFilter.objects.all() + table = CommandFilterTable + action_buttons = ("add", "export") + + +class CommandFiltersCreateView(PermissionRequiredMixin, ObjectEditView): + """View for creating a new command filter.""" + + permission_required = "nautobot_plugin_chatops_nso.add_commandfilter" + model = CommandFilter + queryset = CommandFilter.objects.all() + model_form = CommandFilterForm + default_return_url = "plugins:nautobot_plugin_chatops_nso:commandfilter_list" + + +class CommandFiltersUpdateView(CommandFiltersCreateView): + """View for editing an existing command filter.""" + + permission_required = "nautobot_plugin_chatops_nso.change_commandfilter" + + +class CommandFiltersDeleteView(PermissionRequiredMixin, ObjectDeleteView): + """View for deleting a single command filter record.""" + + queryset = CommandFilter.objects.all() + permission_required = "nautobot_plugin_chatops_nso.delete_commandfilter" + default_return_url = "plugins:nautobot_plugin_chatops_nso:commandfilter_list" diff --git a/nautobot_chatops/integrations/nso/worker.py b/nautobot_chatops/integrations/nso/worker.py new file mode 100644 index 00000000..8a9d17df --- /dev/null +++ b/nautobot_chatops/integrations/nso/worker.py @@ -0,0 +1,286 @@ +"""Worker functions implementing Nautobot "nso" command and subcommands.""" +import re + +from django.core.exceptions import ObjectDoesNotExist +from nautobot.dcim.models import Device +from nautobot.core.settings_funcs import is_truthy + +from nautobot_chatops.choices import CommandStatusChoices +from nautobot_chatops.workers import handle_subcommands, subcommand_of +from nautobot_chatops.integrations.nso.nso import NSOClient, REQUEST_TIMEOUT_SEC, SLASH_COMMAND +from nautobot_chatops.integrations.nso.models import CommandFilter + + +def nso_logo(dispatcher): + """Construct an image_element containing the locally hosted Cisco NSO logo.""" + return dispatcher.image_element( + dispatcher.static_url("nso/nso-logo.png"), alt_text="Cisco NSO Logo" + ) + + +def nso(subcommand, **kwargs): + """Interact with nso plugin.""" + return handle_subcommands("nso", subcommand, **kwargs) + + +@subcommand_of("nso") +def ping(dispatcher, device_name=None): + """Ping a device.""" + if not device_name: + devices = Device.objects.all() + choices = [(device.name, device.name) for device in devices] + dispatcher.prompt_from_menu("nso ping", "Select a device.", choices) + return False + + nso_client = NSOClient() + ping_result = nso_client.ping(device_name) + + if "100% packet loss" in ping_result: + dispatcher.send_markdown(f"❌ NSO Ping of Device {device_name} failed.") + return CommandStatusChoices.STATUS_FAILED + if "Device does not exist in NSO" in ping_result: + dispatcher.send_markdown(f"❌ Device {device_name} doesn't exist in NSO.") + return CommandStatusChoices.STATUS_FAILED + dispatcher.send_markdown(f"✅ NSO Ping of Device {device_name} was successful.") + return CommandStatusChoices.STATUS_SUCCEEDED + + +@subcommand_of("nso") +def connect(dispatcher, device_name=None): + """Get connect status of device.""" + if not device_name: + devices = Device.objects.all() + choices = [(device.name, device.name) for device in devices] + dispatcher.prompt_from_menu("nso connect", "Select a device.", choices) + return False + + nso_client = NSOClient() + ping_result = nso_client.connect(device_name) + + if not ping_result: + dispatcher.send_markdown(f"❌ NSO Connection to Device {device_name} failed.") + return CommandStatusChoices.STATUS_FAILED + if "Device does not exist in NSO" in str(ping_result): + dispatcher.send_markdown(f"❌ Device {device_name} does not exist in NSO.") + return CommandStatusChoices.STATUS_FAILED + dispatcher.send_markdown(f"✅ NSO Connection to Device {device_name} was successful.") + return CommandStatusChoices.STATUS_SUCCEEDED + + +@subcommand_of("nso") +def check_sync(dispatcher, device_name=None, compare_config=None): + """Get sync status of device.""" + nso_client = NSOClient() + + if not device_name: + devices = Device.objects.all() + choices = [(device.name, device.name) for device in devices] + choices.insert(0, ("all", "all")) + + dispatcher.prompt_from_menu("nso check-sync", "Select a device.", choices) + return False + + if device_name == "all": + dispatcher.send_markdown(f"Stand by {dispatcher.user_mention()}, I'm getting that sync status report for you.") + sync_data = nso_client.sync_status_all() + + dispatcher.send_blocks( + [ + *dispatcher.command_response_header( + "nso", "check_sync", [("Device Name", device_name)], "information", nso_logo(dispatcher) + ) + ] + ) + + header = ["Device Name", "NSO Sync Status"] + rows = [(item["device"], item["result"]) for item in sync_data] + + dispatcher.send_large_table(header, rows) + return CommandStatusChoices.STATUS_SUCCEEDED + + # If user chose to compare config on the device and NSO, return compare_config + if device_name and compare_config: + if is_truthy(compare_config): + dispatcher.send_markdown(f"Checking configuration of device {device_name}.") + compared_config = nso_client.compare_config(device_name) + if len(compared_config) < 1000: + dispatcher.send_markdown(f"```{compared_config}\n```") + else: + dispatcher.send_snippet(compared_config) + else: + dispatcher.send_warning("Device configuration will not be checked.") + return CommandStatusChoices.STATUS_SUCCEEDED + + # Check sync status for chosen device + sync_status = nso_client.sync_status(device_name) + + if sync_status == "in-sync": + dispatcher.send_markdown(f"✅ Device {device_name} configuration is in sync with NSO.") + return CommandStatusChoices.STATUS_SUCCEEDED + + if sync_status == "out-of-sync": + dispatcher.send_markdown(f"❌ Device {device_name} configuration is out of sync with NSO.") + dispatcher.prompt_from_menu( + f"nso check-sync {device_name}", "Would you like to compare the config?", [("Yes", "Yes"), ("No", "No")] + ) + return False + + dispatcher.send_markdown(f"❌ Device {device_name} NSO status: {sync_status}") + + return CommandStatusChoices.STATUS_SUCCEEDED + + +def _allowed_command(device: Device, command: str): + """Validation function to check if a command is allowed on a particular device.""" + if not device.device_role.slug or not device.platform.slug: + raise ValueError( + f"{device.name} NSO Command Filter can not be determined! Be sure to assign a role and platform to the device." + ) + filters = CommandFilter.objects.filter(device_role=device.device_role, platform=device.platform) + if not filters: + raise ValueError( + f"No filters defined for {device.device_role.slug}:{device.platform.slug}!\nGo to Nautobot->NSO->Command Filters to define one." + ) + + for cmd_filter in filters: + if re.compile(cmd_filter.command).match(command): + return + + raise ValueError(f"Sorry, command '{command}' not allowed on {device.device_role.slug}:{device.platform.slug}.") + + +def _run_command_helper(dispatcher, device_name, device_commands, sub_command): + """Helper function for run-commands and run-command-set NSO commands.""" + # Create a dialog prompt for any missing parameters in the command. + dialog_list = [] + + all_choices = [(device.name, device.name) for device in Device.objects.all()] + if not device_name: + # Handle Slack 100 items menu limit + if dispatcher.platform_slug == "slack": + all_choices = dispatcher.get_prompt_from_menu_choices(choices=all_choices) + + dialog_list.append( + { + "type": "select", + "label": "Select target device", + "default": ("", "-----"), + "choices": all_choices, + } + ) + elif device_name.startswith("menu_offset-"): + dialog_list.append( + { + "type": "select", + "label": "Select target device", + "default": ("", "-----"), + "choices": dispatcher.get_prompt_from_menu_choices( + choices=all_choices, offset=int(device_name.replace("menu_offset-", "")) + ), + } + ) + else: + try: + nautobot_device = Device.objects.get(name=device_name) + except ObjectDoesNotExist: + dispatcher.send_error(f"{device_name} does not exist in Nautobot!") + return False + dialog_list.append( + { + "type": "select", + "label": "Select target device", + "default": (nautobot_device.name, nautobot_device.name), + "choices": all_choices, + } + ) + + if not device_commands: + if sub_command == "run-commands": + dialog_list.append({"type": "text", "label": "Comma separated device commands.", "default": ""}) + if sub_command == "run-command-set": + cmd_choices = [ + ("display ip addresses and routing table", "show ip interface brief, show ip route"), + ("display routing table", "show ip route"), + ("display OS version", "show version"), + ("display device neighbors", "show cdp neighbor"), + ("display mac table", "show mac address-table"), + ("list interfaces", "show interface brief"), + ("display bgp neighbors", "show ip bgp sum"), + ] + dialog_list.append( + {"type": "select", "label": "Select command set", "choices": cmd_choices, "default": (None, None)} + ) + + dispatcher.multi_input_dialog( + command=SLASH_COMMAND, + sub_command=sub_command, + dialog_title="Run raw commands", + dialog_list=dialog_list, + ) + return False + + # Split and strip device_commands, exclude empty results + stripped_device_commands = [cmd.strip() for cmd in device_commands.split(",") if cmd.strip() != ""] + valid_device_commands = [] + + for cmd in stripped_device_commands: + try: + _allowed_command(nautobot_device, cmd) + except ValueError as exc: + dispatcher.send_error(f"{exc}‼️") + return False + + valid_device_commands.append(cmd) + + # Send a Markdown-formatted text message. + dispatcher.send_markdown( + f"Standby {dispatcher.user_mention()} while I get that info from Cisco NSO.\n" + f"Please be patient as this can take up to {REQUEST_TIMEOUT_SEC} seconds.", + ephemeral=True, + ) + + # Send a "typing" indicator to show that work is in progress. + dispatcher.send_busy_indicator() + + nso_client = NSOClient() + + # Response we're going to send to the chat client. This will get built as commands + # are run through NSO. + response = "" + for cmd in valid_device_commands: + # Pull data from NSO using the live_status operand. + data = nso_client.live_status(device_name, cmd) + response += f"\n! {'-' * 30}\n! Command '{cmd}' results:\n! {'-' * 30}\n{data}" + + dispatcher.send_blocks( + [ + *dispatcher.command_response_header( + SLASH_COMMAND, + f'{sub_command} {device_name} "{device_commands}"', + [], + "Cisco NSO Live Status", + nso_logo(dispatcher), + ) + ] + ) + + # If it's a short response, we can add it as a code-block. If it's a bit larger, we will need to stream + # it as a file attachment. + if len(response) < 1000: + dispatcher.send_markdown(f"```{response}\n```") + return True + + dispatcher.send_snippet(response) + return True + + +@subcommand_of("nso") +def run_commands(dispatcher, device_name, device_commands): + """Run a device commands using Cisco NSO. Separate multiple commands with comma.""" + return _run_command_helper(dispatcher, device_name, device_commands, "run-commands") + + +@subcommand_of("nso") +def run_command_set(dispatcher, device_name, device_commands): + """Select a predefined command set to run on a device using Cisco NSO.""" + return _run_command_helper(dispatcher, device_name, device_commands, "run-command-set") diff --git a/nautobot_chatops/migrations/0008_commandfilter.py b/nautobot_chatops/migrations/0008_commandfilter.py new file mode 100644 index 00000000..229195e4 --- /dev/null +++ b/nautobot_chatops/migrations/0008_commandfilter.py @@ -0,0 +1,29 @@ +# Generated by Django 3.2.21 on 2023-10-25 16:50 + +from django.db import migrations, models +import django.db.models.deletion +import uuid + + +class Migration(migrations.Migration): + + dependencies = [ + ('extras', '0098_rename_data_jobresult_result'), + ('dcim', '0049_remove_slugs_and_change_device_primary_ip_fields'), + ('nautobot_chatops', '0007_account_link'), + ] + + operations = [ + migrations.CreateModel( + name='CommandFilter', + fields=[ + ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, unique=True)), + ('command', models.CharField(max_length=200)), + ('device_role', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='extras.role')), + ('platform', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='dcim.platform')), + ], + options={ + 'ordering': ['command', 'device_role', 'platform'], + }, + ), + ] diff --git a/nautobot_chatops/models.py b/nautobot_chatops/models.py index b6b557b9..d8d44181 100644 --- a/nautobot_chatops/models.py +++ b/nautobot_chatops/models.py @@ -13,6 +13,8 @@ from .integrations.grafana.models import Panel as GrafanaPanel from .integrations.grafana.models import PanelVariable as GrafanaPanelVariable +from .integrations.nso.models import CommandFilter as NSOCommandFilter + from .constants import ( COMMAND_LOG_USER_NAME_HELP_TEXT, COMMAND_LOG_USER_ID_HELP_TEXT, @@ -183,4 +185,5 @@ class Meta: "GrafanaDashboard", "GrafanaPanel", "GrafanaPanelVariable", + "NSOCommandFilter", ) diff --git a/nautobot_chatops/static/nso/nso-logo.png b/nautobot_chatops/static/nso/nso-logo.png new file mode 100644 index 0000000000000000000000000000000000000000..6d716575ea2f57c6fa9e2891b09d951378c17f91 GIT binary patch literal 28056 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

;6kJumfBCM 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 Date: Thu, 21 Dec 2023 15:28:55 -0500 Subject: [PATCH 60/93] Apply Black formatting --- nautobot_chatops/__init__.py | 4 +--- nautobot_chatops/integrations/nso/nso.py | 7 +++++- nautobot_chatops/integrations/nso/worker.py | 4 +--- .../migrations/0008_commandfilter.py | 24 +++++++++++-------- 4 files changed, 22 insertions(+), 17 deletions(-) diff --git a/nautobot_chatops/__init__.py b/nautobot_chatops/__init__.py index f0def3d7..ab18bba1 100644 --- a/nautobot_chatops/__init__.py +++ b/nautobot_chatops/__init__.py @@ -147,9 +147,7 @@ class NautobotChatOpsConfig(NautobotAppConfig): "enable_panorama": ConstanceConfigItem( default=False, help_text="Enable Panorama Integration.", field_type=bool ), - "enable_nso": ConstanceConfigItem( - default=False, help_text="Enable NSO Integration.", field_type=bool - ), + "enable_nso": ConstanceConfigItem(default=False, help_text="Enable NSO Integration.", field_type=bool), } caching_config = {} diff --git a/nautobot_chatops/integrations/nso/nso.py b/nautobot_chatops/integrations/nso/nso.py index 2b2c3850..a4a9b77c 100644 --- a/nautobot_chatops/integrations/nso/nso.py +++ b/nautobot_chatops/integrations/nso/nso.py @@ -5,7 +5,12 @@ from django.conf import settings from rest_framework import status -from nautobot_chatops.integrations.nso.exceptions import CommunicationError, DeviceNotFound, DeviceNotSupported, DeviceLocked +from nautobot_chatops.integrations.nso.exceptions import ( + CommunicationError, + DeviceNotFound, + DeviceNotSupported, + DeviceLocked, +) logger = logging.getLogger("nautobot.plugin.nso") diff --git a/nautobot_chatops/integrations/nso/worker.py b/nautobot_chatops/integrations/nso/worker.py index 8a9d17df..4f2d8af7 100644 --- a/nautobot_chatops/integrations/nso/worker.py +++ b/nautobot_chatops/integrations/nso/worker.py @@ -13,9 +13,7 @@ def nso_logo(dispatcher): """Construct an image_element containing the locally hosted Cisco NSO logo.""" - return dispatcher.image_element( - dispatcher.static_url("nso/nso-logo.png"), alt_text="Cisco NSO Logo" - ) + return dispatcher.image_element(dispatcher.static_url("nso/nso-logo.png"), alt_text="Cisco NSO Logo") def nso(subcommand, **kwargs): diff --git a/nautobot_chatops/migrations/0008_commandfilter.py b/nautobot_chatops/migrations/0008_commandfilter.py index 229195e4..fac597a1 100644 --- a/nautobot_chatops/migrations/0008_commandfilter.py +++ b/nautobot_chatops/migrations/0008_commandfilter.py @@ -6,24 +6,28 @@ class Migration(migrations.Migration): - dependencies = [ - ('extras', '0098_rename_data_jobresult_result'), - ('dcim', '0049_remove_slugs_and_change_device_primary_ip_fields'), - ('nautobot_chatops', '0007_account_link'), + ("extras", "0098_rename_data_jobresult_result"), + ("dcim", "0049_remove_slugs_and_change_device_primary_ip_fields"), + ("nautobot_chatops", "0007_account_link"), ] operations = [ migrations.CreateModel( - name='CommandFilter', + name="CommandFilter", fields=[ - ('id', models.UUIDField(default=uuid.uuid4, editable=False, primary_key=True, serialize=False, unique=True)), - ('command', models.CharField(max_length=200)), - ('device_role', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='extras.role')), - ('platform', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='dcim.platform')), + ( + "id", + models.UUIDField( + default=uuid.uuid4, editable=False, primary_key=True, serialize=False, unique=True + ), + ), + ("command", models.CharField(max_length=200)), + ("device_role", models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to="extras.role")), + ("platform", models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to="dcim.platform")), ], options={ - 'ordering': ['command', 'device_role', 'platform'], + "ordering": ["command", "device_role", "platform"], }, ), ] From 6581a9765de39f8ff7a2eea85692a847c0f22635 Mon Sep 17 00:00:00 2001 From: Sergey Romanyuk Date: Thu, 4 Jan 2024 11:09:02 -0500 Subject: [PATCH 61/93] Update NSO migration --- .../migrations/0008_auto_20231228_2231.py | 41 +++++++++++++++++++ .../migrations/0008_commandfilter.py | 33 --------------- 2 files changed, 41 insertions(+), 33 deletions(-) create mode 100644 nautobot_chatops/migrations/0008_auto_20231228_2231.py delete mode 100644 nautobot_chatops/migrations/0008_commandfilter.py diff --git a/nautobot_chatops/migrations/0008_auto_20231228_2231.py b/nautobot_chatops/migrations/0008_auto_20231228_2231.py new file mode 100644 index 00000000..b64f46b3 --- /dev/null +++ b/nautobot_chatops/migrations/0008_auto_20231228_2231.py @@ -0,0 +1,41 @@ +# Generated by Django 3.2.21 on 2023-12-28 22:31 + +import django.core.serializers.json +from django.db import migrations, models +import django.db.models.deletion +import nautobot.core.models.fields +import nautobot.extras.models.mixins +import uuid + + +class Migration(migrations.Migration): + + dependencies = [ + ('dcim', '0049_remove_slugs_and_change_device_primary_ip_fields'), + ('extras', '0098_rename_data_jobresult_result'), + ('nautobot_chatops', '0007_account_link'), + ] + + operations = [ + migrations.CreateModel( + name='CommandFilter', + 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)), + ('command', models.CharField(max_length=200)), + ('platform', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='dcim.platform')), + ('role', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='extras.role')), + ('tags', nautobot.core.models.fields.TagsField(through='extras.TaggedItem', to='extras.Tag')), + ], + options={ + 'ordering': ['command', 'role', 'platform'], + }, + bases=(models.Model, nautobot.extras.models.mixins.DynamicGroupMixin, nautobot.extras.models.mixins.NotesMixin), + ), + migrations.AddConstraint( + model_name='commandfilter', + constraint=models.UniqueConstraint(fields=('command', 'role', 'platform'), name='unique command filter'), + ), + ] diff --git a/nautobot_chatops/migrations/0008_commandfilter.py b/nautobot_chatops/migrations/0008_commandfilter.py deleted file mode 100644 index fac597a1..00000000 --- a/nautobot_chatops/migrations/0008_commandfilter.py +++ /dev/null @@ -1,33 +0,0 @@ -# Generated by Django 3.2.21 on 2023-10-25 16:50 - -from django.db import migrations, models -import django.db.models.deletion -import uuid - - -class Migration(migrations.Migration): - dependencies = [ - ("extras", "0098_rename_data_jobresult_result"), - ("dcim", "0049_remove_slugs_and_change_device_primary_ip_fields"), - ("nautobot_chatops", "0007_account_link"), - ] - - operations = [ - migrations.CreateModel( - name="CommandFilter", - fields=[ - ( - "id", - models.UUIDField( - default=uuid.uuid4, editable=False, primary_key=True, serialize=False, unique=True - ), - ), - ("command", models.CharField(max_length=200)), - ("device_role", models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to="extras.role")), - ("platform", models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to="dcim.platform")), - ], - options={ - "ordering": ["command", "device_role", "platform"], - }, - ), - ] From 73ddac87e60b0cceded20246a730bf50b770662c Mon Sep 17 00:00:00 2001 From: Sergey Romanyuk Date: Thu, 4 Jan 2024 11:10:08 -0500 Subject: [PATCH 62/93] Move NSO tests --- .../integrations/nso/tests/__init__.py | 1 - .../integrations/nso/tests/test_basic.py | 16 - .../integrations/nso/tests/test_worker.py | 617 ------------------ nautobot_chatops/tests/nso/__init__.py | 1 + .../fixtures/compare_config_responses.json | 0 .../fixtures/connect_device_responses.json | 0 .../nso}/fixtures/live_status_responses.json | 0 .../nso}/fixtures/ping_device_responses.json | 0 .../nso}/fixtures/sync_from_responses.json | 0 .../nso}/fixtures/sync_status_responses.json | 0 .../nso}/fixtures/sync_to_responses.json | 0 .../nso/tests => tests/nso}/test_nso.py | 4 +- 12 files changed, 3 insertions(+), 636 deletions(-) delete mode 100644 nautobot_chatops/integrations/nso/tests/__init__.py delete mode 100644 nautobot_chatops/integrations/nso/tests/test_basic.py delete mode 100644 nautobot_chatops/integrations/nso/tests/test_worker.py create mode 100644 nautobot_chatops/tests/nso/__init__.py rename nautobot_chatops/{integrations/nso/tests => tests/nso}/fixtures/compare_config_responses.json (100%) rename nautobot_chatops/{integrations/nso/tests => tests/nso}/fixtures/connect_device_responses.json (100%) rename nautobot_chatops/{integrations/nso/tests => tests/nso}/fixtures/live_status_responses.json (100%) rename nautobot_chatops/{integrations/nso/tests => tests/nso}/fixtures/ping_device_responses.json (100%) rename nautobot_chatops/{integrations/nso/tests => tests/nso}/fixtures/sync_from_responses.json (100%) rename nautobot_chatops/{integrations/nso/tests => tests/nso}/fixtures/sync_status_responses.json (100%) rename nautobot_chatops/{integrations/nso/tests => tests/nso}/fixtures/sync_to_responses.json (100%) rename nautobot_chatops/{integrations/nso/tests => tests/nso}/test_nso.py (96%) diff --git a/nautobot_chatops/integrations/nso/tests/__init__.py b/nautobot_chatops/integrations/nso/tests/__init__.py deleted file mode 100644 index 3b57b2e3..00000000 --- a/nautobot_chatops/integrations/nso/tests/__init__.py +++ /dev/null @@ -1 +0,0 @@ -"""Unit tests nautobot_plugin_chatops nso integration plugin.""" diff --git a/nautobot_chatops/integrations/nso/tests/test_basic.py b/nautobot_chatops/integrations/nso/tests/test_basic.py deleted file mode 100644 index 95df9160..00000000 --- a/nautobot_chatops/integrations/nso/tests/test_basic.py +++ /dev/null @@ -1,16 +0,0 @@ -"""Basic tests that do not require Django.""" -import unittest -import os -import toml - -from nautobot_plugin_chatops_nso import __version__ as project_version - - -class TestVersion(unittest.TestCase): - """Test Version is the same.""" - - def test_version(self): - """Verify that pyproject.toml version is same as version specified in the package.""" - parent_path = os.path.dirname(os.path.dirname(os.path.dirname(os.path.realpath(__file__)))) - poetry_version = toml.load(os.path.join(parent_path, "pyproject.toml"))["tool"]["poetry"]["version"] - self.assertEqual(project_version, poetry_version) diff --git a/nautobot_chatops/integrations/nso/tests/test_worker.py b/nautobot_chatops/integrations/nso/tests/test_worker.py deleted file mode 100644 index 777392ac..00000000 --- a/nautobot_chatops/integrations/nso/tests/test_worker.py +++ /dev/null @@ -1,617 +0,0 @@ -# """Tests for Nautobot Rundeck worker.""" -# # Testing protected members # pylint: disable=protected-access -# # Testing Class is quite full of tests: # pylint: disable=too-many-public-methods -# import datetime -# import os -# from unittest import TestCase -# from unittest.mock import MagicMock, call, patch -# -# import responses -# from django.conf import settings -# from nautobot_chatops.dispatchers.slack import SlackDispatcher, WebClient -# -# from nautobot_chatops_extension_rundeck import worker -# from nautobot_chatops_extension_rundeck.rundeck import Rundeck -# from nautobot_chatops_extension_rundeck.tests.fixtures import real_path -# from nautobot_chatops_extension_rundeck.tests.utilities import json_fixture -# -# FIXTURES = os.environ.get("FIXTURE_DIR", real_path) -# -# -# class TestSlackDispatcher(TestCase): -# """Test the SlackDispatcher class.""" -# -# dispatcher_class = SlackDispatcher -# platform_name = "Slack" -# enable_opt_name = "enable_slack" -# -# def setUp(self): -# """Setup Class.""" -# settings.PLUGINS_CONFIG["nautobot_chatops"][self.enable_opt_name] = True -# self.dispatcher = self.dispatcher_class( -# context={ -# "user_name": "Hugo", -# "user_id": "UserID69", -# "channel_id": "T02HVAUAYD9", -# "request_scheme": "SomeScheme", -# "request_host": "SomeHost", -# } -# ) -# self.uri = "https://rundeck-server.com" -# self.token = "junkToken" -# # self.api_version = "40" -# self.rundeck = Rundeck(self.uri, self.token) -# self.job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" -# -# def test_rundeck_logo(self): -# """Make sure image_element() (rundeck_logo) is implemented.""" -# image = worker.rundeck_logo(self.dispatcher) -# -# self.assertDictEqual( -# image, -# { -# "type": "image", -# "image_url": "SomeScheme://SomeHost/static/nautobot_chatops_extension_rundeck/images/Rundeck_Logo.png", -# "alt_text": "Rundeck Logo", -# }, -# ) -# -# def test_default_values(self): -# """Test Rundeck Client Default Values.""" -# self.assertTrue(self.rundeck.session.verify) -# self.assertEqual(self.rundeck.version, "36") -# -# @patch.object(WebClient, "chat_postEphemeral") -# def test_rundeck_subcommand(self, mock_client): -# """Test rundeck sub-command.""" -# mock_client.return_value = {} -# command = worker.rundeck( -# "help", dispatcher_class=TestSlackDispatcher.dispatcher_class, context=self.dispatcher.context -# ) -# self.assertFalse(command) -# -# -# class TestRundeckWorker(TestCase): -# """Test Rundeck Worker Calls.""" -# -# def setUp(self): -# """Setup.""" -# # Load JSON Fixture -# self.projects_json = json_fixture(f"{FIXTURES}/get_projects.json") -# self.jobs_json = json_fixture(f"{FIXTURES}/get_project_jobs.json") -# self.project_exec_json = json_fixture(f"{FIXTURES}/get_project_executions.json") -# self.trigger_job_json = json_fixture(f"{FIXTURES}/trigger_job.json") -# self.jobs_exec_json = json_fixture(f"{FIXTURES}/get_job_executions.json") -# -# # Rundeck Client -# self.uri = "https://rundeck-server.com" -# self.token = "junkToken" -# self.api_version = "40" -# self.rundeck = Rundeck(self.uri, self.token, self.api_version) -# -# # Dispatcher Mock -# self.dispatcher = MagicMock() -# self.dispatcher.prompt_from_menu = MagicMock() -# self.dispatcher.send_error = MagicMock() -# self.dispatcher.send_large_table = MagicMock() -# self.dispatcher.send_markdown = MagicMock() -# self.dispatcher.send_snippet = MagicMock() -# self.dispatcher.send_markdown = MagicMock() -# self.dispatcher.user_mention = MagicMock() -# self.dispatcher.user_mention.return_value = "Ripley" -# self.dispatcher.hyperlink = MagicMock() -# self.dispatcher.hyperlink.return_value = ( -# "Job Results", -# "http://ec2-52-53-205-88.us-west-1.compute.amazonaws.com/project/Prometheus/execution/show/3", -# ) -# -# @responses.activate -# def test_get_project_success(self): -# """Test private `_get_project` Success.""" -# -# responses.add( -# responses.GET, -# f"{self.uri}/api/{self.api_version}/projects", -# json=self.projects_json, -# status=200, -# ) -# -# private_get_project = worker._get_project(self.dispatcher, self.rundeck, "test-command") -# self.dispatcher.prompt_from_menu.assert_called_once_with( -# "rundeck test-command", "Select project name", [("Prometheus", "Prometheus")] -# ) -# self.assertFalse(private_get_project) -# -# @responses.activate -# def test_get_project_bad_response(self): -# """Test `_get_project` bad API Response.""" -# -# responses.add( -# responses.GET, -# f"{self.uri}/api/{self.api_version}/projects", -# json={}, -# status=404, -# ) -# -# private_get_project = worker._get_project(self.dispatcher, self.rundeck, "test-command") -# -# self.dispatcher.send_error.assert_called_once_with("Rundeck API response is not 200. 404") -# self.assertEqual(private_get_project, ("failed", "`get_projects` failed. Rundeck API Response Code: 404")) -# -# @responses.activate -# def test_get_job_success(self): -# """Test `_get_job` Success.""" -# -# project = "Prometheus" -# responses.add( -# responses.GET, -# f"{self.uri}/api/{self.api_version}/project/{project}/jobs", -# json=json_fixture(f"{FIXTURES}/get_project_jobs.json"), -# status=200, -# ) -# -# private_get_job = worker._get_job( -# dispatcher=self.dispatcher, rundeck_client=self.rundeck, project=project, command="test-command" -# ) -# self.dispatcher.prompt_from_menu.assert_called_once_with( -# "rundeck test-command", "Select job", [("Crash The Ship", "cc2d5f73-0479-4601-9986-f759ea87f18b")] -# ) -# self.assertFalse(private_get_job) -# -# @responses.activate -# def test_get_job_bad_response_bad_response(self): -# """Test `_get_job` error.""" -# -# project = "Prometheus" -# responses.add( -# responses.GET, -# f"{self.uri}/api/{self.api_version}/project/{project}/jobs", -# json=json_fixture(f"{FIXTURES}/get_project_jobs.json"), -# status=400, -# ) -# -# private_get_job = worker._get_job( -# dispatcher=self.dispatcher, rundeck_client=self.rundeck, project=project, command="test-command" -# ) -# self.dispatcher.send_error.assert_called_once_with("Rundeck API response is not 200. 400") -# self.assertEqual(private_get_job, ("failed", "`get_job` failed. Rundeck API Response Code: 400")) -# -# # The strategy for testing changes below this point. We instantiate a client -# # Each time a worker call is made. So, we rely on mocking the Rundeck Client -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_get_projects_success(self, rundeck): -# """Test `get_project` Success.""" -# -# rundeck.return_value.get_projects = MagicMock() -# rundeck.return_value.get_projects.return_value.json.return_value = self.projects_json -# rundeck.return_value.get_projects.return_value.ok = True -# rundeck.return_value.get_projects.return_value.status_code = 200 -# -# get_projects = worker.get_projects(self.dispatcher) -# self.dispatcher.send_large_table.assert_called_once_with(["Name", "Description"], [("Prometheus", "")]) -# # Updating to see if this feels more natural -# self.dispatcher.send_markdown.assert_called_once_with( -# "Hello, Ripley! Here is the list of projects you requested." -# ) -# self.assertEqual(get_projects, "succeeded") -# -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_get_projects_bad_response(self, rundeck): -# """Test `get_project` bad API Response.""" -# -# rundeck.return_value.get_projects = MagicMock() -# rundeck.return_value.get_projects.return_value.json.return_value = {"BAD_RESPONSE": "yep"} -# rundeck.return_value.get_projects.return_value.ok = False -# rundeck.return_value.get_projects.return_value.status_code = 400 -# -# get_projects = worker.get_projects(self.dispatcher) -# -# self.dispatcher.send_error.assert_called_once_with("Rundeck API response is not 200. 400") -# self.assertEqual(get_projects, ("failed", "`get_projects` failed. Rundeck API Response Code: 400")) -# -# # Get Jobs -# @patch("nautobot_chatops_extension_rundeck.worker._get_project") -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_get_project_jobs_no_project(self, rundeck, get_project_mock): # pylint: disable=unused-argument -# """Test `get_jobs` no project passed in, prompt for project.""" -# -# get_project_mock.return_value = "Prometheus" -# -# get_jobs = worker.get_jobs(self.dispatcher) -# self.assertEqual(get_jobs, "Prometheus") -# -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_get_project_jobs_success(self, rundeck): -# """Test `get_jobs` Success""" -# -# rundeck.return_value.get_jobs = MagicMock() -# rundeck.return_value.get_jobs.return_value.json.return_value = self.jobs_json -# rundeck.return_value.get_jobs.return_value.ok = True -# rundeck.return_value.get_jobs.return_value.status_code = 200 -# -# get_jobs = worker.get_jobs(self.dispatcher, "Prometheus") -# self.dispatcher.send_markdown.assert_called_once_with("Ripley, Here is the list of jobs you requested.") -# self.dispatcher.send_large_table.assert_called_once_with( -# ["Name", "Enabled", "Description"], [("Crash The Ship", True, "Prometheus is down")] -# ) -# self.assertEqual(get_jobs, "succeeded") -# -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_get_project_jobs_error(self, rundeck): -# """Test `get_jobs` Error, bad API Response""" -# -# rundeck.return_value.get_jobs = MagicMock() -# rundeck.return_value.get_jobs.return_value.json.return_value = {} -# rundeck.return_value.get_jobs.return_value.ok = False -# rundeck.return_value.get_jobs.return_value.status_code = 400 -# -# get_jobs = worker.get_jobs(self.dispatcher, "Prometheus") -# self.dispatcher.send_error.assert_called_once_with("Rundeck API response is not 200. 400") -# self.assertEqual(get_jobs, ("failed", "`get_jobs` failed. Rundeck API Response Code: 400")) -# -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_get_project_exectuion_success(self, rundeck): -# """Test `get_project_execution` Success.""" -# -# rundeck.return_value.get_project_executions = MagicMock() -# rundeck.return_value.get_project_executions.return_value.json.return_value = self.project_exec_json -# rundeck.return_value.get_project_executions.return_value.ok = True -# rundeck.return_value.get_project_executions.return_value.status_code = 200 -# -# get_proj_exec = worker.get_project_executions(self.dispatcher, "Prometheus") -# self.dispatcher.send_markdown.assert_called_once_with( -# "Ripley, Here is the list of project executions you requested." -# ) -# self.dispatcher.send_large_table.assert_called_once_with( -# ["Permalink", "Status", "User", "Date Started"], -# [ -# ( -# "http://ec2-52-53-205-88.us-west-1.compute.amazonaws.com/project/Prometheus/execution/show/2", -# "succeeded", -# "admin", -# datetime.date(2021, 10, 16), -# ), -# ( -# "http://ec2-52-53-205-88.us-west-1.compute.amazonaws.com/project/Prometheus/execution/show/1", -# "succeeded", -# "admin", -# datetime.date(2021, 10, 14), -# ), -# ], -# ) -# self.assertEqual(get_proj_exec, "succeeded") -# -# @patch("nautobot_chatops_extension_rundeck.worker._get_project") -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_get_project_executions_no_project(self, rundeck, get_project_mock): # pylint: disable=unused-argument -# """Test `get_project_executions` no project passed in, prompt for project.""" -# -# get_project_mock.return_value = "Prometheus" -# -# get_project_executions = worker.get_project_executions(self.dispatcher) -# self.assertEqual(get_project_executions, "Prometheus") -# -# # Execute Job -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_job_execution_success(self, rundeck): -# """Test `execute_job` Success.""" -# job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" -# -# rundeck.return_value.trigger_job = MagicMock() -# rundeck.return_value.trigger_job.return_value.json.return_value = self.trigger_job_json -# rundeck.return_value.trigger_job.return_value.ok = True -# rundeck.return_value.trigger_job.return_value.status_code = 200 -# -# execute_job = worker.execute_job( -# self.dispatcher, -# "Prometheus", -# job_id, -# False, -# None, -# ) -# # Send Markdown mock is called twice. Assert the list of arguments used -# call_list = [ -# call("Stand by Ripley, I am executing the job you requested."), -# call( -# "Crash The Ship has been started. View job results: ('Job Results', 'http://ec2-52-53-205-88.us-west-1.compute.amazonaws.com/project/Prometheus/execution/show/3')" -# ), -# call( -# "To rerun this command, use the following: /rundeck execute-job Prometheus cc2d5f73-0479-4601-9986-f759ea87f18b False None" -# ), -# ] -# self.assertEqual(self.dispatcher.send_markdown.call_args_list, call_list) -# self.assertEqual(self.dispatcher.send_markdown.call_count, 3) -# self.assertEqual(execute_job, "succeeded") -# -# # pylint: disable=unused-argument -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_job_execution_prompt_for_need_options(self, rundeck): -# """Test `execute_job` with `prompt_for_need_options`.""" -# job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" -# -# execute_job = worker.execute_job( -# self.dispatcher, -# "Prometheus", -# job_id, -# None, -# ) -# self.assertEqual( -# self.dispatcher.prompt_from_menu.call_args, -# call( -# action_id="rundeck execute-job Prometheus cc2d5f73-0479-4601-9986-f759ea87f18b", -# help_text="Does the Job require options?", -# choices=[("Yes", "yes"), ("No", "no")], -# default=("No", "no"), -# ), -# ) -# self.assertFalse(execute_job) -# -# # pylint: disable=unused-argument -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_job_execution_if_options(self, rundeck): -# """Test `execute_job` with prompt for options.""" -# job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" -# -# execute_job = worker.execute_job( -# self.dispatcher, -# "Prometheus", -# job_id, -# True, -# None, -# ) -# self.assertEqual( -# self.dispatcher.prompt_for_text.call_args, -# call( -# action_id="rundeck execute-job Prometheus cc2d5f73-0479-4601-9986-f759ea87f18b True", -# help_text="Example: option1=some_value, option2='some spaced value'", -# label="Please enter the job options.", -# title="Job Options", -# ), -# ) -# self.assertFalse(execute_job) -# -# # pylint: disable=unused-argument -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_job_execution_bad_optinos_reprompt(self, rundeck): -# """Test `execute_job` with prompt for options.""" -# job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" -# options = "dna perfect_match david 'created because we could'" -# -# execute_job = worker.execute_job( -# self.dispatcher, -# "Prometheus", -# job_id, -# True, -# options, -# ) -# self.assertEqual( -# self.dispatcher.prompt_for_text.call_args, -# call( -# action_id="rundeck execute-job Prometheus cc2d5f73-0479-4601-9986-f759ea87f18b True", -# help_text="Example: option1=some_value, option2='some spaced value'", -# label="Please enter the job options.", -# title="Job Options", -# ), -# ) -# self.assertFalse(execute_job) -# -# @patch("nautobot_chatops_extension_rundeck.worker._get_job") -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_job_execution_success_no_job(self, rundeck, get_job): # pylint: disable=unused-argument -# """Test `execute_job` without specifying job.""" -# -# get_job.return_value = "cc2d5f73-0479-4601-9986-f759ea87f18b" -# -# execute_job = worker.execute_job(self.dispatcher, "Prometheus") -# self.assertEqual(execute_job, "cc2d5f73-0479-4601-9986-f759ea87f18b") -# -# @patch("nautobot_chatops_extension_rundeck.worker._get_project") -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_job_execution_success_no_project(self, rundeck, get_project): # pylint: disable=unused-argument -# """Test `execute_job` without specifying job.""" -# -# get_project.return_value = "Prometheus" -# -# execute_job = worker.execute_job(self.dispatcher) -# self.assertEqual(execute_job, "Prometheus") -# -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_job_execution_error(self, rundeck): -# """Test `execute_job` Error.""" -# job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" -# -# rundeck.return_value.trigger_job = MagicMock() -# rundeck.return_value.trigger_job.return_value.json.return_value = {} -# rundeck.return_value.trigger_job.return_value.ok = False -# rundeck.return_value.trigger_job.return_value.status_code = 400 -# -# execute_job = worker.execute_job(self.dispatcher, "Prometheus", job_id, True, "option1=cool option") -# self.dispatcher.send_error.assert_called_once_with("Rundeck API response is not 200. 400") -# self.assertEqual(execute_job, ("failed", "`execute_job` failed. Rundeck API Response Code: 400")) -# -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_job_execution_success_argstring_options(self, rundeck): -# """Test `execute_job` Success with argstring.""" -# job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" -# -# rundeck.return_value.trigger_job = MagicMock() -# rundeck.return_value.trigger_job.return_value.json.return_value = self.trigger_job_json -# rundeck.return_value.trigger_job.return_value.ok = True -# rundeck.return_value.trigger_job.return_value.status_code = 200 -# argstring = "option_one=some_value, option_two=some second value" -# -# execute_job = worker.execute_job(self.dispatcher, "Prometheus", job_id, True, argstring) -# # Send Markdown mock is called twice. Assert the list of arguments used -# call_list = [ -# call( -# "Stand by Ripley, I am executing the job you requested with the following 2 options: {'option_one': 'some_value', 'option_two': 'some second value'}" -# ), -# call( -# "Crash The Ship has been started. View job results: ('Job Results', 'http://ec2-52-53-205-88.us-west-1.compute.amazonaws.com/project/Prometheus/execution/show/3')" -# ), -# call( -# "To rerun this command, use the following: /rundeck execute-job Prometheus cc2d5f73-0479-4601-9986-f759ea87f18b True 'option_one=some_value, option_two=some second value'" -# ), -# ] -# -# self.assertEqual(self.dispatcher.send_markdown.call_args_list, call_list) -# self.assertEqual(self.dispatcher.send_markdown.call_count, 3) -# self.assertEqual(execute_job, "succeeded") -# -# # Get Job Definition -# @patch("nautobot_chatops_extension_rundeck.worker._get_job") -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_job_definition_success_no_job(self, rundeck, get_job): # pylint: disable=unused-argument -# """Test `get_job_definition` without specifying job.""" -# -# get_job.return_value = "cc2d5f73-0479-4601-9986-f759ea87f18b" -# -# get_job_definition = worker.get_job_definition(self.dispatcher, "Prometheus") -# self.assertEqual(get_job_definition, "cc2d5f73-0479-4601-9986-f759ea87f18b") -# -# @patch("nautobot_chatops_extension_rundeck.worker._get_project") -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_get_job_definition_success_no_project(self, rundeck, get_project): # pylint: disable=unused-argument -# """Test `get_job_definition` without specifying job.""" -# -# get_project.return_value = "Prometheus" -# -# get_job_definition = worker.get_job_definition(self.dispatcher) -# self.assertEqual(get_job_definition, "Prometheus") -# -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_get_job_definition_error(self, rundeck): -# """Test `get_job_definition` Error.""" -# job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" -# -# rundeck.return_value.get_job_definition = MagicMock() -# rundeck.return_value.get_job_definition.return_value.ok = False -# rundeck.return_value.get_job_definition.return_value.status_code = 400 -# -# get_job_definition = worker.get_job_definition(self.dispatcher, "Prometheus", job_id) -# self.dispatcher.send_error.assert_called_once_with("Rundeck API response is not 200. 400") -# self.assertEqual(get_job_definition, ("failed", "`get_job_definition` failed. Rundeck API Response Code: 400")) -# -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_get_job_definition_success(self, rundeck): -# """Test `get_job_definition` Success.""" -# job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" -# -# rundeck.return_value.get_job_definition = MagicMock() -# rundeck.return_value.get_job_definition.return_value.text = "Job Definition Text" -# rundeck.return_value.get_job_definition.return_value.ok = True -# rundeck.return_value.get_job_definition.return_value.status_code = 200 -# -# get_job_definition = worker.get_job_definition(self.dispatcher, "Prometheus", job_id) -# self.dispatcher.send_markdown.assert_called_once_with("Ripley, Here is the job definition you requested.") -# self.dispatcher.send_snippet.assert_called_once_with("Job Definition Text") -# self.assertEqual(get_job_definition, "succeeded") -# -# # Get Job Executions -# @patch("nautobot_chatops_extension_rundeck.worker._get_job") -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_get_job_exec_success_no_job(self, rundeck, get_job): # pylint: disable=unused-argument -# """Test `get_job_executions` without specifying job.""" -# -# get_job.return_value = "cc2d5f73-0479-4601-9986-f759ea87f18b" -# -# get_job_executions = worker.get_job_executions(self.dispatcher, "Prometheus") -# self.assertEqual(get_job_executions, "cc2d5f73-0479-4601-9986-f759ea87f18b") -# -# @patch("nautobot_chatops_extension_rundeck.worker._get_project") -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_get_job_exec_success_no_project(self, rundeck, get_project): # pylint: disable=unused-argument -# """Test `get_job_executions` without specifying job.""" -# -# get_project.return_value = "Prometheus" -# -# get_job_executions = worker.get_job_executions(self.dispatcher) -# self.assertEqual(get_job_executions, "Prometheus") -# -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_get_job_exec_success_no_status(self, rundeck): # pylint: disable=unused-argument -# """Test `get_job_executions` without status, prompt from menu.""" -# -# job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" -# project = "Prometheus" -# -# get_job_executions = worker.get_job_executions(self.dispatcher, project, job_id) -# self.dispatcher.prompt_from_menu.assert_called_once_with( -# "rundeck get-job-executions Prometheus cc2d5f73-0479-4601-9986-f759ea87f18b", -# "Select status", -# [ -# ("All", "all"), -# ("Succeeded", "succeeded"), -# ("Failed", "failed"), -# ("Aborted", "aborted"), -# ("Running", "running"), -# ], -# ) -# self.assertFalse(get_job_executions) -# -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_get_job_exec_success_all_params_success_all(self, rundeck): # pylint: disable=unused-argument -# """Test `get_job_executions` with all params success.""" -# -# job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" -# project = "Prometheus" -# -# rundeck.return_value.get_job_executions = MagicMock() -# rundeck.return_value.get_job_executions.return_value.json.return_value = self.jobs_exec_json -# rundeck.return_value.get_job_executions.return_value.ok = True -# rundeck.return_value.get_job_executions.return_value.status_code = 200 -# -# get_job_executions = worker.get_job_executions(self.dispatcher, project, job_id, "all") -# self.assertTrue(get_job_executions, "Prometheus") -# self.dispatcher.send_markdown.assert_called_once_with( -# "Ripley, Here is the list of job executions you requested." -# ) -# self.dispatcher.send_large_table.assert_called_once_with( -# ["Permalink", "Status", "User", "Date Started"], -# [ -# ( -# "http://ec2-52-53-205-88.us-west-1.compute.amazonaws.com/project/Prometheus/execution/show/2", -# "succeeded", -# "admin", -# datetime.date(2021, 10, 16), -# ), -# ( -# "http://ec2-52-53-205-88.us-west-1.compute.amazonaws.com/project/Prometheus/execution/show/1", -# "succeeded", -# "admin", -# datetime.date(2021, 10, 14), -# ), -# ], -# ) -# -# @patch("nautobot_chatops_extension_rundeck.worker.Rundeck") -# def test_get_job_exec_success_all_params_success(self, rundeck): # pylint: disable=unused-argument -# """Test `get_job_executions` without all as status.""" -# -# job_id = "cc2d5f73-0479-4601-9986-f759ea87f18b" -# project = "Prometheus" -# -# rundeck.return_value.get_job_executions = MagicMock() -# rundeck.return_value.get_job_executions.return_value.json.return_value = self.jobs_exec_json -# rundeck.return_value.get_job_executions.return_value.ok = True -# rundeck.return_value.get_job_executions.return_value.status_code = 200 -# -# get_job_executions = worker.get_job_executions(self.dispatcher, project, job_id, "succeeded") -# self.assertTrue(get_job_executions, "Prometheus") -# self.dispatcher.send_large_table.assert_called_once_with( -# ["Permalink", "Status", "User", "Date Started"], -# [ -# ( -# "http://ec2-52-53-205-88.us-west-1.compute.amazonaws.com/project/Prometheus/execution/show/2", -# "succeeded", -# "admin", -# datetime.date(2021, 10, 16), -# ), -# ( -# "http://ec2-52-53-205-88.us-west-1.compute.amazonaws.com/project/Prometheus/execution/show/1", -# "succeeded", -# "admin", -# datetime.date(2021, 10, 14), -# ), -# ], -# ) diff --git a/nautobot_chatops/tests/nso/__init__.py b/nautobot_chatops/tests/nso/__init__.py new file mode 100644 index 00000000..351ad7ce --- /dev/null +++ b/nautobot_chatops/tests/nso/__init__.py @@ -0,0 +1 @@ +"""Unit tests for nautobot_chatops.integrations.nso plugin.""" diff --git a/nautobot_chatops/integrations/nso/tests/fixtures/compare_config_responses.json b/nautobot_chatops/tests/nso/fixtures/compare_config_responses.json similarity index 100% rename from nautobot_chatops/integrations/nso/tests/fixtures/compare_config_responses.json rename to nautobot_chatops/tests/nso/fixtures/compare_config_responses.json diff --git a/nautobot_chatops/integrations/nso/tests/fixtures/connect_device_responses.json b/nautobot_chatops/tests/nso/fixtures/connect_device_responses.json similarity index 100% rename from nautobot_chatops/integrations/nso/tests/fixtures/connect_device_responses.json rename to nautobot_chatops/tests/nso/fixtures/connect_device_responses.json diff --git a/nautobot_chatops/integrations/nso/tests/fixtures/live_status_responses.json b/nautobot_chatops/tests/nso/fixtures/live_status_responses.json similarity index 100% rename from nautobot_chatops/integrations/nso/tests/fixtures/live_status_responses.json rename to nautobot_chatops/tests/nso/fixtures/live_status_responses.json diff --git a/nautobot_chatops/integrations/nso/tests/fixtures/ping_device_responses.json b/nautobot_chatops/tests/nso/fixtures/ping_device_responses.json similarity index 100% rename from nautobot_chatops/integrations/nso/tests/fixtures/ping_device_responses.json rename to nautobot_chatops/tests/nso/fixtures/ping_device_responses.json diff --git a/nautobot_chatops/integrations/nso/tests/fixtures/sync_from_responses.json b/nautobot_chatops/tests/nso/fixtures/sync_from_responses.json similarity index 100% rename from nautobot_chatops/integrations/nso/tests/fixtures/sync_from_responses.json rename to nautobot_chatops/tests/nso/fixtures/sync_from_responses.json diff --git a/nautobot_chatops/integrations/nso/tests/fixtures/sync_status_responses.json b/nautobot_chatops/tests/nso/fixtures/sync_status_responses.json similarity index 100% rename from nautobot_chatops/integrations/nso/tests/fixtures/sync_status_responses.json rename to nautobot_chatops/tests/nso/fixtures/sync_status_responses.json diff --git a/nautobot_chatops/integrations/nso/tests/fixtures/sync_to_responses.json b/nautobot_chatops/tests/nso/fixtures/sync_to_responses.json similarity index 100% rename from nautobot_chatops/integrations/nso/tests/fixtures/sync_to_responses.json rename to nautobot_chatops/tests/nso/fixtures/sync_to_responses.json diff --git a/nautobot_chatops/integrations/nso/tests/test_nso.py b/nautobot_chatops/tests/nso/test_nso.py similarity index 96% rename from nautobot_chatops/integrations/nso/tests/test_nso.py rename to nautobot_chatops/tests/nso/test_nso.py index 2523d1c2..007c5fe8 100644 --- a/nautobot_chatops/integrations/nso/tests/test_nso.py +++ b/nautobot_chatops/tests/nso/test_nso.py @@ -6,8 +6,8 @@ import responses from django.test import SimpleTestCase -from nautobot_plugin_chatops_nso.nso import NSOClient as nso -from nautobot_plugin_chatops_nso.exceptions import CommunicationError, DeviceNotFound, DeviceNotSupported, DeviceLocked +from nautobot_chatops.integrations.nso.nso import NSOClient as nso +from nautobot_chatops.integrations.nso.exceptions import CommunicationError, DeviceNotFound, DeviceNotSupported, DeviceLocked HERE = path.abspath(path.dirname(__file__)) From d21cb93c008a7348e7c1d7c0f37d48cedf41b931 Mon Sep 17 00:00:00 2001 From: Sergey Romanyuk Date: Thu, 4 Jan 2024 18:20:23 -0500 Subject: [PATCH 63/93] Apply formatting --- .../migrations/0008_auto_20231228_2231.py | 45 ++++++++++++------- nautobot_chatops/tests/nso/test_nso.py | 7 ++- 2 files changed, 34 insertions(+), 18 deletions(-) diff --git a/nautobot_chatops/migrations/0008_auto_20231228_2231.py b/nautobot_chatops/migrations/0008_auto_20231228_2231.py index b64f46b3..77d144b0 100644 --- a/nautobot_chatops/migrations/0008_auto_20231228_2231.py +++ b/nautobot_chatops/migrations/0008_auto_20231228_2231.py @@ -9,33 +9,44 @@ class Migration(migrations.Migration): - dependencies = [ - ('dcim', '0049_remove_slugs_and_change_device_primary_ip_fields'), - ('extras', '0098_rename_data_jobresult_result'), - ('nautobot_chatops', '0007_account_link'), + ("dcim", "0049_remove_slugs_and_change_device_primary_ip_fields"), + ("extras", "0098_rename_data_jobresult_result"), + ("nautobot_chatops", "0007_account_link"), ] operations = [ migrations.CreateModel( - name='CommandFilter', + name="CommandFilter", 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)), - ('command', models.CharField(max_length=200)), - ('platform', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='dcim.platform')), - ('role', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='extras.role')), - ('tags', nautobot.core.models.fields.TagsField(through='extras.TaggedItem', to='extras.Tag')), + ( + "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), + ), + ("command", models.CharField(max_length=200)), + ("platform", models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to="dcim.platform")), + ("role", models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to="extras.role")), + ("tags", nautobot.core.models.fields.TagsField(through="extras.TaggedItem", to="extras.Tag")), ], options={ - 'ordering': ['command', 'role', 'platform'], + "ordering": ["command", "role", "platform"], }, - bases=(models.Model, nautobot.extras.models.mixins.DynamicGroupMixin, nautobot.extras.models.mixins.NotesMixin), + bases=( + models.Model, + nautobot.extras.models.mixins.DynamicGroupMixin, + nautobot.extras.models.mixins.NotesMixin, + ), ), migrations.AddConstraint( - model_name='commandfilter', - constraint=models.UniqueConstraint(fields=('command', 'role', 'platform'), name='unique command filter'), + model_name="commandfilter", + constraint=models.UniqueConstraint(fields=("command", "role", "platform"), name="unique command filter"), ), ] diff --git a/nautobot_chatops/tests/nso/test_nso.py b/nautobot_chatops/tests/nso/test_nso.py index 007c5fe8..a8da889c 100644 --- a/nautobot_chatops/tests/nso/test_nso.py +++ b/nautobot_chatops/tests/nso/test_nso.py @@ -7,7 +7,12 @@ from django.test import SimpleTestCase from nautobot_chatops.integrations.nso.nso import NSOClient as nso -from nautobot_chatops.integrations.nso.exceptions import CommunicationError, DeviceNotFound, DeviceNotSupported, DeviceLocked +from nautobot_chatops.integrations.nso.exceptions import ( + CommunicationError, + DeviceNotFound, + DeviceNotSupported, + DeviceLocked, +) HERE = path.abspath(path.dirname(__file__)) From 9f449ec0b42a002068626310dbe4d87d781fee1e Mon Sep 17 00:00:00 2001 From: Sergey Romanyuk Date: Thu, 4 Jan 2024 18:22:21 -0500 Subject: [PATCH 64/93] Make NSO integration compatible with Nautobot 2.0 --- .../integrations/nso/exceptions.py | 2 +- nautobot_chatops/integrations/nso/forms.py | 12 ++--- .../integrations/nso/jinja_filters.py | 4 +- nautobot_chatops/integrations/nso/models.py | 11 +++-- .../integrations/nso/navigation.py | 49 +++++-------------- nautobot_chatops/integrations/nso/tables.py | 14 +++--- nautobot_chatops/integrations/nso/urls.py | 10 ++-- nautobot_chatops/integrations/nso/views.py | 37 ++++++-------- 8 files changed, 55 insertions(+), 84 deletions(-) diff --git a/nautobot_chatops/integrations/nso/exceptions.py b/nautobot_chatops/integrations/nso/exceptions.py index fdbbfe18..dd637295 100644 --- a/nautobot_chatops/integrations/nso/exceptions.py +++ b/nautobot_chatops/integrations/nso/exceptions.py @@ -1,4 +1,4 @@ -"""Custom Exceptions for the nautobot_plugin_chatops_nso plugin.""" +"""Custom Exceptions for the nautobot_chatops.integrations.nso plugin.""" class CommunicationError(Exception): diff --git a/nautobot_chatops/integrations/nso/forms.py b/nautobot_chatops/integrations/nso/forms.py index 8951f1ae..721198dc 100644 --- a/nautobot_chatops/integrations/nso/forms.py +++ b/nautobot_chatops/integrations/nso/forms.py @@ -1,10 +1,10 @@ """Forms for Nautobot.""" from django.forms import ModelForm, CharField -from nautobot.utilities.forms import BootstrapMixin -from nautobot.dcim.models.devices import Platform, DeviceRole -from nautobot.utilities.forms import DynamicModelChoiceField -from nautobot_plugin_chatops_nso.models import CommandFilter +from nautobot.core.forms import BootstrapMixin, DynamicModelChoiceField +from nautobot.dcim.models.devices import Platform +from nautobot.extras.models import Role +from nautobot_chatops.integrations.nso.models import CommandFilter class CommandFilterForm(BootstrapMixin, ModelForm): @@ -13,7 +13,7 @@ class CommandFilterForm(BootstrapMixin, ModelForm): command = CharField( max_length=200, help_text=" Supports Regular Expression." ) - device_role = DynamicModelChoiceField(queryset=DeviceRole.objects.all()) + role = DynamicModelChoiceField(queryset=Role.objects.all()) platform = DynamicModelChoiceField( queryset=Platform.objects.all(), ) @@ -23,4 +23,4 @@ class Meta: model = CommandFilter - fields = ("command", "device_role", "platform") + fields = ("command", "role", "platform") diff --git a/nautobot_chatops/integrations/nso/jinja_filters.py b/nautobot_chatops/integrations/nso/jinja_filters.py index cfc6000d..50688bf0 100644 --- a/nautobot_chatops/integrations/nso/jinja_filters.py +++ b/nautobot_chatops/integrations/nso/jinja_filters.py @@ -1,6 +1,6 @@ -"""Custom filters for nautobot_plugin_chatops_nso.""" +"""Custom filters for nautobot_chatops.integrations.nso.""" from django_jinja import library -from nautobot_plugin_chatops_nso.nso import NSOClient +from nautobot_chatops.integrations.nso.nso import NSOClient @library.filter diff --git a/nautobot_chatops/integrations/nso/models.py b/nautobot_chatops/integrations/nso/models.py index 2859ee1c..89a49e67 100644 --- a/nautobot_chatops/integrations/nso/models.py +++ b/nautobot_chatops/integrations/nso/models.py @@ -1,20 +1,21 @@ """Django models for recording user interactions with Nautobot.""" from django.db import models -from nautobot.core.models import BaseModel +from nautobot.core.models.generics import PrimaryModel -class CommandFilter(BaseModel): +class CommandFilter(PrimaryModel): """An allowed command tied to a given object.""" command = models.CharField(max_length=200, help_text="Standard regex supported.") - device_role = models.ForeignKey(to="extras.Role", on_delete=models.CASCADE) + role = models.ForeignKey(to="extras.Role", on_delete=models.CASCADE) platform = models.ForeignKey(to="dcim.Platform", on_delete=models.CASCADE) def __str__(self): """String representation of an CommandFilter.""" - return f'cmd: "{self.command}; on: {self.device_role}:{self.platform}' + return f'cmd: "{self.command}; on: {self.role}:{self.platform}' class Meta: """Meta-attributes of an CommandFilter.""" - ordering = ["command", "device_role", "platform"] + ordering = ["command", "role", "platform"] + constraints = [models.UniqueConstraint(fields=["command", "role", "platform"], name="unique command filter")] diff --git a/nautobot_chatops/integrations/nso/navigation.py b/nautobot_chatops/integrations/nso/navigation.py index 5cf411ad..dc84a3d4 100644 --- a/nautobot_chatops/integrations/nso/navigation.py +++ b/nautobot_chatops/integrations/nso/navigation.py @@ -1,41 +1,16 @@ -"""Custom navigation options for the nautobot_plugin_chatops_nso plugin.""" -from nautobot.core.apps import NavMenuTab, NavMenuGroup, NavMenuItem, NavMenuButton -from nautobot.utilities.choices import ButtonColorChoices +"""Custom navigation options for the nautobot_chatops.integrations.nso plugin.""" +from nautobot.apps.ui import NavMenuAddButton, NavMenuItem -menu_items = ( - NavMenuTab( - name="Plugins", - groups=( - NavMenuGroup( - name="NSO ChatOps", - weight=200, - items=( - NavMenuItem( - link="plugins:nautobot_plugin_chatops_nso:commandfilter_list", - name="Command Filters", - permissions=[ - "nautobot_plugin_chatops_nso.view_commandfilter", - ], - buttons=( - NavMenuButton( - link="plugins:nautobot_plugin_chatops_nso:commandfilter_add", - title="Command Filter", - icon_class="mdi mdi-plus-thick", - button_class=ButtonColorChoices.GREEN, - permissions=[ - "nautobot_plugin_chatops_nso.add_commandfilter", - ], - ), - ), - ), - NavMenuItem( - link="plugins:nautobot_plugin_chatops_nso:nso_page", - name="NSO Instance Link", - permissions=[], - buttons=(), - ), - ), +items = [ + NavMenuItem( + link="plugins:nautobot_chatops:commandfilter_list", + permissions=["nautobot_chatops.view_commandfilter"], + name="NSO Command Filter", + buttons=( + NavMenuAddButton( + link="plugins:nautobot_chatops:commandfilter_add", + permissions=["nautobot_chatops.add_commandfilter"], ), ), ), -) +] diff --git a/nautobot_chatops/integrations/nso/tables.py b/nautobot_chatops/integrations/nso/tables.py index 9f810d3b..ecaf466b 100644 --- a/nautobot_chatops/integrations/nso/tables.py +++ b/nautobot_chatops/integrations/nso/tables.py @@ -1,23 +1,23 @@ """Django table classes for Nautobot.""" import django_tables2 as tables from django_tables2 import TemplateColumn -from nautobot.utilities.tables import BaseTable, ColoredLabelColumn -from nautobot_plugin_chatops_nso.models import CommandFilter +from nautobot.core.tables import BaseTable, ColoredLabelColumn +from nautobot_chatops.integrations.nso.models import CommandFilter def _action_template(view: str) -> str: return f""" - - - """ @@ -32,7 +32,7 @@ class CommandFilterTable(BaseTable): verbose_name="Command Regex", ) - device_role = ColoredLabelColumn(linkify=True, verbose_name="Role") + role = ColoredLabelColumn(linkify=True, verbose_name="Role") platform = tables.Column(linkify=True, verbose_name="Platform") @@ -46,4 +46,4 @@ class Meta(BaseTable.Meta): # pylint: disable=too-few-public-methods """Meta for class PanelViewTable.""" model = CommandFilter - fields = ("command", "device_role", "platform") + fields = ("command", "role", "platform") diff --git a/nautobot_chatops/integrations/nso/urls.py b/nautobot_chatops/integrations/nso/urls.py index f8de5896..257e50b8 100644 --- a/nautobot_chatops/integrations/nso/urls.py +++ b/nautobot_chatops/integrations/nso/urls.py @@ -1,9 +1,9 @@ -"""Django urlpatterns declaration for nautobot_plugin_chatops_nso plugin.""" +"""Django urlpatterns declaration for nautobot_chatops.integrations.nso plugin.""" from django.urls import path from nautobot.extras.views import ObjectChangeLogView -from nautobot_plugin_chatops_nso.models import CommandFilter -from nautobot_plugin_chatops_nso.views import ( - CiscoNSOView, +from nautobot_chatops.integrations.nso.models import CommandFilter +from nautobot_chatops.integrations.nso.views import ( + CommandFilterView, CommandFilterListView, CommandFiltersCreateView, CommandFiltersUpdateView, @@ -11,7 +11,6 @@ ) urlpatterns = [ - path("nso/", CiscoNSOView.as_view(), name="nso_page"), path("command-filter/", CommandFilterListView.as_view(), name="commandfilter_list"), path( "command-filter//changelog/", @@ -22,4 +21,5 @@ path("command-filter/add/", CommandFiltersCreateView.as_view(), name="commandfilter_add"), path("command-filter//edit/", CommandFiltersUpdateView.as_view(), name="commandfilter_update"), path("command-filter//delete/", CommandFiltersDeleteView.as_view(), name="commandfilter_delete"), + path("command-filter//", CommandFilterView.as_view(), name="commandfilter"), ] diff --git a/nautobot_chatops/integrations/nso/views.py b/nautobot_chatops/integrations/nso/views.py index b528a3e1..5e58afee 100644 --- a/nautobot_chatops/integrations/nso/views.py +++ b/nautobot_chatops/integrations/nso/views.py @@ -1,25 +1,14 @@ -"""Views module for the nautobot_plugin_chatops_nso plugin. +"""Views module for the nautobot_chatops.integrations.nso plugin. The views implemented in this module act as endpoints for various chat platforms to send requests and notifications to. """ -from django.views import View -from django.shortcuts import redirect from django.contrib.auth.mixins import PermissionRequiredMixin -from nautobot.core.views.generic import ObjectListView, ObjectEditView, ObjectDeleteView -from nautobot_plugin_chatops_nso.nso import PLUGIN_SETTINGS -from nautobot_plugin_chatops_nso.tables import CommandFilterTable -from nautobot_plugin_chatops_nso.models import CommandFilter -from nautobot_plugin_chatops_nso.forms import CommandFilterForm - - -class CiscoNSOView(View): - """View for redirecting to the Cisco NSO pages.""" - - def get(self, request, *args, **kwargs): - """Get request for the redirect.""" - return redirect(PLUGIN_SETTINGS.get("nso_url")) +from nautobot.core.views.generic import ObjectListView, ObjectEditView, ObjectDeleteView, ObjectView +from nautobot_chatops.integrations.nso.tables import CommandFilterTable +from nautobot_chatops.integrations.nso.models import CommandFilter +from nautobot_chatops.integrations.nso.forms import CommandFilterForm class CommandFilterListView(ObjectListView): @@ -30,25 +19,31 @@ class CommandFilterListView(ObjectListView): action_buttons = ("add", "export") +class CommandFilterView(ObjectView): + """View for command filter details.""" + + queryset = CommandFilter.objects.all() + template_name = "nautobot_chatops_nso/commandfilter.html" + + class CommandFiltersCreateView(PermissionRequiredMixin, ObjectEditView): """View for creating a new command filter.""" - permission_required = "nautobot_plugin_chatops_nso.add_commandfilter" + permission_required = "nautobot_chatops.add_commandfilter" model = CommandFilter queryset = CommandFilter.objects.all() model_form = CommandFilterForm - default_return_url = "plugins:nautobot_plugin_chatops_nso:commandfilter_list" class CommandFiltersUpdateView(CommandFiltersCreateView): """View for editing an existing command filter.""" - permission_required = "nautobot_plugin_chatops_nso.change_commandfilter" + permission_required = "nautobot_chatops.change_commandfilter" class CommandFiltersDeleteView(PermissionRequiredMixin, ObjectDeleteView): """View for deleting a single command filter record.""" queryset = CommandFilter.objects.all() - permission_required = "nautobot_plugin_chatops_nso.delete_commandfilter" - default_return_url = "plugins:nautobot_plugin_chatops_nso:commandfilter_list" + permission_required = "nautobot_chatops.delete_commandfilter" + default_return_url = "plugins:nautobot_chatops:commandfilter_list" From 6ed4759d515f4e2474251f5aa4cd65e3320a0cfa Mon Sep 17 00:00:00 2001 From: Sergey Romanyuk Date: Thu, 4 Jan 2024 18:22:56 -0500 Subject: [PATCH 65/93] Add NSO integration urls and navigation --- nautobot_chatops/navigation.py | 6 ++++++ nautobot_chatops/urls.py | 14 ++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/nautobot_chatops/navigation.py b/nautobot_chatops/navigation.py index 3bd9ec7b..95faa4ab 100644 --- a/nautobot_chatops/navigation.py +++ b/nautobot_chatops/navigation.py @@ -8,6 +8,11 @@ else: grafana_items = () +if get_app_settings_or_config("nautobot_chatops", "enable_nso"): + from .integrations.nso.navigation import items as nso_items +else: + nso_items = () + items = [ NavMenuItem( @@ -49,6 +54,7 @@ permissions=["nautobot_chatops.view_commandlog"], ), *grafana_items, + *nso_items, ] menu_items = ( diff --git a/nautobot_chatops/urls.py b/nautobot_chatops/urls.py index 8da8f0ac..3da62af0 100644 --- a/nautobot_chatops/urls.py +++ b/nautobot_chatops/urls.py @@ -36,6 +36,19 @@ logger = logging.getLogger(__name__) logger.warning("Grafana ChatOps integration is not available.", exc_info=True) +if get_app_settings_or_config("nautobot_chatops", "enable_nso"): + try: + from nautobot_chatops.integrations.nso.urls import urlpatterns as nso_urlpatterns + # pylint: disable-next=broad-except + except Exception: + nso_urlpatterns = [] + logger = logging.getLogger(__name__) + logger.warning("NSO ChatOps integration is not available.", exc_info=True) +else: + nso_urlpatterns = [] + logger = logging.getLogger(__name__) + logger.warning("NSO ChatOps integration is not enabled.", exc_info=True) + urlpatterns = [ path("", CommandLogListView.as_view(), name="commandlog_list"), path( @@ -100,4 +113,5 @@ kwargs={"model": ChatOpsAccountLink}, ), *grafana_urlpatterns, + *nso_urlpatterns, ] From db018a09b93a7ff3ea076f6b62c21a8685adb6f7 Mon Sep 17 00:00:00 2001 From: Sergey Romanyuk Date: Thu, 4 Jan 2024 22:57:25 -0500 Subject: [PATCH 66/93] Add nso integration documentation --- docs/admin/install.md | 1 + docs/user/app_getting_started.md | 1 + mkdocs.yml | 2 ++ 3 files changed, 4 insertions(+) diff --git a/docs/admin/install.md b/docs/admin/install.md index a432d036..65135f8b 100644 --- a/docs/admin/install.md +++ b/docs/admin/install.md @@ -154,4 +154,5 @@ Set up integrations using the specific guides: - [Grafana](./integrations/grafana.md) - [IPFabric](./integrations/ipfabric.md) - [Cisco Meraki](./integrations/meraki.md) +- [Cisco NSO](./integrations/nso.md) - [Palo Alto Panorama](./integrations/panorama.md) diff --git a/docs/user/app_getting_started.md b/docs/user/app_getting_started.md index 89bb62ed..f6c519b3 100644 --- a/docs/user/app_getting_started.md +++ b/docs/user/app_getting_started.md @@ -58,4 +58,5 @@ The `nautobot-chatops` package includes multiple integrations. Each integration - [Grafana](./integrations/grafana.md) - [IPFabric](./integrations/ipfabric.md) - [Cisco Meraki](./integrations/meraki.md) +- [Cisco NSO](./integrations/nso.md) - [Palo Alto Panorama](./integrations/panorama.md) diff --git a/mkdocs.yml b/mkdocs.yml index 804d4f31..e6178f7b 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -111,6 +111,7 @@ nav: - "user/integrations/ipfabric.md" - "user/integrations/meraki.md" - "user/integrations/panorama.md" + - "user/integrations/nso.md" - Administrator Guide: - Install and Configure: "admin/install.md" - Platforms: @@ -126,6 +127,7 @@ nav: - "admin/integrations/ipfabric.md" - "admin/integrations/meraki.md" - "admin/integrations/panorama.md" + - "admin/integrations/nso.md" - Upgrade: "admin/upgrade.md" - Uninstall: "admin/uninstall.md" - Compatibility Matrix: "admin/compatibility_matrix.md" From ed502fd1179cc528b9eed0e31b2c15761f105096 Mon Sep 17 00:00:00 2001 From: Sergey Romanyuk Date: Fri, 5 Jan 2024 11:15:03 -0500 Subject: [PATCH 67/93] Add nso integration docs --- docs/admin/integrations/nso_setup.md | 63 ++++++++++++++++++++++++++++ docs/user/nso_commands.md | 31 ++++++++++++++ 2 files changed, 94 insertions(+) create mode 100644 docs/admin/integrations/nso_setup.md create mode 100644 docs/user/nso_commands.md diff --git a/docs/admin/integrations/nso_setup.md b/docs/admin/integrations/nso_setup.md new file mode 100644 index 00000000..fce841d6 --- /dev/null +++ b/docs/admin/integrations/nso_setup.md @@ -0,0 +1,63 @@ +# Cisco NSO Integration Setup + +This guide will walk you through steps to set up Cisco NSO integration with the `nautobot_chatops` App. + +## Prerequisites + +Before configuring the integration, please ensure the following: + +- `nautobot-chatops` App was installed. + ```shell + pip install nautobot-chatops + ``` +- `nautobot-chatops` App is set up with at least one [enabled chat platform](./index.md#chat-platforms-configuration) and [tested](./index.md#test-your-chatbot). +- [Cisco NSO](https://developer.cisco.com/docs/nso-guides-6.2/#!installation/installation) application installed and configured. + +## Command Setup + +Create a top-level command named `nso` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./index.md#chat-platforms-configuration). + +## Configuration + +You must define the following values in your `nautobot_config.py` file: + +| Configuration Setting | Mandatory? | Default | Notes | Available on Admin Config | +| --------------------- | ---------- | ------- | ----- | ------------------------- | +| `enable_nso` | **Yes** | False | Enable Cisco NSO integration. | Yes | +| `nso_url` | **Yes** | | Base url that the Cisco NSO application is hosted at. | No | +| `nso_username` | **Yes** | | Cisco NSO username. | No | +| `nso_password` | **Yes** | | Cisco NSO password. | No | +| `nso_request_timeout` | | 60 | Timeout of the API request to Cisco NSO. | No | + +Below is an example snippet from `development/nautobot_config.py` that demonstrates how to enable and configure Cisco NSO integration: + +```python +PLUGINS = ["nautobot_chatops"] + +PLUGINS_CONFIG = { + "nautobot_chatops": { + ... + "enable_nso": True, + "nso_url": os.environ.get("NSO_URL"), + "nso_username": os.environ.get("NSO_USERNAME"), + "nso_password": os.environ.get("NSO_PASSWORD"), + "nso_request_timeout": os.environ.get("NSO_REQUEST_TIMEOUT", 60), + } +} +``` + +## Command Filters + +To use the remote command capabilities of NSO Plugin, a command filter needs to be defined. Command filter consist of command regex, device role, and device platform. + +![Add a new command filter](../../images/nso-07.png) +![Command Filters list](../../images/nso-08.png) + +## Computed Fields + +Optionally, a computed field might be created to display NSO status on a device details page. Please note, that it might delay the page load depending on NSO response time. + +![Add a new computed field](../../images/nso-09.png) +![Computed fields list](../../images/nso-10.png) +![Device details 1](../../images/nso-11.png) +![Device details 2](../../images/nso-12.png) \ No newline at end of file diff --git a/docs/user/nso_commands.md b/docs/user/nso_commands.md new file mode 100644 index 00000000..2457ba9f --- /dev/null +++ b/docs/user/nso_commands.md @@ -0,0 +1,31 @@ +# Cisco NSO Chat Commands + +## `/nso` Command + +Interact with Cisco NSO by utilizing the following sub-commands: + +| Command | Arguments | Description | +| ----------------- | ---------------------------------- | --------------------------------------| +| `ping` | `[device-name]` | Ping a device. | +| `connect` | `[device-name]` | Check device connection with NSO. | +| `check-sync` | `[device-name]` `[compare-config]` | Check sync between current device config and stored in NSO. | +| `run-commands` | `[device-name]` `[commands]` | Run commands on a device. | +| `run-command-set` | `[device-name]` `[commands]` | Run predefined set of commands on a device. | + +!!! note + All sub-commands are intended to be used with the `/nso` prefix. + +## Screenshots + +![Commands list](../images/nso-01.png) + +![Ping command](../images/nso-02.png) + +![Check-sync command](../images/nso-03.png) + +![Check-sync command, compare config](../images/nso-04.png) + +![Run remote commands](../images/nso-05.png) + +![Run remote commands result](../images/nso-06.png) + From e53bdee80665794aaa1f566bc22f3be39599e6ce Mon Sep 17 00:00:00 2001 From: Sergey Romanyuk Date: Fri, 5 Jan 2024 13:18:59 -0500 Subject: [PATCH 68/93] Add responses dev dependency --- pyproject.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/pyproject.toml b/pyproject.toml index 3b144f25..4f4a85fd 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -94,6 +94,7 @@ ruff = "*" toml = "*" towncrier = "~23.6.0" yamllint = "*" +responses = "^0.24.0" [tool.poetry.extras] all = [ From 3ebe8f227ac2f0df20495f443ec63d505f99d323 Mon Sep 17 00:00:00 2001 From: Sergey Romanyuk Date: Fri, 5 Jan 2024 15:01:06 -0500 Subject: [PATCH 69/93] Fix pylint warning --- nautobot_chatops/tests/nso/test_nso.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/nautobot_chatops/tests/nso/test_nso.py b/nautobot_chatops/tests/nso/test_nso.py index a8da889c..995a787f 100644 --- a/nautobot_chatops/tests/nso/test_nso.py +++ b/nautobot_chatops/tests/nso/test_nso.py @@ -18,15 +18,15 @@ HERE = path.abspath(path.dirname(__file__)) -def load_api_calls(responses, fixture): +def load_api_calls(_responses, fixture): """Load the API calls into memory for mocking.""" with open(f"{HERE}/fixtures/{fixture}.json", "r", encoding="utf-8") as file_: api_calls = json.load(file_) for api_call in api_calls: if api_call["method"] == "GET": - responses.add( - responses.GET, + _responses.add( + _responses.GET, api_call["url"], json=api_call["response_json"], status=api_call["status"], @@ -35,11 +35,11 @@ def load_api_calls(responses, fixture): continue if api_call["method"] == "POST": - responses.add( - responses.POST, + _responses.add( + _responses.POST, api_call["url"], json=api_call["response_json"], - match=[responses.matchers.json_params_matcher(api_call["body"])] if "body" in api_call else [], + match=[_responses.matchers.json_params_matcher(api_call["body"])] if "body" in api_call else [], status=api_call["status"], headers={"Content-Type": "application/yang-data+xml"}, ) From 2d2912d161e9c39daf4ba923eac57740201890f3 Mon Sep 17 00:00:00 2001 From: Sergey Romanyuk Date: Mon, 4 Mar 2024 15:12:53 -0500 Subject: [PATCH 70/93] Update NSO documentation --- .../integrations/{nso_setup.md => nso.md} | 0 docs/images/nso-01.png | Bin 0 -> 119466 bytes docs/images/nso-02.png | Bin 0 -> 67797 bytes docs/images/nso-03.png | Bin 0 -> 65342 bytes docs/images/nso-04.png | Bin 0 -> 189982 bytes docs/images/nso-05.png | Bin 0 -> 67750 bytes docs/images/nso-06.png | Bin 0 -> 208288 bytes docs/images/nso-07.png | Bin 0 -> 122015 bytes docs/images/nso-08.png | Bin 0 -> 83881 bytes docs/images/nso-09.png | Bin 0 -> 226249 bytes docs/images/nso-10.png | Bin 0 -> 69588 bytes docs/images/nso-11.png | Bin 0 -> 180411 bytes docs/images/nso-12.png | Bin 0 -> 182140 bytes .../{nso_commands.md => integrations/nso.md} | 12 ++++++------ 14 files changed, 6 insertions(+), 6 deletions(-) rename docs/admin/integrations/{nso_setup.md => nso.md} (100%) create mode 100644 docs/images/nso-01.png create mode 100644 docs/images/nso-02.png create mode 100644 docs/images/nso-03.png create mode 100644 docs/images/nso-04.png create mode 100644 docs/images/nso-05.png create mode 100644 docs/images/nso-06.png create mode 100644 docs/images/nso-07.png create mode 100644 docs/images/nso-08.png create mode 100644 docs/images/nso-09.png create mode 100644 docs/images/nso-10.png create mode 100644 docs/images/nso-11.png create mode 100644 docs/images/nso-12.png rename docs/user/{nso_commands.md => integrations/nso.md} (77%) diff --git a/docs/admin/integrations/nso_setup.md b/docs/admin/integrations/nso.md similarity index 100% rename from docs/admin/integrations/nso_setup.md rename to docs/admin/integrations/nso.md diff --git a/docs/images/nso-01.png b/docs/images/nso-01.png new file mode 100644 index 0000000000000000000000000000000000000000..11527e30eda7f71502ed8b141bcf90f7b0c6234b GIT binary patch literal 119466 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%0A-)SYP>bchB(d>`(GkZ_92_{6snY)&a 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 Pz@MhNj#{aTMezRtsQ9QY literal 0 HcmV?d00001 diff --git a/docs/images/nso-02.png b/docs/images/nso-02.png new file mode 100644 index 0000000000000000000000000000000000000000..189a680c51d48c184b096ca530a3dd46ebed7412 GIT binary patch literal 67797 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�|(FyUU3oPZq-@^5a{b7Oo6%C?m18FMa%6FT3t2S(>L;KYlhKBBGBwHgdi0_UR z@K_IN9+g`iDa03E0pGA3%fQbY7d0)l<5q7p;|I!sEYh1ESUrrg((|z_K)>lPsp-|; zCnsSba4gs_P3EBwvV+#zhm*4MdA&Qpws>uTp3xIj1Md0MfH5_(7td>;k2?L~{g6&> zOhJ#St$!U`To@zs0Lj};eXw*B>Y&tM2bIAKnu%-1f`1mAohv*Io;YA0rpTK55X<;j zJp2AE4n#KgHosy}gd$^`*J()MYscwEw_rI>#|m#qo#XHfNdczM%(Ej3PD;uw)(%HL zg&i{A-xHY<{*Pw+&WL-P`{ZTrK;EcXz8@Qu+`6(0XD7VaKsh2x@3;Kz0*nw7xIWxc z<&3ojL+SRIdP2X+*!4y#-PFAec~aSf%W!q4kk0Fht!JB%_0nC*o&0umksGNL%mIOd zOAnjHb$>OgRPB+@ojSRH4<4l~gVkG4cn|)H7)_)wlgD{G2k+*Oy-hQ5n*QKTY*cP5zs0{$GzffSc{&TV+@ zqK>O?EGUOx-m$SmtUQDoQ{i5o%_(kFMNlXVTU08I;xIgjWE|E5dTfo{)dsrNdb6o3 z{ksr5_G$}+f?xs}BK&nzem-Hi#b_Q>kUSnnr7iZQ09acqn0<9D)hNq^H+$)T0=yJq zyV_Zb!3%XLQuS7AfKuUzlkF4UBOJoAF?()!XdsgzAN1RdnQzWgt(a+`wxb-9?k0C_ zQqsz>@#~Hm_~+mN0J8WL_(V1jn(>PpzO@9P|hHDAWBH*(Ev> z8EhqdifWGNb*lETfYvPqyGrMRM*!h|8KfDl>fW=Y?bLoQalXfUh`xH8Czn=awcl2V zqcnco7PGcCPmX9z--!?&fkVWg)P~{wG_q$z<#?2icALG+K67AUOUoANgZ&*({OQ1; z-iM^*mLM-m z`QVzzG{h-T!H14u%~KL*xf%K4_#~W@V>$YE9kCBWeW|}R^07e_8DuAF<#o>;$ekiO z1hULE-gcbrN;b|@F8_&S3B7@e3`zSNOED-J+352h!$glJ~4{M@(SyLhk}>WyEiA%)-_U^{hfb!w3OJ(#BAS{!FZy`h#M?-%*EjR6=e)gg!iwTeiEOmrn7_%Y^&>qM6Rt5`=&%00{+vgLynVD@ufe6ayL(vs zo(KA(*eWg%DobOR@`Vm+4=rc%YOH z^60bFJ$40jYNoNrf}fRIAq)Q?#+J>Kn)oK- z%LfG(l*T#xakwvhzFK$kxV#N1 z$RDeb_egzIu5(l>P?EFp;{Di@AHm1>BiomMKJHECg|TGEjX~`nI(?Odw#1cbT5dR$ zTN$55O<>l>GHKjVRuGsV=S=k*43=gfB;6FSYnof91=QB+t#+xO8a39$iTqae2$7?n z1uXk_t07u9sflIAGG(f=k9=1k_{sIR}cAW|sz9d$d4VIEQ_f|czoZUuOh#Ij=W&n${Vv^v! z6b!jB2CMOk(ALc5gvH@ezJ-ipwaT#iLx@z%rI(XHhfFM!jPbHvLteliIKCSTfp<4f zZG_#OqF;xS&Y%LDOZ9@C8LBAxJtcD`P`N6Sr%#~^RIi19?L6$nNpt-b1XR6J2O3tE zZ8oq&7M=w%KX=V&(|Rin1{>o~|0wyPU7@Whk*i*P2Yrg3> zsRxhFp10ogf+mqF`jO5ob`jr0of51w0X=^QW5Y*Iu0{(-9eGg$u-}X-O$PIj_h+2@ z*q({q{F_e%{_VGRve?lHj}+VJpa^M(4Te~aA1KK}-NrO0#&H9`o7;JkoawOq_`_bE zbb`1KC%wgE?^bI%IV=fii(;be@4+F@yA*M7AbbHQ@mI&&&!I1KTJN6i$~^Np-%(ar zyD^NIuKvr8Bo!h}?K!XgVJcFt1 z!Hf(lVtz~i#{H4t8m~qzDWo5u{KKjnu&Y~1xC+?9pT{RIVEFakeM$q(z>i|{<=>pM z%~<6zANu2>V%9v|$~@>n$|F|Y9DkhQLQL6MMhokS^g>!_roq^XxLzfwNi27WZrX^6 zVOczw=*Yd*S-|k*$&&)|_a!>DV{4`qTqDC?j?1Kla~WxF)i!P?yRjT=sdd-EnA6P{ zUMyTTAzJ8Xe3`z2ZFq|q`cno??rQlL9nN=nGw-)to)#-;XlDM9?PN?C_of>d5P+6G?&+)G z1lNZ&w6vW!yHchRUj%fIsoQd8A6ILxJcnjJ(g1^ZqO~`u(~ieN>2KTFlvXfizq8L6 zg-U*zS})VCE>alegcgD{%x@~Q0RaKsi?ny`Z<9;W!N|f72Bf!WR)DC%#qfK*ev4j?`@tF&Z(#pN%bvSKiy~NRZ zqpjSdR^Kv=^;f}gG^?G@S|@26o`M7)J|KH#jB5U{vA`%rGpNjta8rjmH-lq^ zHi+`$^4o(eaE8zC)U$`RDgF&s37R~p0a(Qi2Bw=Lq-INXjJY}e3#+-LD3_18o`w}d z$&*@y^|4Rb^p3bAddnY=-Q8Ml8)Bd>qtA`eonv1igFGQ3V65p z**OxlQV}`x|CM*`(NM2l*ew}^a7>CqgN9J9|4#wOo z7k0;^d>MSSoXX1u8kLle2@5K)BEiG{0-r?w7s6d*rZ?s<(N*L7Wx#LWKb0K`B*$Y2}-w*}RX_F(Pz>$I5^+4z+r)*Zp=?F7G?t z{-%yj;tRBRSEgpLHOEW5ec;?%sVzZ{TdRw!QAarzo%<1bX9%AO>P4M8-kI{~e7yLz z0Fywf`2$X+7d!@Mkk#fcHCc*2Pi_p?oC}Y9+;lUmT5p|N$?g8;fM4vUM~QKof~)BU z@}3Dfl$I3{e17_h?wGD&E6!nLt-mYN+fcEr1$U+ERE)Ia)`bO9yDBI}c+~kML&fVOl_6GJ)!^mtcxY5m0MH=b!6m>* zWoW>&kji};{Q{YVAG2&Bo^u>b8`ymhzScf)KPGmCRlF@nHB8srOzmClN^wjxAREFb z2py}JPb#7ci83&X&!=@CwMu-zS3ANMhrG*;q?zcd4Rw`qHqW%l6sbt*yCL?0W@lIB zFeiHTn7(|bSr)@gafbITMw{7)H2y1;no@;=in3Z&%K>}E=nIxSRLU#7eSHE(A$4zt zl|qozZe1YcwAEmkVrB{XEOlgiik$YpNO)}l4uTo-& z(DKxR7pM_b<-IySnCw~#{=;7cOA@>1A;nBrfcQ7qRKUd;KJODZPUf3cSXipcn#ziF zTJ5F-f{I9=PLuoJI4k%LJQXP(uBo=BB9~t8E*4^=;e0qVvk@w&d>_b z3v#Hsv5>Z3y{LfVqW<_&OI18+>7e*yRBIIj1BWtFUk4SzZ>`(qY;^SwUk}ez5ABl7 zF>5#rIeR-+z~Yp_@z*=|=)t;$tK|{_)Pd91>Y@3vqAXG!6+;U4>}}aBDmBsWkhVT> zd&j*Eyds?WM_!)jaGs0!OeT3Z@l;YvYd#i};X#NOm z#yX+C*fv2o7NJNv0?JWctkQAYp;!oz6v~}9Qb5C)VF#K)@E?sl!&0UGspBm6_1=bU zYLV%_GZE_5AsfrX7|8odD~gc!*u;h#OPEu{>=6sE@uxnP>1D$yAeX7R?d}o9TSuAd zsAj%RgP0;!i4}MK!iU#`;#yam{D;^#EHt~njLPrNY((%~Y7Pr+bbZ?FHyJ~Tnw-Q$ zyR*^>hZtM`y1V(tz%03epR3Q{Kzq%~D`>070BJzp?&a~BkWSKc!&=cBEv>y#D5A-e zOG!EEa{55_op5XhuMw(&2)%EU7=|VySXYltjK<_#r4ZJZi8$B?SbcHEp-Le2{AnS7 zG5;CJCxbQ0*AVEaOJ?4Ww(&dBiMdX#ObrIf13TjtccdpIt$I(Ws$TpyjbocUPj>Uj zfl2-jmGQheHwdQAm*P6Ph(6erh#lqtb`5D_GQ zL22IiMRCrc+OXCfA~{C>4e>B=I@~6SD%)>*(Oc!{(<1L@uB4<3S$duUT=g|hv-lX5 zkq}`HAw=^DLwH|6+kq4TX6L)F1Lh~r!E>_}Fw3{(Slc4m3`eY1o3LGx{J5bf8-X|{ zA)91|u<1H-O&5DKdOQT<0aw$k($j2Mne8DYD!7!1}??*5#tOc-@8 zsoT&B;I_BAAur`4oio7%&22=ysINN1#j;438n5Fo2h>KfVvV)OD6V~F{V{LJ2L`3$ zGXM8cBYW$_lrS-HCWNKqXxA!YW}C#`SKG(;49Od5OOWl|bP{YgQ!_+*r-Co=CN+Ar z+1#0`&Iyzbv?DPfjNlmKqfa+-E2uSE=rd@!Z%GV7awP$giVwkS73$hxR5^2OYg*d1 zI-2kCJ!r1)sfTsF2yBK{|KRiExAEQWQ~sl;Uu5b*JO!UYM^P^7NR(|YI}0>f@Hd-o zBJ^f=67!v;VA!2O8~m~=OR75Txg_awS(M%4$UZctgC_fJGOEUyK`G9hR?^ljheY+C zsAE2NxDg1|GE~KSkFJND)*G*uCA&~bZP3bX7Pm++45?FI*_zWC#lr=`w76>G65T%cLp!gpZ1sab640!+xjRQ$Zqe z^sK6BvJnN;yvRFmp41_Af!S)^RiGLR^|8NHoM#I3Rk&KuZIiGUGx}f1X!}Ay$|0-s zS0Iuy)#+78Pg*@$96TgcWm+xi=uAovRsd%P7MapDw_*>Y=7x~u%!xAiEXJ~wre zXx24-Sx!1|L-elff%1yHA*!JlqGt&N@I-HFG422&7qga?3=MaC(b`acNXLqR6h%Nv0tkX4RZ3_95s}_YAaoExQ8|cI=_sAhYY3tD zCM~oOigZY5A@uyl=WWkz;Zo~1nWNr4;)e{d|dqT<9739ird@6GyzVUpZ*#YqjjSH zi;{+g^5X5s(-o|$=H|{pt-K5J3)p)>$_tLv(PL;Fx%fs`q}l=%#o^85-WLmZZ%ltK z5tn-U7Zb%N6+>Ym(9_n*^TX$!g`O8>bM3txxioY$K7m9`q>z_vo}ifR;`+izOYs`~ z()x{?B@6d!;pTQfGcMja+4EEGmeQSaml-WifBblJshnl(%gJ}mUinA2$Rod9UZ4H` z2|MH%+W6i2hO*`RX74Na%L_MYlK1Y-kPjWttZ(0Wds3QeL)WQuq7bNqdnQOB`Hc3% zGkOYY?^}@m&Q4mcAJ^z^MhnvY2))<%BC1=H?LtY6?ij=T>(|5VUphrp9>^V-D*3<9 zE6uw=kttqU(aU*+iRC-`jJES}rYu>w5Z2s}wwqa_NS^xQ7oQV2T2V*A5<@v_d`U{_ zuUfq;j-rix{2E+?L0sBYcF#z(jjV=LCXG}gjaLqWC|Kyns6--Yoy*rmj}xdw8@ascuH87_tjHQc-=*077wr$a z#3$;VJZ{1DH{|cJehhle2mVIs_^wLvskVUL1@5r53_`~4;GGqjN9VAichlKdB=#<; zG`&fn6>3f@xzziP+d}j)g&B26W1b6BGBY7WXqMyP_B6eDh;#F;t;Z)+sj8H$7oMu- zrC-!mXXRWBrB`~IbuPCr_lcf#KJDncH3edZQ&zi9c`mcf{iKg?(-{Y=Y+xRINs*dQ zomJSfgnsc47Oj}=Iqsc_)%Qkr}MML4#5S%#OyjQemg@rMt$Ow9SYaGA;=C}0$@%dksQpT0Mv zI%2lEy>;t_z!wKPmgjo584pBG#Ln0QqWKgD`NmoN&dW8!pIpd@8&s@$nsD>}pHHB@xCX?6pAyWvLkv;5okLxL~41mg7+Wi;wklKA}jUPOC#Ik-KR4y}*$ zOPOP_>SH)R(Sr$GxUMje3f0gr^uYe{Ch6ToI zE|hx9OeDbIB<`T_oZ=JR5aFii@%uV=T+Lpqzc%|SXnS+@R^n}=`xAUVP&Z?G{+|Mi zH``*m<7Mu88rgmQn3=CLp(oa&vTx`u%ICZl~aP`ETYf^XN3Fipg8#CuE_^M4}bx>MI&3jeHm*eFy8&)upSk ztXNiER_1$V2Fd!FLZ#p4W4piAeS7;YuY14SwcDzjEjCU32m6;#$|^Kj@egt`)8`Ri zGu-s76s&agUr1<6XjK{!qd9aw=Upo@$R5j*%s~`3Jn_$hXC3)7hS2KXGO$Feq_u}+ z$Gt6CV(OFZvlTWHW-j6?QYi|bWObz5)Z66Pl$9~$&eja+S4>fa8e*PE8C0v0;&=+J z^Vo7=+Ro2-vz&_tFvY)k#rZfNbG+er#G!tDh!MrOdvWTbIY%C682jdfHSwd@4i?Ea zruHX|%H6HQw+DW-{I1MH2w*C@_r9>V^^Q738X+fy+(Endc9oW3!nxOk?t2;T8TwUK zl(8C08uc6InLIVrH~IX)R^9yVgWV*F_Q@`Iq-PG1j`PKLkMH7==t++8yW^7MnxYtE zp2~W!!yhU6+#UE_Yz?Rd+sS`+$_x+9}~?!t@DZI+{@snTnY+htQd{8ry=+;*{Z zHGVZ!B2|h^(dl>U59_BEc_|Vs5-Sn~)rVS|azdAbxuB%L z529ZLU$dUC{#87XwubIUH<6)1x(d%5Llrg~KQ*TEZKrRgAEk%ATAm%6-Db)9OXG%= z(xTGBlc^RL3q=c0i`@dK0l@@x)#;KM3%E|jUSmIL-F^{s7lA6#^y9Y1PMlX)c2QPp z<^RH*^In{H^^y^{bcdBY$=!U*u>RqU`ZuVa?MS%|a%E^`^*S;E^+3FosdTZl+;yX- zy9Tn2-wt13yX<%Q3;+2mp;x}gY(2m9eEIO@$+-aMvX^dNJK7)3)D*kD^EK8QMx=w| z(?uB7Ok&1THI)JyPT42fr^N3*+!QZ(h_j}#O6iO1U9u(>W1wjF({e6MGC?w3%0+6= zL2shQbD{NahlZ+@()U|ZBnO?TuV^blj4-LyV1Ddfk^B<-a_kZcd#%3cmiYsDsX#a6 z)P6fvDV1W=IMWn&I9f6A3aPJAvpj{)D?s4))tP$_MFd5U^m>IGwu`!|uj1%oPYE3N zO7BZoa3a5>eLbRDQm_2{`cwL6j4x!vQP}d^)i@Nk+6hN=+udn7{%|b59|iG-RPbuc zmmD|dbdPsO3+Ci6*@dm8j55&q(1kOXGD&b7$eDT^EJWAbf<@JFI~M&a6p()piu2j9 zb<}pm!Fma6>%Z4Ou7P=%d3ojMV42l3`3((<85ut=IrZ8kOS1>KZGGF#+rJx{oz=Iu zlsP=>(Z0HjQ}vUFx38-Y7%fd?yK^k(o8$_I6=|;@jn!6-S8eYP?q}?#F8j(j$QlQT zoy>XXs9BHFtTNnzwjxeM=Gu}Ycd-K4^7z*x8vBLoJ}%O~cT#5bQPhxngeh_jPIODN z#I@ObVPuM@OyvVZeX=&Q7yHHnBG2M@g##SeOSo)MR-Og^gYXhdn?r3(Nz2yHss8HX zne7^P_cx23gEq4(*wU@iZDc)im~@$ds!Q_;+*ZUZ^|mytUXJSK6_P_7K3~pRa_!k> zxYB>+RO=*7F5$Ok!-4eXvX<_lmVj1Int*&knq&$-*)@gTui@x$B=Q?uWH}A`+1bm} zm&c2>=0@oKfv{c;)aCli4I%-zNJ|GMyVaoGhTSOK9h8abJwH*>Su5RActcbZZ<_F1 z|7QREgTmd~g-A?%c=PQHv9MdSew9@BZqKdQP?+)31zo16@MPI$E{K<#BJj{1eV;mH zuK&H>@cs^kM&~TQn-rEJS>>fT+po8jd}W^~?^AqFJWWKa8doH)e!XTCWEewwGROIp z!iAf{@7npWNV>4*frvn5EOol9XP3}Ns>sJHxB73^Rl_v!=%Wf8#q{GAZny6BGQem2 zXl3~Pt%e4LAaH!1;v6Lh1r2aS32b0W&i_7Ep}a>y{jc*>6cpjM6zBf4jV7@F^Z5(d z{`C2eJ@wc36m-C^%fRNHPW4}{XQQpN;bQ%iCMP{V}$Bh8~6*>N1wjjv^LsoL^gscssiMxetY$w+wLT zXyswS=k4g=@+0BYiQbbHd>?W9=kB?8z z?af=6m&z*t*&X-=x@qI#;UXg{3WLE!VB#XqZq}j?q@|@r#U6@2d?*aG5O()*^04q0 zc5=V%a|Vn7e)Qh(q_w}Eh|NY{Bc9awS^XUIJ75_2M|2hjyG?-pa z^uJ#knEuJv85r;$xonlS^ng7eW&irj0^j$5?av*~+6Z_A_92-sLV2urCDy_a4|Xvn?s9z-3&3P-|1dnAQ2Lr{>$5JQ%Yk9@g?HfqIG zFMnihr7q8YmP&kcSG=qDb_{MJD(3gn7@_Y?+;Zx%{9+aI?W1!n3KW$8_|;vbAWgOX zFyOtk+&^Cb(@|7`ub+Ujr>d)gMn+-uS3lYg7z+R6pRuCd0RPx zJqA&^z0fhW5GC(q+5V~2ajI%!e{<><*;W_M?X=h(yDLh(egbLm^O42ZEEEQk&&E)` zumb%81Mf?zxBicJcb-)-NTL3`&D>K~7p>&Sznp3puW`zH6`t<&h=R{UuBWQ$-b0WD z4GL{Q@VydF=lWlDUYl!5yLw|iWwk;jRz25D%HMu=oUVB=5SHkm`>QR>ZZzKrc*-KT z#qNo!;|f3oH?Am&_DvsJ0kH>j&fR8@)EEb|NZzUxLIFUemV=>F2-E_%2y# z(enNSM;yc zJL4MmPf56`rM~Yk?!VDHfc#XuYCly~1UlUtZdmd@^X*2S-(WFp@T+wkFUe4M(k0$lri<+{-Bx73|nov&Z;RtoD8gLP?POf1)Bujkjz_On2r?G)fzn7CyPi;QKh zwq~-c?9a{T9hN@&Cuy1h#?^A+31{NA!~gmQ^*^XSzG0g4tqaK+(YI75YnM~MZ(F^b->6Ib zu_K@*xBZTY$IAY?uMPv|)@s?ZF+Is@*>q_w+5uZPI#y(29V@6`mLy@n#Hy6v(eSp< zc&cg>0*luYF3`?+qB-GO^1pOw7#kl;)PwI2EZ=XU$!Ar7Mo55_ty=+WXtR6(T+YNT z^9J)JeBWzrq zyk{)*JKWKU6eYXX3LDiuvNO(PLvHNQ4Tq&F7u`QM&nf9pQHl4>iE~Gop^P(?tl$^U zJ4{ve1svJN{!tiX>5Bft1VvY=Q#@*a&Aw`v*UO9gw)I$BuTgme4EH>?2oQUL2lq|( zvx-b>hh%CA9*pO?EA*mHf2s29u5V(BizRF)ZyO3n{jVuH-+Gmgg}F4>z&l4X<^IH$ zScQ!WSpV5$$H_;!j@u3n5VJ%6rHq~=4Fq%fa0bqY#n_!E3Ky^CFZO+CGCFWOIFz` zQPjKgycPRR|$;|YKHWUr&VYiB7M#PJKQG4rC)i5@z8mteuK%Y~#cfsM7# zq0fY)xh-$~?L{g)1C;VR*Ud`I2kFDHYeEgPgR0vYDLZwI_L-(w8D|uE)^*ot|Rve)aRMqXkIY^1D@=7{`WB zEy>dE8o?P!PjKVfrWV^K&Yy_{OaTNlS>?D6ACoL;i)8!WECO|SDG>2O6ge&fo52i_ z5*f^Kfdp!@sl1-ZlPR4kPmHF{Pv-u|yA`<zGzvbEB;owlI>qy? z9^s9n{ai?x1c-00!)czlx(}#OzmeA zL6q>Q_G6Uq?(yWKFYTu!=5oQ5{Yo+lXeBgi+ zU;Mleo&98mZ4+HesC#eHAqutAEp$e;!fu^92Nsu(XuR?7wnRaNfhB_M1#dVzvWLWF z*_SeB9xi=%o}3Hk#aAEA_!1@_ba3ew^0F|NNxRM~11qr}bTiVjr2taw_5M5b!06W+ zrkHo)T?mqW*!tihN1w?fSoKVGZ}sxg0wQO-g;{dJgJRW<_jP}l?qJ{-Mrea#y|Z6iseu9JNck- zdc-L^ztvKx)Uh(8B4kilVx1b$4}CZ8z`rl^D;8{*X06M>Cb9!8@;E}nF@C>K3ism< z3$EJTdVS_}t8<_AoTzcdIP2^{n$$oFQgCb_3}3f(se+Hid7|v6uwhB#z87dJN=EQ3 zW8y6s*m5#I1AqRnwz)08Yv1&Ti%4t zuv?RGq#%Ky&yM-ja$6_68}F_JF#EIwAA~Y9mZt@tO*o+zB~40STfN!d5upIBq=#<2 z=PVwO8aH4b2_zq*!Fy4t76oE)F%oZV&HyTVO;Wxwa7&{0`#J?9FmVgg&TIW=6>5@I_RnB#6aINzeBg-uwqI4YyGy5S2uhiIdzYzwu`Y( z!>ecfdRWH_z=1WZFk)U#>UKxPx)XAu6hCiLQ|0Mx21*mN$P_Br$zbj!`hV@G2x7L^=va>yI0J4X(kj4W$U5n?Fpu1HH%n;Pnr*7y?Z^JT+TH-<^5-H}`kw zk65U8eCAwMQ`pvfl;0zcCKz%-EJzb2*ha7GzRPua{a zJG<))KfJ*LamjVhn%M=JQgDt$jJ5p;US{06BcTbZtWNQ8E6(+2MjtFYlD#C7(dAe# zT;JJFynT!F;c_A{V))6HMT>veXTV7m8faLSvKVT8F4=)CbqQJr;fAp6(GJ5<`uuVp z(aurANav-jjTK9Hk{zMK(hs6@F=u&=lIjyZ=+435L4^t@HRIgD7rDUVDMvC?|l=2p{m*bUysWi{01v zHHGzUly=}j$74i<~2>>Qb<|%5qprIwWjw> zS4__Mn6OFFFoJt`FNk?S%6;j+uIS3!zVAo7g@np3e0@QPiRapgC#<7ln{A+ZJua%7f3tKMAI;DLmw&vUuKZV(JPvD{9x1xm9beu4nFIM! z#!(%1(rQmbGcV&@XOs7U;!*ChCgPEfC2aXGS_h^xo(>ad@1!%c^=4c+{>i8eY+LU* zKQdG?aydV;upBB@C=2#@P;Z8UH?V4%z?OB&rbewHcfRdSe1aT<#~aR=G|&7xo}TvO z-SdzYA=wKUYaJX;kWw%2^&R__FX+l+WcHB3b`qZ6XtrH)u;!dBVfyaOeLQK_`ncae z2a{{m5{PIKuhlr3+!a*%@$w}{Xwdt=#lmksD)iIMABAT=`JO0l9oH!>@L9o>E<3PZ z=#>!O%y>>gjso=iuh7j#YUVA8Ft+=KE8Vx{uC9g^F;HoNPTw&Qy+&T^->d76W%9w- zvN^0dqgs*NCFpgX6JKtt(K74+jk2O{@hF|?=c)8O)y*4pyl)syjbc{;3r)Q5so41f z0r9Dka(c{yDWfkO39ax)dR5u(-aQ_Vt?;(qsCiZC)h)n3!Athg|6Q4SuajMFC9|`Q zHMZ*UQ9_pg^XsDn28lF8ZN^EE621&Yn(0C78D^$#t^EpE=7!OfkAIfRlY)QlT=#Mc z{F>LnWyIGX)4b0TPXN3L$0_J6%6t1VELnUbocHbVLfr^sAzQL2V`ENo#f_b<<#F8;*{lJXVSmyEU6xy;W^s%9*sxpB&hyoc zlIL5AGg(n!yogs}Cuu%}wv-rZRyS)Hr(e(}TD;fJ>3oC~tJ}b|F~O|h^Ae{ZJ(SDn zXUOI<5X98H6z4pF%0B$WJ#EM)(Qq;pwtpnnZhIs$LKBpJhaM4XNvK#yfFJuG7ggW# zTo1L<&sSv&nvZ2xt1uHrTC}K;e7H7g5h=Wdf;+hb+ZXV#f(D^QJ#F9P&C+P}^X;Y2 z-1qcw)(h>Z^&XzKe)ELQHO+^Nas^&&UmA;5`q3-Ta5$E@knkJb0 zkgJUXEiK9DCLjWM%Nw{C%{xx&JhvF7=W7moEaA4;6cYJk?(;bugW&3qA?v>bp?tdM z+`ug4lidOT%`Ihex)$k!V3C3;d0bz3TLc=w{B_vh!Pwk^4>7pm2QlWG)&pmm%fS z<@Fs8e=xUs&*o){Wo5UMLesLj_uYKDrJwPpJQwOmP4?2rbrSicoDg~L9wY)%1YiQl zaV2Kvs7W^H?G@jB=`;V+>!(Kr2>#!i(U?{5m*Wa@Gm`p8Pf?>S#NL)0Rq$EzjWo(j z=DeVG^OZp#@87@ZcHhO!d0H7Wx-#xd&;PvS+7sVePM;TtuaIR;6Wn$QC zswjq8f7IlF3bPKtef21K=nSE$YEL$Mrg4?2HFQhHOw^Y<9`0N08k&&m*WGmn6Zb3p zkV=QzCZ@Q?A{p*--KK4FD4MMFf97{!5q@;EGMcaN4vGmZW1fcIr+>SSG^?eahFN+~ z@Ub${&95mI57x#aYtnaKZX2_h(xM6$`m${EW6!3`2Wlf7B{nl7=~NwM4d3o>NaOoM zqZ{ZBX+rx+ySM3E^=Hf0GjXCD%hOr;E zF|XWygx83u<@Ec!Z=7nK8*4Sc2spHI9pnyiSZ>w8CM zYX!yFHgt7S2y(W7p*hgSD%cLMH%wv$R(-Le`Ab+ZMVUyB3d%<>FLZJ-ITsNh(4B54>bzuNQj%&6l zK5|6RS?LZL*$LK1$*KO$`}rvN*KV*kVFu+mlB@HS7 zfoR88MQ5crVtG_gxvYAvmVD;xFa1~NJ6!6@*lvS0DRM*`LRfLh3sb+?Dq)!1%;T@3 zzhg1hOE^tW6Et!eGqN6U3g`MAoVmF@An-p2JWFb)rwDSlJvZ%Uxj}tuP&%I%!V;`E$F* zZa>~ir}k$a8TSvIJ7n`0E1YZ=oJc3yx%7F^&1YesCafZoRjaA%CYtbwXqVxqWwL~t zDgXBB!x?;OsN?%(MtMlWb-(3{9EFW&uiu+|3Hr`U477~ByVVLkOuT35U1d1wQ`3m) z$7K%n3Z^#-;SSF3O-t!bq4V!^IA(S3sOb5cNYq@BI29@AuNS#_SI{CO^|a0~V|Fiy z8hNOH2UrvFP#8LQI-%d^q43so)(Cs(ZTE&cjZbQlTLOXwb z`K{{*+q0p}UTM*%mQw5_Vvi_#ejUr7e*@uuG8oEyoGxwVT^##`mxSOgSBB+;(TRRR zDoW{uDx>%2Uj$sF4kOJm2pFp@8tPTOShVtpSE$6{FDE>9{fa(6JOou3q=_A0)Z0<^ zs?#pUwYg{=dYqd-I$=VQz+{**OyeEFPtBuH{qORt_Jl8o+7)YuU{NLqY5cSu?Edal z*G06M!jgEH;uj;J&JKnJGaet3x`kKb0*SAY0F0V=ek_eoK;#JiRywaFNwN z!qq$M1CP;xHB((3$JHYR$4U0ZUy_6;6iyIG{PvB4Yv5jD`$oXNWw^6r2>=l&u@EOvY3J!HJ+@WR)PlH-nKAmK<~d`)qA8FCARKuHMUx_(*k8ks$6=%L zkXN}g8>ayUdFH0U-h;bxW}sbt1g3=Qb!AU+O)q`j3d;tXC;TG&nw^*P&K(Oqj=MIB zVw|!oHd_rm`p5qJ8xuZuNgWKW5`o%lw`bbI8l}-@IAhhpyEPB5^VUARUJ5!PHh>3| zutDvmbH14hC!x&XN5nEF_#xd?C*i>#IV^Y=-k>_7D_6Bj$Pi&#>8FM&GnzL(tC%@{ zkFSwksNbcnF*_t$LRQs&_LV`fDc8el%QMpzHn@K|uFu=yotC;3@7{lTNxgv&LgnT)gf7usic?J{s?E3${X&(o$5 z$W0CjZ+96gSI2ouwvmD*c)&4>Gdkh#PBUwcf+k>-eEfmvCi{0m>YNt%@P{X$OdCxQ zk##qSGaT{(^(pTC(gGybKmg11)7sC(zfkN6qjntyHS7=kQiPS96jh%M&v`lw z8hHT$?PfIe4VvksFHX6+zb(q?BY=|$Q8cNTj+j-Ezvq05j*L0hFoioDzwOE3c zgQL~x5_vC1D+_*&4Z_FsP5A?sZZi$8CX@g{_WC>Dp7J%{#kmilzzLr>DY?#-e}FUF zPe?%r)|^cT*2Z5x{y^pW`Dr?3-~!b2y8IdF`$M0ye<8u+bK!QxLrG|(&md77lR_77 z3fCEFuLnwI*7ffn(tgVttjPh)I> zD9^H^VSz3VG){CQEWwfdcKN6xj_I75NShCMkqe>)Xm?)!1D(`aRGU_xmez_C;;?xGgfQ8J?Z_JMSeNC z0Rgi)ak&KzJ_tHnKAwr2E+t%np8clTLYcR)uZmAjO~)K zvNgwu8v#4KQ0$_=>~hhEl+|GGjR#@oqMpR!w171u^8lrv!t*k^~;7j}XK-)F>24$_<> ze$p@AePMcmh9=ss?P>(hy_x}0?NH@@oEBq^^W2{MGDT1;eWSKl%M>yp-v1bDTxG`| z)ji`ztr7qt+RJ7hUpkxD7SqjCFeS+EuUtW#?d{|qO-zzsQS|Q8rn2edZyH+Hcd$*v zCQf{I)v43*OK=)G;d_?uCl@+Y1FDH;e|ie2bMGE;HoOTplk%hv%b!7su(W@fNGDOJ z0WwF+0YVatk|dlM)atnKYNnp6L(&hm>WTRy!^2vjD~UPj{9R_O0{2+7esdyEf1zV{ zKY-%K4?{3A%p9iW^_&%wC&()!6;Y@c3P0;o{g;ez$8x`L7Dci(x=*YE5H&kxuiO!D zeb++m?5vuW^TmF8-jr>+^0$PI^n`P600Lzcl7!d@4oTFT951zm7SCn9Gu7S&uHYRT2Gsy=X!cIXIuoK@7F5e1(jx|4VXB^AsQ_-N-wA1ca7M_lQE;DmtNYahDQ|Scw6)v zu_)kIe0=rw1{S=V97>92OYa3AupzEhsi}KzjC5h=+>_1qU*$F3KfXHuK);tEFSkDG`06P~I(1AYPmpxu9$ZKG#&mQ$yc+BPRp*7{REQuc_ z2uEwVJWvR=%E$O;UfV-N3G-fYMhU*i+Igg3ps$fnSA{?8DxNkf(E`-UKn)ALlp%{@ z?Gm@?iA-Z`qD<%Lq*gZSsM{XV+oQfdcV+;XkuP^%jDI7sJI@6tGq$n`8~?Uv z&w*cF>Q7mBexT(E>bhSXI9ug1}?O_Fn>gl7X zR}gx?i*)n(Ccbe6eH_J5uZdX6(J+u5wP}eMfP0_pVxR+^fv3B;vs$~BsDRVhTsMxh z&$xhO-+l^tu_UwibW0=afIsiqbi2kTlTX%$UV}BEjY%Pgk~N&!_ui0hh25y2LA4Vo zu%KQ9oL6Z(JUMFD@JLGw`wBb36M>$$yENb?@gZ{P%ER1+0-kXo`cGosriy>VBmRH| z6F^64#`2z~*m9lkkMS81{UYpmIl)eQrq+GQ&>Ay!a2~V%IB_3B*_f-Jy=1;(t zdF=yRuS(yn8S5PuOqdCGBs|OI!*nn(;BeOH0fbS4z-MV<|O8NKnt;Db-A;v1D1m1WKd zc|4xa7_XL{`_4H03wOxqZp7cfzi;^p{j~G>UH-qLRkJ^#0SfpXrFpkdlu_`Si=-Dy zRo8K${qwHGfG$+4esLI3yzm}J#29`m;L4h<_ksqdV=5U$uuIF=EKKSatv?vr6^SUi z0-G8CFsI-*03wz6hR^W)N^%cvhf$c!H1cy(`7k>JeUu_}e)d8Qi zkpj$*ko+-6<3sH%{g9U|9QU^qbJE1aOyp1ZVweefk{PzccdN)}P-s-wm0LG_>;1d- z0Z;Kpz*3^MVPu@}JooEqTLPLC3?w&nF>mDXAj9&kxC_N}skbM}mut-GZu!5;R&>)Tx!jrRW|R1z9gfWMClN(J`UEocX5DR#dg9uXX(()F6CEz%%64g< zafBUqi$?waJr)cpf%b|1b;Q84% zHYLG$z%}I&?Y227aTXFJaoSqZmapY!|$%ydEwq!m} z5WVbP)EE?om2lEp@SvH8&G_W3ufp`}vCn*r>!`NFc>_isX(uF6RY1(x*`?I=AG<9j z`fH%(M)cB57PUeqTLUtWGn%-nkzxftkvQM>aB9~+*sgG3wGuPvwqa|yxfFT9z;`*t zH6RHdj6N80*J)C#c@x>4J&j+B1So#dGA4f}1p4eQ&QkjdY|38>LKpCCSc4s_q^a5x%aiHeS%%Ty8MeZ+;JbaX*usB0NJbL zHFHYHXZaT&R3gHg~nCYEf&i@c0>g`u98jKEg;m9D; zN2GYRWyhCmBi2z^&4A)~5u-J_m=V(4FI8U0s2U*rj)E0s-3#{K@^M(fd#@1Is_6jp z1MpQ1%AxAC9mRzGCN`#zN8B$eX3_&Zb-F2Nj=7Gn@AYc!CDOyQA&8f4j7!pw2XHrw zoB=i*ac=ZQg9S0QkENkgk%!z0{p`QtyP~)sy%I6(~l@OhVI>Ek5k) zuU`a{jd1~p4Yk3yeJ3-gSpPP1pSlNWB*y90s+H5pyFXsJ2#4E%HVIYJ7qzW3MSPNT z<8LHwBHv%-!QSMvQ>=oMEEVRB=DU!5YG%1XX6;I!-M1L(4Mwyf0Cq^&l8MEEwMqHr zhho5*VYBB0_edI=2lJlQx8bPEkfgKAcPvXj3VylL-2ru{MuNxY;)Ru zz;h0}(A962dpLA80)344-A9vmt2?VkLrtvMs%jRJ*Wt1S8_#AB6Bzn=T`A#%f5u*>dyi$4cm*xlae01qv*?agq1@U4~(y8b&Pk%3N6rT31)~L zhf8|_QIYZS{^rdd)n*r|pryQ={STbUPv45nK4(z?G`TN>c!`5|r6TuM=DYBwvh9%C zS&(CaY3xdADBm*OMD4h zb6zJIW)y|2j>p|gU>tyqD44DfK5f>=6C%Npf{so|Ilwk)0#|Fc`?RAy+E~ zn)gdro2L?OxfPjDyzr#c$Cxa6)9)wzuuHJtojMIL@0x4g52wcDILDAp6440J(~Xq9S1 zwm-gIb`UFU_kn6Vy&rX!4gKAIDgA%R^i4pf56+GW1o&G`^&_Bq<=0aL|4t&fQ%5=? z736zl1vsw*;NwE%X@JX*)G{YUUJ1Kz0BV4vVg0<%WIPcN?1D#4jk~lH8x!RV_-5IK znUCip=(C)Wn`!&_1JZmyr~1jdx$`H^2%!@Wv2^r$?P(A%pGboINsT#1WIrnKL^vPj zy><5PLfQoGj6kTGp}7j+Xs=9N7pK7LJFZ)vR$?4)6tZP|ZUA$jrq+N+%OS*3t zOc!3T*J#X}^e11&%gq8CC;Z)C)El~`tx!?U@XQyP{)nq)bLEClaUl99rd8}8gTeiC)m8i5hP+%*81pfkeXpG;7d($NKU%KT6PwDpow2b!D5(K(H*>j$(8Eb zm-%(X)*(kzQF>I{qS!Fh?3b&XJz;E2UTM`^lQDrj-;npr8$!r_f_g<}S@6`Wf4Bo# z_|hk%nM|`&INo_d6Yo5(hOzWcB%2tteZJ)a%s3LQi#AtQ`{Ux(MZQ`cx^sr~SeA5D z2W=C5rJV78QjRII{GU$<+73n;%Il*|E13}?Q;vxGPh*%G9m@g(R1*2P&;`Eu@v5un zo5kP*#}M#9T|)ZT`<~M@Wl&j9kDvBcwIx2*yf5t~{dsdMK8m#GOICwL>sp>s5~rni z9ROiLY-rHokn$(~(Kg>pheM4|lFSC7R1DasQ*2P@Jx8ZNBKOD-*IOiP<>;d?AHh>c zXVP7#QP$&YhT7gcVe5_*KstOprWb{5crBx%Fn`a{ zb7lDLz&BH7)$?os`{pmtDOW)AoEFZ#k}=~8=(-bMqu7IwGTt1_P{O`?7q6_rV0MxH zVJo8MCcLD~8T-msFy*q-hbmbh51t&gzEyt+a{iSW#@Xqr7*Ni7hyr|rNy;!kAn7k$ zl8{T|Zy%7xA9lIP>*u#c#TS#3Fml>EeK- z=NhJAX=7u;-LIBaxR_$G#xiQV+P8qmD>GYrZ#5_N!KTuniRrH3xe09S>zeuQ9;`xk z-(_KZP882+9X1drc6_*;c5Bxbr%$em;!GBaRpCqhn3}jo6}U)ipg-~6MOXU=lFEbh z47u;v;`}sKNF5?N;xb^L62)fjE$~oFQA-ACRY}gafK-Mh2xx4>DAkLHjFWT0Vw$1f3>^_P5f~tXbC;yslp{FCR zL3l2VzUZM2AA)D?is>N}W5RVOMQ`{lC7q!^33lQKkelY1 zj~Uoenrl}*Vd~!C|5dB-^9G=2YiP&m*EIR5ivy=s2n4He4OagQ@m=L2T6us%ZFvgb&0lqgvL{CO1m!|q>E2Xt%Q2s(=%CvKg(y! zpt=_JGt734y?F8J?1-BMTvw{*t;Ig*SJnB}D_yKkbyS&*oMXoXrdXYq&f6hyZ>Pzc zt~g|nK6>EkW}it7>J7f6kxjQ@i!Fboz&zB47Pm0x^EwU5g*7NPTWpA_t}Wvu(#v&} z_OM~>{V}*eGIjRANaHTu5utj1(x7a8)SFV!w#;@|g|{$YPUT@cO_4d9xIwM!c|pB< zgq|GMJzs;tqrCtZGbtp&oA@5WVmjhKdbaBP=`8S_h~HiMSkL}PX>hA`XQYT*_T-+_ zd>(&VS@X=Dbbo01+alhAA61;+Z%y2lg659y9Qi+6B0Kw?9lr4$hz09P$NizH5^x!B zq7o1Pz1}C?0Z8rS_X!|I;ebqm>`;<5Q28P?OkaO1wOM!QgPh@l+YhQB}NT% zv;6dE2}V)Yo)9vT@Oc#g9x_r#&ZZsXrFjp#JxY z2IUKY?ll`%lwjbDP!-5oeG0@*^IUr38sXh`L-)l3&-{4PfB00gm&#zdbp~m2K8@>m zW$Mw)0O9&Ee#&+Xbv#!!&@eG-sc&)M3t(#IfE7g#+cf%6-$U!>r)3XK)TqUMy8fU$ zuFiPHcM}zl^bXKl-FOBzVT6a1=hfPheVydZ4FuCBd>H;72VVUX2Og6EXU7N>{RnPE z-wHqgrkLTa?H^Go?B(VPRz78UPJR}x5iQI^P%czIuKldE@9U*O@9Sx`O)n&Jf2P{A==tMPHolZ zo&UkwmC2uNM?FvLFJq0s`7Eb+jp{@0_;2(koKl%oIk<*;iU_--01~?XdCXmrdxgoT z{2y*9@ZFyEodh40IC^*{T=mQE#bku@Jh{&EusbZL4!I1#?d5$=TSIH3_J-k1n;VUx zOnZx?ZgU6HDt`xIAO8Vic>(%|+vj)m^Y3v#75t`aToDcmq(8IJ^FHXwwuJpyf)kQC zFtvPph4o#*OaM^FaiOJr`&`+;bA~^~65a8lX?rKVhLSV~T;KY3yLJBEtyEY&4@f|R z&99rovtPR;Pc8LsBpU}*)`t>pwKZs>6sG_Z@>Ib|+`7M_(jG$_<5-RL+C`D|I3;c9 zj~;=l?o1+@`BK7U?bkp? zcV3!=ju^Mu005vl?Jo62s>6X)D1Ya%KOAhfW(r4Q00BihT3t?d*L-6PWG^^&{&gc7 z(-fmT1)ZlIw;L-o5;JLt0!lq90dMzDb=yu#l+@qokN=Ua;Ig}a)VtC zwYLUK|5P;fhp6fP_J;(_QjMy*q9ynL*n7*cszs@!1n9msF$@_lB zA?onve z#cSl)vI#}|c3Sd=E zQAPV)I}Q^L+*VY!hZ5u5#)#OW5|I7$SLcTx#y*U{m3oPKN1Xq;Vob&3rgoW#TL!vP z?w`HG|3mvfyKH9|Xx9Bhwx})em*iU$6!pOgyv?(n zSh$r#ZP8_XTP`Ds^xX;e()WT}E8kd0M%iQ&f+T=GnDcB*I%4=S@qfm#Q}`-3#{`j= z9DQjq+18*@8}vBBH0JshSWHUF@_E7+g-y;h6BkaVR89J8hKQKF{@LD6BRz{G3| zG%V0Yh$XJ~XB5t?Kow=G{G6NkL_zYE|7`VLZwLfBUUxfiNCJ@(C8v6&*V$m+SA7V! z9enA>uzOt7-rpjPm(Q%F7xz;^=9%dNzhNaPFc?Sd@W9i)LgIr*9)B&jFgMsuq+#rbbiBZ0RwJg4D#_F2)ihQmkSQBQ}W zW_t@;Xg(I{OMmSO{ci5b&Z^#nm(7Gmh16LUF15%{fuiATK33-xCD;Ei1(B{Gm)2oJ z&VE z#PL4l>&3r`^Cj>VJqbdA&H}rj*oRe7r*LCl%tP$xj2^7|Goo6Y^Y~ClQo=r;mL#)#>FlIb zDGmc2@=3(P7${^NS1Ps)Kz9e|yqEeP*0}`7e_7}20e!nT=Z)FC-wRmr=AJTW;NyOc zdpHQ^&2#30o6pffQh2*P)g6kjS`OS475b66T@Y`Mnfu-(J0$Yp3fLl4xXbJy}7d;{&VHe3TtCblTmEh4b3Mec_bGX z$No9`ASk)f*$S!AkCZOaGM;9;z3`o-i8dyNX>`^(nBa-#Ba-5Ae!KH;J6C8Qm~72< zlByrwbQE_TbUMT}pW6*-0dLa|+k0PM^cM(Artx zGrLFGRF^~0e5#U!y#I}I|A>|Z>@4NiOW8&+53d%U8vJE4tw69ITx_25=PB4cqrGwV zJwS(v!*}||G(EN^@|?h|q-i(lgD2YZ<$)MhIku7akh)4$ul;&(yj*%E@Iv)j9<@y4sP zH-+<+vCvwBnYZt`f%$9^QKVUSc1DV?(n)R8k?Q1|2f5pF%sLD2lWzk%Hkqr}w#vc$ z{k4Hv>24~{_dC<{=gJ*XS>sM|MI>s{C;^*gJ)~@dgc`yQ!wypr3ye^oxRms-)Wp6`~BN5W#VqoT~46f~+g0wujC@C{CqZUOl03%F?z@r1K zJdoZ^S|UU!b-Q!C!SvPGZ>?$~HY{E#zZ4j#nhc>`7xk0iRTFKYHq(TN2N`$Md0Csc z)I;tbJt4xsPXb%fh4f6o-?xYjjqxy1;oT+GKaw7Utu9rlEtznc63>{h2-{;53O;`Y zQBT?FrY2}g5in}Iu`+0KQMn)pYy_&#=60~V2xjHmE7wVI-cmok=V=5lZYG>YI)=qp z1d~Pa>~bWu28bLfa>Dh+jSR3D1*(FSWatS7s(jfj@~uK=NBcd*Sm(_`#l|B*%v)RQ zv~4A?Jwfe_52aG$ScaH5aIESAWW3vX14u9{2(S6mo%~6n`aEFtzftHJXjOJd&o&)x zhfq*~dfwXrRT~@!5mLc4;!6yKxTxXHg~xH_U7o7*pcAvxUtF4Kl?U$}q-$+oXx^dC z(6q-Lse}t`%$}2paf1nYoT^cCHdd=G2?G!m`uUtN1_%>4npKsv=NSYq#f&5>=4Pbp zwSU`eO$qzHVCPWuf)HZl!%er}BB_F=sCP(1gRQfr5HAom)Ux7cUEMYqys>6UDyW z<}&Qj11AYPdMDH$pcHgctd{^NhOMXoH-WXR-gC`15BDgvWtdON*$jKP>Wwu$sLkpB)ORk>Q5PNsRZ0uhh86@MA)LVzI$dl4_Y^?*rGuzG#%bIAXnCw zJag;CxQZ43h2t|ln?{|cb^J?>nXSsSgPE-v`tpT!MT>1^(4nB?oEzT=1NrG|UxEES zgSURPz$uGf$+RYPKuOJC(4pYniG`@ddoxt;R~w?G4A+Zk&EE&`s8=4b!FFTqxP3lz zb&)pP3r;58+hQ-+_#ytR(fsQ@%W*{0C@0X7(M*#vWa;m8pesZfDpB^&)Thnxw4NbEr21x&lM*AKAqw>K5jV)ET zr>oyUv2K9JnoZM_xVCUN(}0@FkLKr1QNs6x>6cY|lAv`(t?$XP=7|!%e9TeX3wyc& zb7wvtV;BC=_m_wZR|dprjV_iz10NYu=GBkE)`0r4%L=Fr3)uhcA|%4MswS4lqA6{S zVog{^Lmia7ZrZcKgle+o&3ahy558@(8}pvs7+>9N6g#JI;=?O@lRWgsL}KAD+u>_4 z*1H|VN5yw!AQo#09do8$knX$FLo2Xx-QmeOK~Ex@KEK{o5f0kSZj^7A=O_3wp>{7O>MsleA zS_M&9fPhy0>O*LdQqBxz>-#OSN^SeKACU7YT|3=wS?vk5i_5WZtxtGG-FviECaB~; z`tACU>W@@)g4-`9s0+R>$r+A{eR|pRhL7xqse}u^#*zP=xDS@S>?Db{-^-KU&*V}7v{~%S)FL&f61r#NNRLG=Q z`~7&iX4X8TBRsa4j+eAe^<@=!o&l=Eyx0`nJGfPJgSew z|6v!Pd=N5(#c)a$tH`4l=gpO83T#{egx@jvWiBafKKo_`Sig@Y5YLKf&9)9L^SMyLMgd)E8aSbUmu>OXEa&1z z!8*+)GM6vB2M}mQphsqmo@-_1Rqe*MTJC7&o)dn!+`7AJuvX4CC96C_HQ~*v^xkiI zTKd+%fM$8%yX)rANsceMG?fguy+2ukTcbBnA|k-3-=1A?Y z^l2->d*rZC){Dtg^%49;=KN7vg=6gxuS)?DfK5K5x^+P*cUiNST^`@|%V@rMvj6{4~L3!wJ)n$DDeQvpw zV0_9eQmSKXd1ZU^Orb|719wtL&*i25n?gw_Mo@E-guub9ocS z-2E61EzKIFBsnQs_jsO6x*s3bGksm#yA7?tzXeSNW?DZ~yFsg`?3{_{+Zvll`-HU# zRfU+qj)b8a!VhCbU;R!-$PAnOz~|Rm1qd@;Vwm8)RUZ}VB2`PpqO=W~blO&hh3E~9 zetul$`v&yeqB{JxeUMb`CMoMIO!6r;9P0`^Jx)i?h$dG z6^d-=HC0f$1{z>eH&9m)W|zZn2oQGz7Ms9Pek=cp|5`#AgM}VS01EH5gZj!u1yZ3s zMUy17(4cK-UvJz|D`oz)2PwDsy8!4SuG^EB?I4vu+k8rJxofP($R*y0=d=&hFfS>` zDwq{Kn8^)`Qko#=UrY*}s%Dq6h}8H(mFALrT)Ob9l^?DKgeW8`8H)E~r^V=zl$a5p z{4D)(`iV2Oj$-cgsGBH0t4`l{NUe9A&#<%nuPxx%~Pe^MI%YMpf`{EY-neKvr z_?5HpNqOYM9DbURX{U@o+y6{arT&!@LPNJ+yjF>QCM%p!bgfxeA-}Acr4X&K9&Y!B zY`VD0ITZTMb)V9bhh{uZ=~^GMu1Z;Q|4&W(x62+O1#yC%4|jf)-u@C=yT!}UIwX?X z?io4a4sBYIR%&SVRl2gC)Eie+@bdw7fqFiYSb9=yet-b@_?vOYgC%E7ER`M68|CM6 z*Z0yE&m3Lk`{}Lp=?+=$kcaC)tpLPK%1`eY(gSa&M+IF0u%tF6n<=B#MI)I^MlnU(~<;ynhmkaFb-hA0ht0ZJ!_dsZCEIQOIe?4}6P$tooEb2?noMwpCosioL zq$Rybxe;=w-M1YDAI)2;;LbX+ zeNRSU%`9{H^IpR%b7jLBPz~(V49)-aFcfgW;xTa+4dLITXnJ)3ewP7Ck2$4o|B}Pn z7z6Dk1G2xUC*L)(G|=Cob8 zxpg|mdF7rE^@-tF73;;Ht($XN_;Yy1!MsbetyTuT1;H0>8qa<4$@P)p4uU3bShM`* zLBR~Wk?~Kll50?%n6|N;Fxa!?rFyj3174Rt1RC~t z?=NM^%J^;m{N%R25Jif=f56f8iv2$9O{#kubsHsf&k!YB( zM`0a!(>H0~uqozL)5=4vrkL&4I}w8T@z@u#T5)TG5dNF-zlmMxdvwP1I!hOR9(d{n z2|1I{%5t2{O&}+l_L(WTj;}zIOaaA9HY#Lbzmsmxb)G;D-EpFs`-=1GRX&dcIpa51 z8*D+~@i!eq$G$Y z+AfzZ9;lgHZvt8Y;UWaedSCJrTraNaK}DgCsAqpt^ZhrssZ^k=h%GoA_JS77GMy|k zy+qv;Et`{UZ9ludFUz$OhC)-LQQ1$V`*T#T-`tfe{8!M7K@c4E=lStskl+YX8B28B zSC2=Eij{DZ`L#ugQOR=IlG8?%7SQIkpkG5J55uBdz*lFDv_BNn)w)}1bP?8U-tEVR zNn}e$9I)LM68t}o`h1BIO0}l4_*q|zxFOZ!w3>AxgSx7*na}F~&4XC_&q9mHcLhZ0 zmA(WYllLX*)rS>O+s+mhXk=KMNCk4{*JH9cbBy}WQoV6AEx34gqV+bB_bcuJmttEt zYj25Pyyu*+mkqjdqiCkaUsD?(EtB%gI@cSy=B({>k(QXNN^REmkmrztczfxp6f#u2 zwKzLy!Pj#x>u2~Fl-NxiojH@iB>o^AZg4c)mp`Rh?e}Dyo7UjMr$z`=p~DW3PuLh< zIe5Xt%CH|UX8?_l&~Wa*RE&QVVFU=%<8HN2AtKBonlIQnP*Zw?r4p>n-9too?~Axv zE+sjt5Aa_&@X$~-Ud-{*g)|AFsS)ty)g6E&F!Ln-Igi3T-SY9PiFkAAx(>_v#m%PK zmn1&MzweDN#eREeIQfi|uwwi%i|o=dHXWI;IHfs&(k+d~STB8R9%dakA7sgdOowvE zE&lJG@#G0;W&R;(Ax5zpM8}f|7qfe9v%Ey}HdRjINIIfzVbiU!inBzZAsO|m%S_|H ztnGi*ALcZY$oW92*ySvOQtJ8^NBi$`+NlI1SJKebQR;#FaQ+_5HCh53ju8B;{29Dc zT=3@O6bFKV$0p%z5;*TOc?71^S<0S=JQ&Rv91!69J0r$;uR%?LqSxgf2q7xKyup`%yHLQ zjHN$c{OKb&W^)gox+q9PJh--z_c-2MW2$Bqu1q5IA4YV5iDdNyq)xIIorkO4E@a>% zA@8m<9v!AP3AeRhb309l`=yWJrOct-hxs@`E+ra&sc_vr4+1%xoP0M9o)$-(h*N54 zR1?Uaed?{+*cK$<$6l*u;=Hf?3_R>KPy2VP&jbVCW2$m+-i1a{BN>XjYSed7waz${ zA+n6FD8kxks=MnmNsF=c31T#-#I?3Dr;ou7==Th*y~#i!6-_^ZtBo*v4`u+0MQjI~ zPb)A$^&{lj!4o(i#tf5PmqO_ilPiV_iP3c0{L9mz`orhmcbN`8)@$X_aa_;ZOCXBW zhzQ(Gp8%*i+sNmC5KjMob&5PZE4NO$bdn!qSsJw89G4M>n-4>IgyH!UlYW>7QlLfP zUO{)~L9ld&O7xk+C?$HSi$plfb!dO6YO={hr!F3JLgy_`w&Sk-5uZnr%|Vo=N0BU#z5FZf%u?g!jAGru6 zoQvOdac|FZB#9%=d+u?LAc7+BndZ*@%Wla&3mM5zGg=5`@o0nSzIV$gm3aU=`LmrIrZb$h-U#sr>(M z7$mkEbFh$hErs37;{;M&YlvpBF@KNdv#C95^Je$I{=3T22@t4{j{8e37y~9T#kRF= zJFIlIpf2#=8~*1ltBze^tcWLq%+@(2JQ5B)cKv5TwT2z30lxRMf zddmyq7t=sReyn)(@812NB_ax@G4Ewj)%XZ;N!7UjaMu6)`|tl`ufSc*yifdda-ptntGN4kWUc0@*`7Cr80o*0FhntG?Ix2)z(_i%#t~G?ph0jb~-%zjap>)x#j!_Z% zi#QOp1>SLbDnKLT87Wo&Me`vITb1TV)JjE^bs;Q& z@pMdJek!;x%kG80gnQ;VajQ`;q~IG9`XVJ6A6`1hXL1DhOV#0}DYoWfvu*HFia?3K zl<_}+*j!6WZzRJ@lh5Y;1#TgZnC&!nkI40#sE|m8_uV+}Lpj64On<6Tjedkub2RG& z&b#(to`I!}zWKrIIQYtcQRV;FSN_*3{xX;U-}=f(h=gS8pa|UwnPLP$OE}5>59IFd z8Xn*bQboNlJchzw9ON*+r`-JKtdOFF6?r{@zfHQ<5cFq4lJ%#Uq19%&KtoMvNJRj=mw#Sv?mw zoG~JK==WAT!Iq@o$?2fk1R+0!vhSkq=0TA`yL~3HAYiq%QHoR+3sv+u^J~WuQBeM~Z(Db*r%Vm!De7^UI z*+W(Kw=#1%2FWp6J4Pj-&3aWue-^Lo%3g?5%Fk(my7f=8xeKEN1?vU@+uLG*e2B6Y ztqrz22tM&vXg+VtJqqG)d&Gs*4IKrF9*1z-+2>nEVhKcV8me0mkp#cP)LfZ;K!2yj z-;ndnYAUD}VhR*GjEceqdsu*oWawbYdQ<d-1plL+UgeuGTO{ zBmbD&EtD)5Z;~-w$bg!)+M@|5OA=-mThh|sY>q?sT~|xo@4T@lFH0H z=$vSEHInrA2$AO+?k6tkC0JN!#e)ZTPPH7(=r&NM`YHeG4hmtFxb=>)XVW!R_3ZOzY_E1SDH^HF#v|1(N@ikSGte(76>B8lHTyG0TC znf!Lrp77^{w*ttHQV=lTCuMx_{f4KKHw|&{P`9bEPmKnbooCIoVUN%iUb_Md&%BM% z>Flxa>ht2n=kKX>ym5HSf1@mr^m~p#%tec-4t4T-U+%|5(7f6Fy&{FpFhgtk8Bf29 z+OPo#N#;v0B^AYSygUZHPt;la|JZ5F4@zMnREYIT(K8LGfayp~6C!#Gl@4ZBCYSI9 zb_0?_of%yx{@60~2H1$f(UOM<8m(+^iO%n5f!rV&z|1LufahLhwe3WFC}Mb)W70jD zK_7VL&0y1Co;?9%OD&T!^u~Ls0REJ@S9ZtwbheVWn zPM#5F!=U+uPx*B21fDJk95OGa?Gh)L%(iEboPW8x=x;Dk%8~CabI6${g-7LgA_{_N z_<>P|?wj7DfGPDfy@7lK1_jX<`9P_}u>3g+so{Nni#s|X2Ep--OHiDq0e`S45|iziIKXY@6s$E4oM zb##tau~C(Swwip^Yh%a`)tTI0!x!kTnUbI#KMeI1rV>97(^xrt$fc|>(tgAEm0sIy z?#5EVZdJez)W7q;%-t#_OigH{-VvbG7(&$GwB*oM>H?TUueYi{+} zPbkL7&Tv{8uUx`DNLW2M#amGuoI6xwtQu*(G@(%C|10R4E&RH*NmTvZsr@{_!%27^ ztEojyc4qc28`b)=3%ytd{8`#bmzlO?8G&tEpNSTO!u*gQa7@q=&qww{hYlU4p)nA+ zZC0_&+S)M~Qm7iN3LyB+G;c}&E9xf4Tr(Oz-gK^RWjs}>$uVeAVgdR17pJ*R?k~n> zBrY4ZUSUg?SQ|?$b|x3g&}*MswN*@{aYXZRinQ!|r7GLbbv6)i2UBgRiAPZ+Q<7qi{R3v z7Q17t8>`OVxCKp5Q-Y|e%OxmyM+ zR8OR1q;G3Co*$W+S9aK}@wwilG*cVVZv_SB2mmr_TxyuCecCFEXG}%NzO(I!Bm6+; zy}3t(eSPCHMd{55(~Z8FDd%p2oulq>zzc{p;TUy)S{ zZfH4?$iL}S583|Nr|L*VmX7Z#VW}H5s-yHPm|79(>&iAw0q?DebS1om>xcz;@ls0K zK66kC9#i|9o}v=Wipty^s*VbPi&eR0AkJ6`D8ZVWLp90M57WofFW=C{qM`7`lcDFj zdmZm6ID+&GB!E0lFgocCs4l*fZxx>Lmr3t{XidT#-?CngqsjubTrf}gsY`g2!3)C&~kw!>)EM0?lsS7L&6s zTKY|fREk^W7I8!xzs*O={t|{GQm-#57+zr6Hvk(Tg+Fp>4c0Hy+ShB@(Fp3(2i-8J z(|&l0X<9r4vqEig)oUU#aXKzTd8vN^d>`FWjx+-}U8U8UteZh1fVrbdF&d&AQQ%7| zPUP48w7G+ANR*R|bY0yhw4Ryvv^jC2PW7-$uGnR_KlU6lmq^U}*0es9&I@l20Mk|H zf^%H#yR2I#>#Fz2XFt_fo-%HW`DD+`n`^sSgBRKfe6UAynL4Vix~LHM>xH&7UPpiJ zBa*`|EJvhbE-A2GgAYPX5uKRN;~Bu}R^BAPJwp~8<^;#^A{GU_2{w+O*{tQIoDx{G$&(6IO4#Hw=+Y9XNUtwom5y+UapJ(faLHx#+m!@EeMjc%El-vdGFSFq)<4}x#T9>~Truky zx^`;$D+Yi5>*mxX?XZ|H%Y62xz{0&rz^b(^qm*;RZ9J4&iv~=I9{zHOR&IZlXAI%B zFlgNqVBI*BaAMl(oc3jk?TN&9DJn(7Xl{qC4LG2Xn&0r^^~5F0hh=WGnfUTLGy3r} zcC&qgDVlXOHm6xMP1dKD6w02Fmw-9du#e6#i#OF+{8;+4A+gg}PFnrzbB5pt8Wc65 zx62mlE7{18hwu>1~^MD_Cz`=M{6!xzeQ< zDyd90Z8~47|C&Xn^L;1YXjXVM`+To&Lbk1G#CNnUbd{QiL!>5#JLk`Ue~__2vN?(< zUMTmzwl}$u0d0^2qzkvE5+u6tjq5OM!S9~&x!wCz+U5%jS610>YJWm{MpnylH(irn zh6H^xJAf-hzB^%2;!j*cO;WJq!J^!eWD}Dn^$*ScK>S`yJ24LjO}N@mT9uUd&*`*A zNlbrmaUouvT=19vT<^X2YnKHe&)*&RDOlffG589{bjaxR`jubn8|>5c$1KxDFXG}Q z1(+>2muvbo#|x+KiXd3XMZJ)DzI!gY}Nm&Upo0Ip_SqMFi(Ur$8<5dg;#g3c~u)%>B^)r zr*4a$mFncR7{zFx)oWN?V``7ziBl$2AI+QS`^OV9y^rA==TCF>93MUDB|Tx2>s**4 zkRd{p3Wq(;g?~(!1b!*y)Yz0jHql73x3~y2Ul^87BX}eEn#n&ry=du))eZVz?)&az zP%9wg8^ZVgjDy$R{UzxPk21?_gx{ZTSFfc?m2gXEHqO|7IcHc=?H^jPiOu|=ly76% zy%n=pstTNiNO^2oq++h0nNM-WH&WqPOx8im7<}dN z2)b`M=5{}PAXnNj-EC7nQz6Y<{Gw~5vRIM!ukg!q($%GB_G zg-v}&k)aFl`CZjcK}-YZdmrM4ke-g*p3aCu8F2LVWT(2a#h_z`DQ_sa31bE{6wv_P zOYekeL#@(FJ3(%`g4!jN&#KYqR#OqLnNIt>5|eU4-o!@j+a6UPW?x#Ti4B_>37@8D zwq8TmV_4Bw`!8b~?3OI@);E7%!83lKvJ(rUQR+zO+QO?WzR=EDu_;C1m$NDFEx!;Am8Y==yiQR_R;fT zPE2c`y8Nd;{INjZpJ`TioGqQj&xs~3x%L&jCxHP;|%TO0k z6CHy#%ad$s(7-$-+9JOtDc5Y`A|@;0QO+~}IQh(;^mmE=&_WM_SG%#K(>obdj29B7 zo)`@i6#Gm#AnB;X(i9^T<+`lUBv@gg0Zg%bOMPAy+kwm%fy zimW8*rbT*ya@l8;Wh<5o{u=%n76=E8_47bUHUtb19X#z0{S~t9rFh6N2V{OMyFkayV(Q7(Ori6wnPR&}o94YY%#tLhZcmFZQdpc{*;UI! zR|2CgI>_v9DARp>@{tM)##I(@|wuMZQD8v(_-`y+~o%20Y-x_Ea2Rf zlK5w$0qxA;ER$av0DXiw1ImPh}{EDT751%cN-i zo#H{Glb36!{?iA$V%n)lZvb9I zX;>EWdqhY=#^%i|Pc|}6F^|C=mm%T-Sf{iOlfCBM1Ot0pPznc;Ert$&WRX-;4OKmr z6pE(4ruh3#5E%iPLd*Rq=Wk3PjgQ{hLcfIMg;c+o#_D;=F_u5mxh-}GmlOz$BZnyQ zFwzY`_?r1|?Auq@J(w)2Bgg3AuVu<56N*1F#au-y;7+I5+*tu&Ya}K3nfh5fO(b@<4=J3tz;&7HcVPMgaUoo&pGKdB^KAExn(x@;r$}xO_2l|f z5C`R_Qh|Sj1c@~4^tZ+c$RIIvyPw-7Bz;6k-S&G;mq18OM-+Y$lF<}M^5XireLq>? zuU4_q2yKLnNC>+BD#G8Vu|^WR zMudppqvN`5!jFR`7GNLl-Mc3pev3o|8W~WCnd<(!vxt@A#0e(QVIQ82HHv`C>G>@8 zWvIviX=SjL6oGoG$u0;HWU_&MeJpV8nD7*O1Kem6NP;0-7cyPnv9D5onUp=4Jyh2$ zrh`uNS>C;(S<8I;%@L8t<^+XRPdgO_U?YJAQ1y8Ky;fVf4+s@0I?X!kNyAZr2IA{n zCDc0;fO02>@4Xe4EGCYD;TIPd55v~?V3Fs9m{6sfRE^}fVbH$S2N-y7u*$+cc~*4H z%*-OPo1KQIhJM7zNXN@Pr~sbZKd&3A@JxA9JmbNxDVaT;qocj;l=aKt|D%-;135l~ z_^SD9Cif0ZmePkNF@>9R5W|Z_iTg8#9!`yU^ouP*@f=T%ei)oUlYtVFQ%(#*Ge-F} z;2I<8q4S7pjuiFYlV{4xL`MjRv3{CD-_3c(#Pl%kk!VPO>CT=)QCxz>3M)%{{RSS; z2;KI=aY5xik|Lb}3cuhgXhu@4<4R#@jM_!xfyKkEG^2E)M|`0#rI^!!6F2;?MNBJh zZ-1~KP^k;a=R6Q?VJXZZ$mRMczU#XUdWv+v>tR+3Voa84vz!3k*|Xo4)0!}x{=b(R z@w2_uXc@tFFEE?ueMRQ-T9L#bcw2g7N9xS-4zlbeD+VS4BXFh2;!lkl>})0qBUrl@ z#VVY0c$gzD3|p*izj0cazN7W?OwQ!A$>i^>R8HqjO(|SsxHlEyo(}8 zft1+Jv`|QGxu&tZKWeAsF z9d;oyUpF$_*#*0=P&ZJuxv0m8N__Rfan}QOa`i~|g1BVU<&>y1Jq3AW%ZL)rfe8m9 zx+%3AZ~6=9rUa2J)E{lOW8~p#7Pbs_Prv#AqIX71m3EJ2=cPNb4=Aqjk>Qb@H2SV9 z;{C8A!n8_%6ashsharB#P9FO|S5J}hK(}-H9Ow`?h9iNy7TwM(pQFDZ#`&b3Q7|;n z&g$^Y-4#IZJPvgnq~VzSK&C$goY1|&GCK-vxA@R6knbz`URnTu?J9PAI=jVz2aA&L zuH4yo%0w8;lZI$koY++i1qh8Cb4T(u@a3gQ)N65K%l6=jASUq*&3X>JQ}Iak?(zKD z2G7yYk%YHaaYTC6Sqdp#meM7hUqE3E^ZBuL#6DXU!s#TFySS%Q_zp~gTFHUon}=MS zO(sldaL#808QhiDAi3AU8@71wEd|srCwAu-X8@}~GjE6)+6&)7BlI2@84V_E3o#U- z`oh%yXugPmz`$Kesa^9V0iPLNp+TDG3d=T+v;WPmg|mAd^^h`1?O$+m1AdBYa?JIu%6i zRwN~kao4kPvDo(#ytoSkCqBi&VelHw$MJ)k0jFq*&m#%WGje(pGN1+-$S(e6WN27A z_z`Cs*VI9JOUH)RaBg;Dgk#fZICv!cCf?kUCnM)~je6Irb4Myz=lhZ;j$!~4pk!5a z8u!>xU_xMBv@vSWd4Sq_8f#pG^MNlBfoP?3S?p-_UHcc7_)7%7Th7VPg^Tiv-1>i? z@LRC|R}TMI4!if_|9{p)R%pk1W29J$!?rzi?r_y>OS%qtD5TMbH{z4_7duZqUKp)o zgZ3+)`;T4_hNMj-6xkpdd7DWt?Xz0Bdy$lE=@Xo44-f?PNElLTPEJnl3&D3KG?-9> zqiqgD!~n5G!uI0*wGKN`U)Er|80FyY#%L)vi*7UDXOnIBPF~eQJ$dqEI``79lEaQw zMy~#G@Uv&a_hNxxI~?h&T$Wn2fy+y;?(tY)Kofnhm5hm$dJ$6{dQ|`R{RjS<|yoom$!k(-^ zW11#gis|;SHM_f6Mo(@SOCA4R>)T}m5Upzo%o}Xw;q@EwBwKLKLIuPpETgr-V#)6J ziVK+^rwBvpa~SA?X&hy$h0-l&jUM+w!*7$d#j&uVa)2p7>J7y>^Db~#4)BlZ6;=Wp zLtqKjw1*+~YuZ-Zn^^Gc&whVlR44XBg-_`H=|*ViX*KLEdtSFCE+laFBt{D_*J4I8 z9jlv0I#*1(Y0vmLC4%;S^%-1q{z3xGW(Z3Tu$bh(+^Uk)3Z6y#r4?lPxYjqaKqPhW zrP#npy!$H9v~sVtdWGp@2zEq6@Qsh)aF;M)kWp|GTBr@+5JR|IfPk?4x|Gt~lWa8) z{arojMF1-|Xw0Q|_zmKFwT*YN@7|;T2=zH2Te6~E$|iuXRuOjHQSbE;w+DNdq{TkJ zJ|O$+5`h43#z*kKz}|J(}y_s4eu%G#ohPf z?{hgA;qOCFtzru7M&SF@r9EqpF^RX}ET~#aQk^`d8gb{{gv>CH^gsk8DLz(n<8n#x zAal|sMp_fXFVFMrC&jF~be=+vV#KgalvF4ybbgvoC#iY|Mt?Ss?D&0l%MK4-9A5hd zl0*2I3q|1=z?%eJGybM3(P8ZmJL7S>jyLqqVbWL3>TEVZa4u_AiPG7k>X5k3=nNS0 zCyPMyK{8oj>!)h=voR08`el1a35d;i4LJzCHYA^`3Ct{q(zC)Sbf)|?RP8TgGJ24G zd)S->%VFC8jgZ@@FAPeqvT(3HE94qIAix*H;H}cxtt~c~^DfSu;WnC8NmDOS^13Md zaPhiZA`@_ zv!P=^+jzVaE3*3i$ErbdP9)#ltx&bXSLppE4(s}ki_^`mJ%doSmS8;T6Nf$3i+#4u zKvY?{y*07a1^UJtpemi zbZyE1I{q+ZL6@^7L6E*075_&-4txZQ~^y3>HY!=55Yyx~14)X}Ilp zzNKG)zamU&&1lszt6B8t_-b?zVqsS(zr24R)pyEmPx1p8SgDF!pQzQ8f zA{QRUG1koJAJZ4aQbB>n$I7%Yjep+E>f^Upk#_6OU0koRc}^X%_DbrsVcb~D7J`=O zb7vAPEMx{h=?{Ocb*abs>59>Qbw674*0@sLQckHPMFNwey)@IuDt-*C6;^ z=m*>Fvu3!w0;dMg29XG|R|3q1WFJRXXP$N{%cpyBmY10xr`(F;Z;kd3DTS8H$y6N? zW5JEt3+EDCTf**(8Lb4QwN60}O3$z-Dd`gB)no2g)GOPF2&UJwu+UYzUn1t=R7!*3 z_Qpjh0ekRS%?rQUKP<8OW^y|BJ5Qox()88-xgNW9anz&oMe}B9+T%D7oLBJ4(>~Y)bWic9Tds(lsCNh>%UB9=%AXC=?S4PS zJG45goJ8(na4A0^m#?E;VaD5o4Z7C)04*P>e2Nvs&ifNxW$RRFHhaFUv9&QMWwkn7 zMQ+#=yz=lxm&{oT2PlY&_zDCg(6@y~$|X4H!#kxPD;TjgwG<&e{4?_1L0SQ3I5YIM z6|u2o0EeN5DD8u{#_#iOu$mYY zUlJBjuX$3s_(Bl`j^RDmEK#@2J3YH4f~QHl$y3ZHyxO{$!zP{PGRZXx zNw3x?H2?0YKT-7tBn}PkpF4N%wv9oea$yf`X~X-Ne3f9i@9Ja_r3mu!q$g~Z$7BK(ZEScw_vHoCj4@(+9YVE& zbu>EwWSGa%uitR^Yyth0)mr-~yK0X)v`R2S9R=1|JM@7pgXk4VM zXB4@u<|E!(YDb(Fuq{cqv8H_919jpnmgQlO9H$Dmd*~Ajcq*N?LP9UqueC}EZhFPP zn&wIJZ!kF&YRe}hu&Ney;_Fh{`WLMQIo6?s+<-gsKJ`>0WFio zf-R?^ia=Q!4vd3|_}cX&EJwrnNAo4X5xZf(HKrM(QR#Knpo_7C-eEKSUV+?7I@!-t zTm?6wQyV=1*Lv9?lle5>aJxY$v|KQ1+NMS>J;Hv|y7q!G-W>1A?lWT5*e4n?_=Psu zvQKt~xtv>uBj8zulNX2vIzIq}p?hKGmIP}0b;Ul@Uib%PvB+yI z(M16=`)}aWV=uL}(`OgzjCp~%5Gi&t#4YdZzi^^fwL90bS87H_N0!vO`h|*c3v&f4OGIJ z!i;yzA%<#rkD~9S35btxl&fY$l-gm_J#6H!Vy($@W`{o{Rw4+yRt1}Pd<)ewmorG= zBy5{mdFsEc zNA$|1YSw(<4ZM0Re#*XtuLKZSUzG8U`L{dLC)5DzG(t&3H*CMagr{kOH#dUi^z9Wt zal~%Vr_f8E6|z%OMcyWg9b@x`vl6~9KX2Xp%wnob1VwZ6^=}O8?!1S47v33K7v1{k zk2QeM^5|@tn3Fz7(MsANS8_5*``UC}1wVyFt?5L3X1N4cx0deynfBCHFOik6&7|_Q z#J02j&nU-_CI{*=T334=TpjY1QZIJMFEPwYP8hpq8~NVkm`ut?^I*B!e*MH|iyr&d zB{`cPJ=Rq<9=%=<+SMx4ei|PPNI4K1s5CsCZ`=(Bq(2t>q&52}`351k&2(JcB|4U4 zY;prU230;-(L#n$qx_Z=@owEq$p#6|OmZCqwe%Jp9+%_gxk1zT`KUW+};DYNZUdu1=uNt3IFRoV5mLlqiOa_vJfm z?==k#gu~3HmJ6(x$NP2IsGrLa4g83iq0Em2xQ$Y+y;Z~F80{l+77O-~rF*|8mX@H} zPvB;yEF&9>T-T|=4m*~5XO6+1Ae9M>?*&CU=nXif+jP9j%yw^la>DR^Xsh1-Ny)~K zx3{+AU{iF>tPLt*2Fo^Tr%iNlsx8KGA|M!@7qfc)rqh8jefLCly~U_UYKI1Q(^QUkZ}EtAo|Z_1|gFP9Ufa+4q};2KLnLemx;!s6&#J?>6EIx zcxFe3PPpi5wS4!wU>ureTUtzRmKLe=EZgUt_EYPe9I1{$d9kpc5oi3J;(O@hb2n8w zofYVW(vFmQZmz%9v^qXjF_~S>4}jJ#nJ7sgh=6bN)|_W|4{zaa5g|Gfv^pl#pz{ek z+0c2^Qup}A{Ka$O&1EfpQZwrQV-I3wAOIW6ub}*-=qhmD^0T5%uF|%Dp-RZhSHmXx zlJEUr?i=W-jfqrF%gnLiH^oxO+w}RqQ%9E&E>Lw4QFk1ik@6o}i+E|uid7|)BQvJH z|Ey&+HP465IH9*wmMlK~ty{}#g4~kadQwTJd5=#`Ft1dGLHh-=lbr4+ITElLuXX(? z+Zf8i0zx=S6d5kF%LysyhRSBI>13}@UsSgZLg(EZEH$a&crc{D@O(UviDdDos+;I^ z*OO`Iqy@X?HI_MV&u;balXH zOluLl&9fQxeS0^WXsYD3XnN5b3w4@Rfrf8W%NoKS*7;tP-T0=4!1-dd!X~)2^=Euo z! zKTgG_K$m(YUVbaX(S95iNiMMRyvt;wW_dazAg8Y5ArJq07sZ0e%l+m(oq|a3S9O8K zqHi{yy=Hc_*E;vXf$YQj$59+Ymj$#9T7oVi%# zKgs2ERD8w+>rB$XId5qUP`&wnBH92CQU3^eY=X!4A4Bi;MPH*gCjC>x^EZl%rCeI} zTL_GWwGQtukr<1a_#&HXRswKa+3c~Az{%*Fe2JS)fRmc;&Yil3x4JNzS=L;{K~lmW zxvS#!Z|=5&g`yE-X=$0Y`Ll4Jyomp^`bvO#SEjcr>DrLz`VPpHDu_zAcxBj%;eP{i>*U6F1r5@UEduJhqmsWAfzcNNQf51)}u$1A(0?j zL_&0l7QGvcAxJ_Hq7yZG@4bv9dhdoAjNZrSqYdA3?mhS0_nvc}$6tA#o!G2d>wSMU z?lx8cYeTo+NUMU~&v1>}UuE2UefA-~MU09`Vqb;6bhUSHb@Bl}1rrVSQAvY6W%Kba zmRE-ujTTNhlNqY>`lg>D@(VcW1tc0h524!=WoKnO=c+9J#op4LsneCgn!IztP@%`{ zSLwlA7bT>b&z%5>(dttx@(*}LCB2jKZS&(_?@m66S@S~+3JMzLT?TbFQHzMo4xGvj z5pIL}>R>SH25cZ~n8{{gD&nEyPKbvMNqtHo3F2%q?qg{XvE5UCz3P*lv`;yClc3D^ zgQ@!jjvujel;a!PW0Xgx60mVs^7!!=2=Nv;mncW^BPsj&&3C#(dTai5F^1dMn??H1 zenmdNdaa8$)CGIfMz_HGbSk~0vc9Y7Y-AXjk|;BwwO0DC8&S9hb2_mD)_pQxyNu1< zvTqYi2MVAv;6zj=Gg@1_);Xu#4kO(m)p8#6kB*R16l3V>-2f3xQeKuuyD8{#m*#+& zg|#9?34g@R07}o*yN8EMZ}uPQ6jeiUNxhu2C##@od2{w`ejmN&K50H5pf#UYgs5EG zs80JSi9dNMapuFh^Kc;Y^?;(4|M|=&fx{-t_FXR#>2OIjzY<#x^tyObrlWNuSf2+Z zR0`FzpHhUGc3qjMiQo$qSjl49ZTPv@4nQ6jwcWK_#_=)~&3o@%`iB8vCU*^5!PZH$ z!x>`wU>Rb{Xv<#C6UgEF*uvs2FK4RME>6Vnb*uS{UKu^61k;`$D)-awtK`HC-LxR` zFz3>(%onymHG5ut5MS2rwFhdZXUcPiu*8oDh+&V}-t>w?Z@~;LXJ%upO5rV^>a-@U z{{ck)IT>$O$taM`>O7eTp??bD4#46u|4nRaQ}@n>Uc#4IfJ=%H4>TR+89{ zvgE2>fT}R*jzzB5!*I^{g^lCKI~(}C-*u#$y^)$k4h+n%{ge_(Dczp~ADQ)%%fq&3 zW}E5+ljiJ!q8GqpiFL$#j~424*abJ}p)w5{5wFtBx_^xMFb33NLYGctHO`KjD5XW& z&F=TWP6diw%B1jH`yL=2Y#UwFs5tQcSt-ak$Ec)Of``u(C_(#glq4d##TNoco?U zPse$N=J3S@=2EsNZ?$aPc#nlr&W0+*98OQP#s@jU-e1N3W>>Zs>=!&5S;|%H&&x#* zfrqJXV-o&=mu%L9>BvaNics}o{0~Las+ZkXoMGj~9g37>|`Hf`cw(@@~TJs#Rfh-A1k8Um)g1?@#`}L@W5r z-@H67nzF^uFuTwIVv4RIs_N z19_{wB7NgO_Cv&=`va{oYOOt2f{aoj0wwNw@nU$Tb3#B^IO9uUBcgWAMR%t`v;H6| zS(ap03l%Q@uOHeXnRXB!9dTZZq&P|d!M>iPo{G}dZ5PY&7A!+B;hZ6W1X}m(q%*dm zPr*kt6fBsYguSZ$+t8`;w_mO^%wwGeofgdn-<>Q73hEpml=YeaU=|HU+DOsXlFb5y zBWml`)b7N*Bl-L>>IHC0>1Q=GRm4=Q0>wz!u}+o1nli&>p_L1%Q>0PDD75}#L&gA& zDwxy6+Z+SJUaYKa{<|` zD&{k@PD{~f4E`5$CydNHGg*v$=^|q05?-{8BnmSSDTqT8VtP zH#T5ASc!d_x^UNd@MuEkRIbSZuSn(;Ecnw^pvoWz+yb@|CmFQ!m1tWRY$nUWCarus zQ24G30#z(XmX5u6sjRNjfqy*JRO5O4(JXlQoeGfn-zlp{&rKd1~6uENA51{8X8#QCx#U?DUi?dm$GSt3A1 zROiMbFBQb=q`H2)lY1Mq{*FJ~1V4wei_Xu5-X>NlhGwD9zz8c!RR@f0Du*Ft#@67u z7PCPO+vYVmY8C2P6mhmvNYgkk_y7I`9rDaqLCwxzZI0p9XousR5bX z*M&Sw{CeM`xHUV0VQJ=`CgaM4BBOhH+FC{LI=ZfpXYIY^Kyq1E#TQos>7LEqL}Fl; zgJKBGI;qb&q)sJphy}XfLB10l6F!_v2WWiIsdT_p~!cQ>ZElZz_>J4|O7tNeUsyj|cHrw`E7ckbIrq)%b16ah!52VK3| z)N|nneiHe(_31t2m#x?Q2x zs?^5~#9ylPb&qWAV@C_(SH4b+l8Wn4qyh%V)zHr80Dy8lz=7g2q5+t<;_f)1w%x$` z-)o0JBgX=K3{|ENoc#a-JxY>;dA4Se-!)0R1wzY53y~KEA&2v~Kr12CIl@f^_yxm2 zwnB>)`jc%WD2Lte-2f;^Dg4;AD5lu0L#*(Eded?kt6{XMQVeWzRQq7P>}fseEZ}w0 zHL^l7m-Z!68!8%9D%OU>K@=%X0kpbo^4z5K?hGb-|Guh3(0k7j!8`Dy{czYujYR8X z{prICzu;;9j2``;0`wcn{lSeb)ab`u>bFd4kT2qSTu^{UjCdN&cAw4m@Ofx*Umo2k=p(%Qg&$?&1Zm;&S2VNnqZ}`ZsB9zYK|3=+6<%KO;_J($yfURkT5Z z8>KSoXJO~#c0PUq+&RQ`40MOb{=N*8(_O3wLsSAlR@>Yy8qZtkQZqCrI1HCYWY<8$ z(>%f=e+RIzV#MMbUtQvx3zZ9H^!l18WIX?w1yIC-0jAk`@Zb64&v~9u>C;~$PbX?L zv0w9C5?sE&z#B;b4}oJBZ&j@S?NATiI7j@X%EF2{X(#Xuc8wu14_Qtqw0b~;@ph-a zN_@Mq83uee5?O&;Z=McNLJkym=@O=9Yr~?oYepj#SB9#p?zWeI2qsL>o|~1=&AI0g zr&WmoEHr5{!(~mg(DZ8@3-EoTqTuC-Lpw905ke-i@i<*7X;0(g(Ms4=>aMyX#~!QL z!sPjE^|H*IN$)!SLhROfRxJNQZ6nhn9tGCxF%|fwp*L(Pfs@L8t@dr zMOJu4Qnw56={zs5#0_UOWN4l~t=1t}N_CRDU^mgfY${KrNLlfv8hZV#rI!AmpWA^xvkCDQIAkxHzL3w6 z-&6iazD&BTAL$kXDtevbB6$mF%4Gp0xZ)1T5}whqgMf+n)6DO!{dvBBrKExH;J=6G zR6nIwXkc*gZSooCz=G&1CrO6a8h-NTxgZnT` z*G@QXyBLt4SMK3zYWk2c{6-Y0?>N-!`~RUG|NEl_G^b!83I@##m z2xJ+}wrkw6u8^0&Zet2G2!+pt%({yk&g&4lK?|FNy{uBZZLzV&^b_bw`^@#GYVpc&7y!&T@ei8?dA;@c= z9mxbn`xtQMgD9q<2b=G5w97IlaR6Zt^SyMf_0e;X&SMIaZVMOA4X}BIwJ$){E(ZvG zwdXwp?UC%jDEbN{ha*ctEYVj!e8L3r7VuDx6P#0;!8i1k6uT7%YG+sgruDTi)A~Pk zmy$%CZ`MH269dBKTk>SVKgbQ9Oj<%N%Wm`6TUakJU1D!|0WUJL1S~g}O}pbDc@)4> z`dt;~)zJzLAz9qQkDxe#4eNEr0EspU*Y()$crmqIE6+?2bMy+3NJ$6QoudEghw}2u zCuiouiu!A}|6+bTX7rxJ(8ujP*rdEReB7+jhdRJLW+v{u{QcAC&xfc_3;*e_>A!mZ z*A$#56tP87jRV`)haOyHZ21FsFk{?;bMf9tlN$bSnfm{X7XLh)J}+-yK9unU8PVs0 zps#^}FJ2$>zb%#l6$gcK*!ccL8a}hv6M;E;IMzk`3+$J32 z?bQKVeM=ExVD4fDOII}5LUc$e?!{(%EYbP$>y#^iJgeAz-xb^$x-n zq|!&8fKgo#FpLBCk^&ka(aQvg*ed;9-|vUwq>n>!QPND%u+8iK?DA9hUgdehIm4>* zIW=yYzPIdGf@6>>2MqX86v21*yLeow$>iwHEyYBx``+501 zB=79UF(6{ADw_MiHT2rA{?y^VRlOh!5AH!-A9y`D2G;e%vU@K+dXi6Sb$;hKPrXt1i$oGpaELkVfItokMcc1 z@E`$S5LXW977o;NYwW9QAKjs6GYmU%e3Nwlrs?XJW2ZpDcW#SwHEeK`=MkQU(lMkn z+D>Ls#@eS2yh9$mZ6Rl@@|36ChkUoAEU-&QJEf2QLv|raF%ZVYw8lxnD#5Y`=KlNj z`Q#_h#2x3qgLhpCgi5?xe~(tN;>s#z3M(dZXOnl;$U=v@G_fv(&o{n(;t}Pk<7m?5 zu)x?OZhkL;jb617e0&A<3~WocL6vsbmUpPaXu!j`afg8@Y}~&Kfd?wf@4!iiADH-W z9a-!{5gYQ-9KR1CbRsW2_SaYDdQZx#CwC>-@3%R0gz@{E^oF-UI2=MOJ5wapKUBXi zdfBA?zOnFe?WIXNB?o?eENZjA~d4_ zH0H8^_l>rIH;Lv!0kyRA^2@uDZuWtOwsm)*ofaUPvM2GGpqZ$t@`I6U(Y^{id$rIOAzdx)QYJOSRLL7(RpWvbH|OMU4kkc52KU)&FKu1Si7h<+*Dz ztp!xRZ~*B2>cKXr&I8l=_OL-9SbVh64#^Xt3T^l522q?nAAg+Y#oTn^d_nr=4nHy~ zpAq}q3>VLtY~wx@Y5A4$%i8lWv*eu_TDCGQ3xW;hRWHN*mSi6XVdmD#k4!XsX#{_y znW=11b9%H2Jm6tQHP1GPFOm?+O@n%taF8OS9eA6M2a0jh`lv@8^S?!e&F4iTjH;l_ zE*vxiD2FgXY+LPiaYkWV)d?Ts)4>C?J>S6^@jxXU3fM3g?0WWWrn{-OS>HGwBNLBt!I@`wOY=)H@Slv}yAb9YJSN%3md@AONJY zK8C@rBd*^SQUH)|y3y|^;nMK#o#ru?D4KOapXEdD z5XfJnfGtom-RSoJ?1E#C7L+UAjZO!FMJ+oP9+|?@Gs{Sg}v_3QN+$Yd(#qk{dFf zTeIxje~M=|`~yUjTZR?*)l;iq=jthfJ_WW*S8oSYN>>;vCmbYsKAd|>f7APDoFfM= z-r;rH-u~BJA&+1%Q9)WuM1t?^99fA@2b2gZ(0;HV-uH2Ra2>+It6TA10w+wFrTVOW zwDC-oc&+mLLKh<92CIQ6rNdws62lXjuT9XKgM53OwSbEUfe9VS-X|7JAITX{f-yQk zuTe4Bc&4#`knFWzLLkglMK~BWUS->pn#0LV5b&D?Ra5u*zqtvhhMr?R+(q>d#HQT* z>bF{_@Tmp7Lxu#i#Osln?A@=$cIxDrpAw05H{T=qkGypiJ#rGnPNs z^bw#e7oF!VG_tzpJ2d8jx-+^86Gt`IS-#|iw{1v&(sFgXmEQP$KIP|2M+8)s8f1s_ zNA!8-iGiIsuQx{7-8&Z)XZQ=@U$7~wTJ4`5waZ+JF{DYEGR^!vRd z{P*>-8Vyl96i-bL4Ax7VjJBWHkqe^b4HGbK?F7PIHh{Fe0v&BThT6vxOCMKwN^H=s zLpvvS$M&yaKR}OI5Vjg;S6^J&NYg@o>%+p_cr)#PYJ|ib?JFw{;3E!nvWU$e*fukN60h zRZ#(D9Lg*9n5E!)Dhnb94MFxNuz)rQ6>>_y%*=c7ak5ZaGSwJhkAmsNWJTkO9#4Ai zs0eN^#3ZP^BCG)<3Cpyevj84#UxL`W? zEJcDClD{&NMK8Au%1L7$SvY?#`mbLI7uC7$U$5F;_B;qr$V@q?!uf@@&jCQgO^ zGeE+XpyjUBex7-m1r7(#JW2KdGIS|W~Q zji!H@10+wgBQ4ZrONUYy1~M!MP^7L$51&4bG)nfsuW~mMDrJ-0QbP&pPl_>i?>E%C z*gSU!I2=f4zlw_kFb41}ib>W`n-9<58k{6FSy~VQJP|0xu~}u z((z#PMorNkVIO976r3aaVbitO-~scL5z#Er9>$O{S+Chdyp4G#C)W?d;7 z!vYu8;{-E$ZsLX##tj4Zr;zwmSOekQ+JiKNvjTsK<6g?J6=7g^c6h%lOvrzCbwmht z!R3g`5&&lVQeH-9vf|VZosq4aCS5ebA6`P9FQ+e!OzlJ{>%-x19d)HN-Y=o7^l5WN zmiCgI19AACbBp`&2Y1GTk-~;&UGcaWRHkk5Y4^UUc-v?tk49xMXN?O=viU&eRM78_ zWxHmI(M3*E(oZ(ltBo9)t#$jJBaW)b*nOxs=Cj1cg&GP-nGCwbxV-qb8gaY<6aVnyxxUND8%O!H zFH@o=dxd+1)zgMWtW?Bz94!Y`WAE?;qdDowaOD7o@^OC&g0|w@o+o(^zCpTQZF&BL zan#YorKc}8i;SYwzaKTN!#aVU=cYp9sz5SVWnDdC-|ZMaYvXO$wQD{G%3j|g8i(Ru z$>Q3Mc6!CXc=bt*?XyTMDuX<+W@Mj%IqdJzUm%O_{7OuN0#Ou?e(mc_)kMobsYTZI zSw1y8$w@DkCONXQs=QoIhhAoY`0GqfD-MhP6dwRG)!=S^-=S2s`s>Dc0(hMCkg=+R zO7n*b0#_Fo6I&JydN6H_+VN$AD5Nv3Q0Mo~xeUvWRWtvtyk7aFh%oQn7|5Bnafri$ z-hit!?44CW@nd@kq`*@aD?R;IQA0YO%I&6za5C#}aS<)}8tBKKW;{&+GyV{*FNZB7lN&l4r=RLhMFm59IHl^Xq$l7zPUh^$lNw-{Y_%wDUJu0&p` ziDvTFV*v@1-<*p30XNd_8U8+;{IPs|Xe)<_4#@Ixw>VIse+Wb4Mv&cY7?sUMX#yz3 zc4aD12U>+aT(QDdfYOCrjAvbcB=Nz^OtttM#zKUe6iSIC_eBf(_GMC( z(kUn?$D_P@FD}Bx+oYMb|2tw$x)|7pD$7uNE=RkR>+T}ghsf*!vREd?sZU?sa~=*l z;i9EcmriI(lv|6Sq&q1;bRTK9$y+XiirAQ0Z6LN5*Yx0&yieauFQCg$u5}Nd zM#1Br+%LYtPiqDLUuLk(%CSXCz5Wbwbh#` z(OUp5<4Ru;Ku-@(k~Sx%+#9UN9o_e$)Ll;~%;S!=2sI)usM`|LTOh};Yl44K5#Unm zZbTdCn!YvI%BiRg7H3+}SmbgLu_o=@9R}ibsmOuY9Yi}tLpcywnZtg%f@@u+#NgB9ZcS&J~pJC%qx=us*iM<7eKC`+|*l z(pY@?Y0^%@?z!)%);55ULxcq4OrSBQ9_g;piY&yE(2y8&lj1^yyPW|53u6@YhP zSmJtw+ODYam2yW6Z||Y}W0#V>-+Mo&&Q9@q31|uW)Mi%`5?dj8*T=e3;S7~B9#V7rY{N7#JQe{hG@~d*SmTv#>{lmKo|@j7$f6CRm>mKHz)cB?NdRR3IX*?b+*yz#;?FsrjIqgtO4nfXB+?mkX?k661_DD5fj5a$nk3eLOK6>{$KUZ5QgAnCdbQd5juv;!4hk;tZtgYVwfx4y70e|`P zce!*xO~-I4^a1$?k?9a#sxy%MXxct)j^(%wP+}w4%QXT6#7l1qZk{TR*QylTsupW| zabw4+qXF*-=(i(_Pog#(=ZkEm?50iC zecjrET@Qq)rqaJgJi{~sbiTY|0gR}ljieFAD!5*T%q%R>t92Ead7BTCDXKC|k0I=K zm)wzUwdmv-FselQGuoQN7}q|wqPt(;wDXau<@FZX4<$n>v#Y=zrZ zQ+Zgl0N<6`KRu4HwmamO$4g}`jTCD_Ow%C7dw5gvoh#P~cgxND40JK#C-aKPloAwc zqta60KFdzG8l)7*VJ8n|OtMg0yvw9q5&sAu8+qK15Bkz?nJ-&0TA)S75bWHz($g^I z+4MKWzH}HxOhvEA1hW({} zVU60Ske?|LRe0t12*crxv63`kFXT(cSrEKpZHZ<+?cRoZQA)6sd(kb-_)DOYReItv z#$@@z>#eSj^rrNL84ts}Lqi-+Cdr`B zq{>r#tR(R8gu_CNXebKmrdAH;|FJPe@U~?dSwwR$*;nHC_7Fvu@*>IZ@YnI2RnH`% zi)cZ&M@a2nG&)VEqP`FLKp;Alaj$l=jbvD0v_aVOlfIa9yOVkh-?P@YK=sqKesl`z zBz4S5_XBIOqereaSGM)KCe4BQ%NV&^kqQk6RLIT;V%rys4lUn%cOb=+c!2np<~JJFy0{2nvgs zB7=%nTjY8YO^NLiVsQ6ksNlleb+4iZ(Z`*;_0EP^mnk^t35{EJp>K%xs1hk&1XupI zlAcMZNZHbfH_V*KPNU{@tBq>bk-f&kK5@8Va&acJrv1C4P@j{aTy;*j@SP`jSxqcu z+IfD82QJR!9`irBd?Q58#p&MK*~!%0lhom4b!O-F$J4=5T}NEpSnPA zWZolcjj4PKC5=ozj`y7tccHJ3V{)>5D<#nCH^$~Mnk9i6Govp;bOev5m@32gx*r|y z6Re?W(r-*e;67=A4eF+2zu{j?4|ix=Bgcb_k4drpjD4R9bgRZ6g!N&(j+4_g4>Cje z9?ETFzhLR%%d_D-=Nhimb|CMPNPJQCMg*SCZp{Ws`X&uOigN{S$Zxr}ZNe_APU?qW zH^!X4xVt5rZj@S9X+fQ3A1yxoFqCU*C8SxA^o^6UGgg}LY$#JHrcn0H`)zb(1F}4B z_T6mZSiN?uh@^3Aw}PwS;=7_4?>9v&2b1_Pzm^j9ELXS?Wup~QA6G&UhnkbXUDQv{s)tfH*;#&Kp2|VF;V$t;{ zftOKMLB8nwD4_M)Sp(qk3(kM87N zYs7nVCp_q~71u$IP}rDxijFHnoL|eRLJ~HV(T@y{ckVTf@U4!?ZwqABy{0M>+gn@~ zAXy)0nl-q{l2Y4|B(lc7(?m;@B>_raIs$%Hy~$r+M^&KpZ;yY8{lBmd5g6=kvfgGG)2{OWjHx%;$_|AY!r)zIKzLamG7r}vk+y{^m(ynV+*#Wt&= z%@9QW#s4}ZoyX-0M`2^1558M%5yOrn<-ZR#46C<<9nAWAA1#5W)`2;METfH)fvSDt z>MY)6{ob(Nr3#l!DLG@vPib}8d$Z}(Mw8dLHhhBbB$f21+0svpn@MQNeA!gB|E@a*Br+)J*$Yz+Q^%(3X+!J&otD9~l z0)#Ps&g9K6iko6sA(O4ym`Q&{H#9Ge|CL#Q@?Vks(qLEXjDQq}R2i*Cnv>JQ{hD-d zSKGCy^EkV=1wP+L{PCrhQ;VN)QZ`{Eqs$b4d#|}BY5$Ki+U8HP9}|=15uM=t*KFyB z96XLQKhX8=L5HvLasqvqVU%f1(5tm(FFCmJ*A@@A1y+e)SoY@zS)^9D3^fagn{RX{XlgR6z5H_1aQY;aNIj~o( zHccBaOlvpW-_Ov+o9*gEx0{`A<2r`in>e`w8r?o?n12l%;qsLy@bcrF;YDAG*KDCL zB;4BXo=&lYSY-<0Tq5LTMf#&rT|a)++)B;IPnzGCLB73WFjs_9c=nb|u05 zY!=VD7TUMiS$|=Y#uO5k{;LsrT8&IOmDVecLo~kSb!xgl-}$v>PH?+wZ}o7m|4gK| z6mCz&KG?nW(4DVX?~mg8X@(3x5D=kkCETaMWdxTj&?S#fIRLSS?@o0 zX4<{wIL;_BZi{n#o9dwrU&t>UDd^%8drt|xF; zwFuCG!-02yODDC;Idr-u`}9w4OXQ`m@qLW$c|@8=tBmZK`kF!$?@RD;^L#_U0)6!7 zR4zZvH7rs$Vz9f&<1|2OSM{ruHr2`Oisr$HZC~-_{ae-!nAASoNe?-fs7ZID8@CCw z{LA0IWD}c}5_ehdein0{=s-~WR7rkc-@{QG#EV+kqMB+^iN1w*hdVk6;TlNi@5~{e zO^-*v9({nSb?~(Nz5##G`Li;LXotakkaKTpyyJ%l}&!y>NmJ#=*fbvw2g?jtyO1al6;u0!v+Z} zIme;RdJ=enjx-EG@Q^>+w)M>L>X&d`HaWT7xVOL78d_Wx0>zLTcX#f&yquJM_=1|(H0x*)lY>Bc52U1DzMLDR_@Fu^naNa-vYKz2 zp6N7!@TwnPw%RZzMaAyrY$DV&7T%Qu+u_1XdJAa|F3t`7ej8pJwuI= zZ?l95;#@)`d ziYVmhW+ApRHX8OP&u_MC52TM(1g79#Zf zm2SB;A9#R7rO#YgT1kTCrWM$zLwh85EH_txO7(};7^Beg4_SB34O$Y@L~*MxSkXnH z0V|XjWemUfx9jw$a<3alwH__*?N*nBeM}TR1M<3vpK8}bEaxUK_5pi}vcc%s?aO09 zZ|?@wd|ayeHu6yv<5g!s7^o8InK5US9-32uWMfXgkpGBXy_IyAgI0ex)GfZ0@yhoL zfBTZ5xRt`3)bvp;dV~H66@MhxrJzJd;p|NF?Ov8J|4z!Vwcc#Eayeoa*`RnwO>`gnX-Y zt_A62{z&;mOtv2y+#g607OX7FY%McgY_Z(Wp^{Q8fvbNCEW@^CrU#p0siRAX*Mk@iK#(6*4j1%^@Jo zTgJl~$F6;2A{V3mbQn@=_p&zjH&e$;?q}*jvUeY4H%>Tq4YbhP!AZu3w05>cLxS&0 z=uo{KdB7bI+Rtov`SMDP<0~rfl?-t~*X~E0Z*n6ipoU~M8%I_>vt%Sq;yR>LRGTFq zx6R2fFROOkZpLVDWzP4+BPZeA`y5Q(_bnCeNIZ+nuUurkF>!N=GF7wml7macedAV1 z-i6LYb0Q3C?g*YsY3Dw3XyMzE2V^pGxnsx6gG&7B7wweUFm++sZXc3`&dJtu^>(hV zOBw6ssh}1%o?d2ZKE1aa!_$!}KZHf`im&~?GgQ63_aLB=&`YoW+k8_00arj866qu%Xl2e0K)^dveEb%k zkY_%2n01RVKf6+AR(d~RX;_5eL4YxZ=ywsK5!JZI+I{a%`%`|nPI)EkirR%u!H=#; zvjon$n-l99%j&>G;?2}3=(&&vx>H5hFp@kE-mBlR=->`wMJC&snuY)Uj9$2MPXj#r zp`07H@J6eG&n|5>ypp-J<(YL)U~gZUmQM4FJi-@Tj|N)^Fu7k z6^oK<6*cTGb3LJ_Ou0$3<~ z*I(3=g^t=GX+Oci^*sQJiVVfM>m^d%+X9aElW$AssRyQ^ty~Vvx1LTsL!h&gbpGN~ z!pOA}g-p9|vD0=PY#GBtLzTIS^zDCN;)+zhp1;KRl4(SauE)2iSEU8kv_#Vs<{BxxNp3$w>evv%*pQ=Nrf8#Ij;RC}#Xdvke4v zVMYM9|A&~>rt5`Iz{i9W_)}eA3>nGz{z1QqK~Z!>(U~*i?j`EJ{r5|&iqlItOUTJ8w1kSrA zjRsD@V@am7qXvkKXq}|*OU4EITQS!UC zr`p(-v)5;fF%m8u3&E6IrduwP#|Dk<^^6)#YS*rmWqR7}u zJ~rQLI%)Sn`%2h{! zs4tv#i^2LH*}?ZpL`&nLnT;}Gy_Xm-*y{W7Tbw?>02#=t0Y!;wL>8;VOWgwX_@)T8 z>q3Y8_pU7F6#nQ&7^aLDTRq^GZf?K`O>we$sE{2}LGhu?RYu=%9C}05_>$x(^Ts*| zjMoMB7ph1yDQHN3hyw=7K<=SxeTY0UN=x@&|I2ON3*e~SWe{i#1^y1}NsA`uU zmHfx9TCPCv;+@1;W3SSgr%V1)=(KGyrm+u17C&5Bp1@-NqL8gW3I;dQ4dI?Zmj;j4 zs{}j5R`ekYe2D=nzA7eRX}h%{lim{Q5MZMaDm{owV@XCdF)ryNA`4RG_ZQqP}-h4P7d3>h$Rc zOecMqBkx=)^s^z6de-nmWYsMw0ir|YZ-hMBsC<4MQ*Ytaeeg$cxWG3~Ypf#O?osUH zSnpKdM>H4v8NH8azTm#wGoc>8^L@1OE#c!KB7NFMsv@Y9F- z(5tIxeKPddK>v5MnfN=d-fba?TqrY=H~QGCi&k9(>89pca61@+r*(jzMgv?77S%A? z`!7S53aNkXkrRoC0=E6f4VbPCez*<%It>&25?2EpTCY9Q}mqRG{77T{AF3&!~U;c81Z&kDPw@WZq z?vlf?GM-PNKzk=+g%-Ys=9=O>+CaCMlq>E-vv3#V6p7em{`U2qoya+E+kbp9`7N34 zLv8)c+sab2g6tEt56ui}KLiHXh&T0FP<{3Dr|kTtcE)=)x%G9vBj#gKBr5|w(=3^w zXF#9Tv2Fj%{lon?HV3L-tin>t7a>+A!`WFN(~rEBgP+LucgrV>1X|E+g?7?qxLF1ibDyJGX-XXch!z+9|gBA~mr# zG60FMgRO^B((!b~G@AMP{22*0Ts<3;nHwcC{aUN+P*;2hGP9y^0eI5wRi;rg+dC{2 zP;PE51ijm2ivAdU=NIuLiFEf3x7)IJ2!p^)$7lJ@(wDP$klD|ciSQ0ycl=_wK`!?A z8uV<+W-Z>My}u3Ut_$%rZR>S?pOHN(Z{zCHOsbU~@cuURMy2o4NLy(URi5(!>Y(@P z{>s>v!CVl1-@)-?m&h;VYp}c*f{Paor#4sgw?rEZ7C-cuwflKRs7P5M!~MghZN zhecLYe@ePjw@{bp=VJl=6zYR-@WP$KJ3=Z9jrW3y9Q#WxX^(e*)AuMe(dFZNZ zI1^0?IZ?12K8WElsBbU~Q#_PXyE2i(i6Yh)rZCwY0`f2d3~;z2Ngido9O!k zkapHg|7rMj`#jU-S*q4P$sPXZGQO0K@f7zSF%u;?HY|%|0|%2(Oav%+Z12_{Qu*~lH>3|-WMrWB@5ddcZk2dZ&BlqPXEZmcJ`_jt zB_wDcDbMLnNZDHR8|;=|rx*QG{_N$;Dt;IbNxkqfd)&i!saKr89(}z!yBTMQ-Iv%+ zU=o~#G3|}p65G$78X!*I+})qQyvOgQ5V~-1b@o;(gq0uhs4HOP5#@#zqw&+Lb#}#n zWoVXd&xJy+KB^dbbkX(thif-%WzJ+Dv~&4JJc)J5Dn?B1-K3`UYgW03FYV$B+SauT z^Fmy(JAQFs|qdiH3%owR!PJwfqOojVa)li^|-0_ zYKL#O%xLx^dP}$p?0gdm%Thx0FA9 zG$_*~hf!S7#rM3hU1&rUx~My2As!fmz#ECRc3AIql>raWD#Z zU6(2KvG29Hq>nOE?%Q(u!h9A%Jsh9TfqOc`xzD>g>%$-+NbQ^YR810~_Obe^o2cOb8M^N2o-YR=?s5Oa9!D*2^IZ9&Y9F_h-5ow; zf`i8On5U{gob}Y@U2&M75Ch}DvdDM7mW&D!Pa0_=+_6(V5XW?xBWR0xo^ z@`6_tr6mfVrte1fgMdf}L1?e!kXqRNXX(~2w8iz&Ac{zS*v04Y`ZW}p5AhR!75MR< z=*7`>#Icaj7P-%!QAZ&2dn&0u3I3K7`!m-`4_zhsGnqujVPtsB~UWg=UUM&3FH}vcR6#2fLjaOe9bKyPcUio0!AZH zr(GS&O*d9l0HT=(E-T0AyXGV~ZHSwdm^K}K^U%kAk1o(@UwwnS=6eC`oyI(UYk!(< z>$}PL#=<9EkaXN*cEC=?8($Thk_oc(B7j8h@apWw=i7RXKZFb|w z;lww#5h01+`Y)BN+j*bGuMiuLrJGhuQ|%VZ_iYH+8JLWUg@i_CyWL^4eM0i(&h@-e z!KEZC8W^zQnqhT(T)1BOhhQ^6q^g-jnfIT63=oZ9FVE7^{*r_^@F&KEzfY1{z4{Ds zx=24>==1vbX)C?m!=P8yP{K_b;nQQxnb5P#-B-B{8zb}oUwhZt)l}An5rZ_rAOZt~ zW<*LT3W#(F5Sj|o15(T&B90710tg|AiFHsqDuXehsOV5drA9)N5J0g66h#OS1au6& zgb+0TAXB5iur#4~j0BwVZ~8T9r=QM2v4FD*)x zq5wI2jbCd{4eAE(2#EUiJ5YtD|O<$*y6A*!>?eRocr$##ESmn$ z7Hk)CD9bM9U$^d2V>wW$`52eN-DfCzIOlp$=w?onwF6E1nxQ_A(=6iWOnBg6~%-Ye~`*LqtFXG}OyH zO-f5p2^k=0JAk9r=<3{WN(SJU*5eR!f5IxIh#F&z1}ao+i3qp#4r3WDd)+Q>n%(ST zEjFbPoSYfh?6>fgX`OF4WJP0ql!FY% zD(al-R~x*qBc4UAJ4=pKejzxO)egVW1Z*(CtoCk~5*{_w{qSuWbp@?)zS|-WNIjPl z_Kz*9(IWRH&iW*VGrgd08fv6HE5sWndJCdb5WRDUc3YCnegcrkV=OA3)w1j5A^oR0 zQFj?{*uS0Du^I3OGiuq3qBl8}v(@6!_S+$>p+DPWhuBH2%3CV;h(PxY91QOy!vHnp z?a7DsP#RzR7mlDZYQ=cY;4$&3-xRhHm|1hnl}L;bOp%E2r<63J|Z^ zS(yi=&rp%%2mbW(z{BsPaf`r;Fg_S{-qTlti6I zZ?l%-p2X*likg&mm1!nfeaj9O6)xB&?NhRla}>_R1zmk#d71x~x^_aZ;HK8RkdRoB zt0UZpoube)@QKubdlm1;5Du+VK8TMf6&T4HklbdcehiKjOHF7#UEnnQqVj6X5_6b(JOFMtg3>x!@X&F*$@a1g-_2G`8 zk0CX_gDcDd#$)(}R;5S4KxdWAk`B|#$$kDtDPL2o{iX{wcL&9jzrZ6#xD?o5!e}fU zp0mE`LO68+0Z*nxN zX-Dm%FYyv703 zjjsuO+kMFTCGj*(=-|}73etGy_A8*7#a%%?uCbhi1&xs1&z^MGj`y-t^fZXs7lne% zn&>7$B6^A8=!sHqZ|{44FY4PRl6WN*kfpv?1=*-!S64Q`7Tpi`+|N@q4%uhZ>){3_ zn{3#v?=bs$4Ldkl!QM;kaG<&U=W?u{guEqUR<64~vL>6`p+D|_>&3&bC+0l9_NKzU zE{9vVt_KI-f1r*JX1dLuO7&!Z&9%<7Gtd-MI*6(KE{%DAi60kwu%Y19NA9dopm zBddwGA%vPuBD!-USKkfA`N!4G{sBuR0M{;h7z;ngJ&rGOKlMrtOI zur~?{83)jQ7Q^D~`b%`4l(K0DAYGM8z%D0HOd?4$RD8=;HfU3y5BS6O;zz+dp0~D~ z6NfD0=<@+Ac;8x;lf*8jVd9+D>o&_l_%bWjibKO4sd%5=YbQ`0*;BU%k%g7BzbVGzkB- zwIzDL9)1%D4eT1Z4RAGTo0e_AcWBKV{SD4l*%h{2!ZFPE8zEF`b0P5{uGj2pe9HW@ zsN5jzU>TEQ#D@}tJcPL3jVrUT{-@ZQyIj`;@}rvWhN#kJV2m$$L6Ktnt|wF0tWK*^yA#~q-7Ud_26uP&U)=6@-yQdLy2n4` z9I7bWReP_!)?9PV3YL`?frr6{0RaJl7ZVkf2LXY=1OWk0gMt9ItSm%Kf`Gt$FclDx z6%!C3khQZmGPN)S0TB(3Pk?4sJis4Vu{T<=VC;`EJbY+}@1}DKIm~4+I)v*_VHRs% z%O{4mv_lKAG8~F0&g(;iIZD(NYSN;XFWSx+(t3H>d3oV^S-E)3xUu)zXn*n;N&&(w3K1*{1M=2|NM&?z5CS(B9g;Ab0y5W+tWzR#SQ-Pm zGFD**c3n^JCsxEDjW9jut)_ryU{O^OG{`r`s@m^3_p|W?_u(C8uGViVH=qN$M?1`x z_d(JYB0Lfcyr*lML6BnKtg0ik2t+k0zO$t5Bp{W-9shzW3u-2M1JQ}93aZfwO4Ir7 z_6rCS%nT?^5V)A=ikdFb91ILE@*MoNkGKsc?pxAMavO+RA88wCO>mYj0?apvovcZq zw4Jyvkmw(vy7^FpV21dHqabo2lldhF-`n}Le&8WP4f&!+z#aF-(!ZWhNS0g?8ZTf! z`y~5foMe}s32e#lV;0u#r%PnvE`uZp%I=g(_CtbDlKF!jFCe*K{{Txt9@yC3Fe0I1TN4;rh7@pjEN`-^${XA zfV?wKf1i#zi82ZKJL)zbdT5@0U8S0JsoyYXr<(a8ynbJ8##l&rFo=##`20L;2S5HL-K&) z>~`aa&Q2KTYZOW%q(UJHRu|;Z1EJ4oj92BeAk_ZAP2Bz=TC|whe3C*QmpoCCk6o%+ zIEBEIKqA_4$ij}5&961oBW+QtUBpWuTb7BON*t3Uy*gB0rb*IO(v?;ijS=+%X(QMY zxdg==4F}zwTpDQ>$r)9LGJ{B)#!LAz;kFcvk6*!;x+{8)N{+-Qmz||uJq8~Dk7P-a+=aN%Br~a_~E$bIHS0t;p<`BVZ&jJ_)NxJtcWl{ zVep(p`hss+>*X=oc8Z3)hH^?0pJYGD)Tv!XW6OmXp_eJ=&*U%{l$W;id*-<1+vsre_WR~17*%c~{9yiJO07nXScY3BT=w-BswL!+;t}={2fHd>zO?TsUpk+b z>MTEta)bCy!uwL=B8&oOS!+@J9P6^N*@_8#MgkmGYy)g2Y)Q;X_%`?pxCJ;J>>`{1 ztRwn;#(O=B&uJ!_=8v6%!@WO=$8vi%>x#K2y8o3 z7ot;AIjLT%deqleqpC8ijj9%D2&pP*gwvZ!>KM^qql#V-1K6+f#brZMy?+2?&qMVM!%4^1KIs+&=TQ&`qNbzZ2PSJ z92pKCdj^NZHfFZ!x(k&oRW0dqqgJBCX?$qnX(F|hwDdJ`w00J$7MU9zTl5#( z7H=9OUCG>Rxc0fWIm@Y++bTdlshRoRSvbzZ1VcWpNE<8S2xyb zW_O}160D0)5KAgcJXDm*-1d#v8zw5oGWR=1JGx%9z9{gDb^7rhb%u3j5S(S5X5D86 z=At~rDSyssU6-tTUHbV}ExLpphpZ=x-eG0;%Z-Yb5m zZa*s=?eK3u?pc6o-(JV!|g_NBaw4t zGoEGHL@7B>AXkFxp{b>;<%;w7ll_CugOGi0{2hFJo;Bxh4a>#t?R?qUxyV-EP14w~ zyzEZnE{d){`sL^RxZM8sbJd}LZ)ZisgU7A^KyplNdp_SDd#6~VkUF4D_TYY|seZ2h z?0Wn<`yyk%-HYyV&80xxcp7{UmPD(!{E=p@FD>+9iF~OhQIAIIy7a)+hHdja zeOamPtx9XTX3M_Ym0hO(N}svYEPKU*CXctDYtB*r){hyl(B}kvYA*|{N?emRL&p-& zakol+lRMej%AV7_h0%tJ<+Db6dxNdPag){ErK;1avzFGDpEoEcZOxgk-e-Kr0^fVO zMNlG#@hLgW@5FWrwrxkwVBd|tdy;v~Zog$a+L2MXlOdNG$t33~$z)DHPP0wN z@@T)mn+lD?2(1C{5Pg<^l7HB0(oyTU9t-#`)rQiF(oW+=bhCY{anZna(S8xRLei$8 zN#;R&^V|!${k1)^3qOyns>5tB=8>!@N>xm{hy;DFtgtN&pLP-un&Y!K|o9l zSSsk-85&yIn^-&8(;Ke=8=!4O)$Bn)&`Dl@Z^Yz@Pl4;tnJTI}s7gt)>swpWd^WJw zGo*2`w0XS_2&W4>uxe@O@R`8H(!$D~-Gz(rUq`S5>#v(>2?_pnh=Vy7p{kTDfq=E0 zAptWD9St2JHw*y*0jHgT5xcyg@Smpx|8WtTI5^m_)6zOSJJUEb(pcLW)6%oCvC+~o z&@wPk14mHXyIMJXcA>ViC;Hwea=c68t(Bz$e?-=9D3 z)6m8Ae_OJ$|MRhc2c&)7LrYIXNBi$<1E+GnZe^D>buqM16Ew91`V44;o1Tf0ne$&K z{GVO_+vIcIWK1NP_1|GD$e6FF&LpZ!1j z;*XC0*H)mXxnVeI|2=BlFl_|QzQ91@nhMG&0!zTmUO%9tz#pzU`t0bLN6NKBnms^OZmmeGhEg zGSE@#fvah$ac?2D8Ss4a8W^n|^EPtQ**_>hue2c~Mgn>B4__Oz-0_3lgODl-GqKeqd&^NaC6JpgZ~B`6Z+qHrL@-!}^EMZ!FV`-lDofohZj0rguL z9RJ65K|tST{L{dKylH^u)wRLF!v4p0d38G(|Ec2$R+-;G!C4Ury!{7*0s#(lf%yB8 z2lg(01o7#zG%)$cb^)Us`+LLu|1>(V3&z!*9gzmBrEm5-qZ321q@fCfC|vj zdEQ@=A1$|~ZjWWkXw+ML@b>nuR;9Yng!{15zqz)SExo1iaB+E=d%iWI5c^T8P%s!} zb8E}c!dL$vx*6&dFwMZum4kF`HV2Wh*&WD^=BoTWJU!zp3D)^#V}jt$G3fOKDYTlI zu8tNG&v(Wu1cS0JL+jTPI~N+P_khQ~+@Gf8$fhinL#C%uuQfsCaIy%&WwTRF<=%$< z?bBtVy_&(YG%~uNtjSXIr=@n!R1Xi2xXM){78)gt><{v}qH#>7@+sV&%_z9F>4-Fr zU&Plkz68NKA1^{*bo(BK$K4Q!#SkN5S#+)9{?bz1~7B5}yab zv82=R$|;T2)@1v8vSN-fJgJJ$w^K==X_xkgMyKBz5|kR?mT*t6uCMc#+uSJ=MG=bq zLo95QnLKW7_UEef3zHB(A~!?v>OyJVysdfjJBQ;l77X~_*cLX6IXY|x1E@B)tKnRx zOGBYh^zi$u0})^fKzqi*1~9VQuFITXTq!V)q>(VXy7s{Y)WBts^XWppkJttOts(Gs zW&oGR`KXXDnQgVy91Z4#ARz|I9f`#l_^ZJhKOz4~Z2Mj-`MlYM>GL}4aQZ`u3`1lj zJsDVFBp;UkZ+#!{EiqsKHY>BGY69UnEC^Rt(Qpd&?5NISu;^4-`_m;FTN}M8K+ERu zKi|ReW%Qgc^(^xJ#xr-b1IBuCvN~U5T*T`Gdbv3iOXn%0KM*1H6%jxGJ78P$2du8= zs83frI&mcC=);*jI+Z#iCMcMXPt>&zL-OYr7dh;X<_d9Sa=uq?T1#Cv*N1Fw7u(_7 zPQ5|MGMRReNjG2@@8aYDE~Nq za*niGY0{71*(LV8cOdRg&befRf}_=G|5otWw$YcCBNDm2D<6&cTO-Sk0G_*@1jYP= z`Aq3%F+KCtl29si@Wj>S-cRBxtZu#gwXgVlG7+(|ZNi`S7n>9+b@+j2d47H%c04@w zYwnjyovDeQr&O(&oi=Vhh~(PsczI^T<4~(MP%L&3qxj)%w6`0r&t$y}>UMuwq*cWk zYWb^PQO{4g(R9N|z1<_vY5%fD<>Y-F^#TUMfd`z==ZWq38;$sI4(kXkKH>Duic*%(5R@6%yWsd#lf<42^ECMer@Dpjd27pyyeR^<$k)5EgE zZ8?P@DD~gL#PZ?eqv=u zrZ@jJg|&HbkW;K!q8&b&Cvi~7e*Qa4;3o$x!9%~<`9vBReiHh*0L9@%TKucyB@IU& zU|zAiU7Co(3%!5;eyYw~1)IywAt)SK9uL?RRjg7XR$a}*2?e*&FP-IhFhiM^&8His z1t}Iw^1++O+wJ+0O{?7_V7cA1WSdmjK_i+k?4;wlSs;EO6eE$rV2~FYg*Z#2!7BPN z1nG0vf}yqz%Q+N#XMk*U$M8Tlki^Y|rbVrKlhH!Ppdwq?gn;0hU5J{|b3( z42#jI2oItt>mMQvxi8Z@*N}s?xvQo2PMiHHa;KhHo?bt8>xKGoU_A3PLVCgWqOtprgV zGU>EA;v0Ihp(Q*x$Ni~qA@LNu0^FYWVa<+5+5VtS`96MLlOr@b&5~~+;N-hC`LrEZ zT7?)hP9QO4ZjP4-oR*R^af_r zI+*qO>1CF5I{Tb7m+TJYHGWoX!E^R{Ux@rR)lB*K33OV0xgB_=V$EQ!bi-<# zjsEadam}c7M8L@vct78fs)7YBx}M7hqx4;#3EH%|UZ4jP*d6UFwL8ldeh9@RBsLX$ zhbf;gDK=Z7Q=r*;@lBEZBArGZ=T395d&;|&lGwC5*CBM^OQ&wG-*3$fGI!7JcqlwrPZb~f4XD07flc&>i!O=@$ymJ1Z6FScH;4t_dY z$@h5+`I9Ze@QfGq`OPZ#ngGI3Is2 z>X0O&H(B_ornFpoccWOf4w=&=r<=rP&d%k29To_WCw+6mGoI>R&DSKG%|BIOZC$|M z6#$E2I#oz7E?BknhUo0A+x20&p4cwlg-_#GwR#6OYK{7|w;>%&=xTVO?pXlNQ`>5C zM^W_Q>rZ7get$IIrczdm&tVnE9gr;`GLF@5ZM)H*U9}-xk`Cjx_V6}%XuQDLn}mOA z-CeuMPH2GwH3b|(XW5YM^P^zMI~JNc-8UqxF&1$sv%J+cJycI;177S7r$}1{4T6Tl zarMRL9WUwmWg7M5T{)7;@^PH5b}3xu(m_ygzdBLy4TfS29TGQ;HiuFZLojHI(V{=n z#ZhR5IGwp;ChG^)S}y$BUz(xp;AwO|c^@2=6xi1hgiJIZaDhQUH^<-2_SZR?KQic= zy6#+^IYx^IIo`MO=-M4#xcHO<4Ei~&@B{Vq)n`-{F%GB0tQeBF+H$y4RiAwL?)N6Q zAPwW3(CJ#V+nT59wah)|j+fjh8tB~uhkVL9348(|;c@vNu03rU^e4kqmJoGwOz7JN z$>@R>GD$)ctGi}ZXj$Ipil>LDtVJ?9de`XniKlQ|LfqXZHN<;uW`urj_UYnj#|&Pm zwKB%-zhq^Cf+I{BY>QsP%bU+CyPLzXEuX)kj)zT8`Bb71UmP!0!N(v1hcEQ<{J=Au zz=Z=~w54)w6Ld@i$bqmuMl!W?1H}$6u9hZ_5mvWNGOcaAPdXRJ5pk{d1JlGUCdASK zhcHo{EB(YLQz_Htdo9(5qI&wAx^foBi>@Ci=mu{GBJc{@+^^3OaupR*otsR6*+QXG zBs6vweISmN(;e@>yI$zN{K29_nRz%{v7*~R7J8`#N?1vy z-ufjxS4_!~o`FYCg>NLGEGzcJnI84A8KlDHW%VmJOpD1-B2UFko4OL0<-Ws{rm}~( zMk5l5E{nMF9Chra{nw?+(seDw{^@mLA3p3*N@Ds=qv51z?G9I|hxvdXqj)WsUL{H; z{90azrI{l>y%;9b)!{VK!IY^d!(IiNykd_&cni*xc0Ogm^H4)=+I2Lui*rvyN(wgxF4@E_^wfKG_Ant=cM6r5Z z$kHO7VbJXsmuW~yK@__bcCk`PU{0~q9ZIHRv&SF;)RAMtL#6I>HxdTs zrt3=M=NuS=rCd{e&(V}l*$C%ffZi(BrQtcV}eRLPOXTNy%*{&MFpEv56_`# zV!oSvK>TaO%g^IuLrI6r;Uw9oUFm54PQKw#0UC~wN|Y+F_3#%laV#(wga@||QwEcI zwWNC>q~><_E2{gRWYx5TEhVdo_%z>(q2%OXR{V(Rr7l!y@Hy5K)jWBetAm|y_KT^q zxCjIFJETkEux8E^i~VJml#Dy4^4Kd81JW>}LRA$)J<+ZuqQ#4}aUT@jQ@Rct^g*fI z5V7JuA?|~KTgoT*z-diE2UFROXo^H{X3J$>ZSAVdi&a(|6CYD;RxFs2nl^ z4#7z_=D&iU=JA~+*+Dkh;_1bpQx73!Az<)Wz_^94a5>-7@r#G8ZB zTEQ|#SKrTPDpq)R#?lK=NF-#B7j=@ACN7xX5VQJnF7)e;L$19I?jfims`feqS1LU1 zvP=X#7L7t+wc&`kg4(J32u-JYtp#6|zB^Wn?7**MI7=$mf!-?=FbEFC!M`SbeCYTH z7GdC~OH>N#%x59)K9Y#X1wB2eZ0eRKr$ZE2uC%wchw=)BlPl!2;%a~kZ^v(>GFuX= zW#djMmZ^VIuQ8I6ZL$5eOh(rmh83$^q4pX3dz01z0&d*3&U9ij)LL<8rP(xg3e$wf z6;Yry7OgVXY}f@bMKno+eHNL;Ed0%s%y+vwTB=>Lo8H8rJ*}`~tM{$R^An%R=&D=RU6=ytU)yJihrRKhXl zb+M%_w*R7_vrHZuQ!aZN|iJA1ir}&Kht>ypPY?`?`mJEY|#d*Vr*J}{;E38 z&wJ&wT=z`WNnvCZDyDXaSJ|Te5Xb52vnSd+{&iZ+rLuV#IKn6@JrxsRq81sJY%4pG zc=eVh*Ti!a1fJ-}1lhdt>6%y);{Ht}_X1s$*NsYl6HlQ8Gr1I<4hs-5xhN#!{;Hiu zwk5UhH&$j-g>q5O3>J%xa!0jLlR_M(7O0rL)*d(SXS#i69Of#KYb_5d_L;~)1tO2z zcE_`Oit*2GmVpUs83e);4%(B|#iLNACnU81htC{SZ?%*^EFMoG#sj}w5P?ypk%)E3 zFBa3Q4PdZlcIJly=ZbcUe80H)W)B!jP(RxS{*GtQsZS$UwH6b?N2g@k-!MO!&nQ+O z#vIN>8w;$n0hxFzyYrrb3MpXn3~JEpc=UQ;l=@ALyzB!lVb_&5=V^WX&PxRI{7BO4 z;^LZ6LkKYxxJ>i$sA-^nP|w(D==iX<+1X%#>?! zq_EoR1qH+Y+7vXn1(Iu4x_w%8eo3n^VF-d*-Tg%0NYM9!{?__$gIN<<(p-w(@KN7^%N;46WZ@Rpw;Ts*TJb zI6f|~ii}CDTZidOa<#V*T5a^>TLektDFQ+uHHUM57@pACdY{r=zjp*4hx9wrR(r$g zyb;7Wjz~{QpK%&G%!+~QTZ92b)m9VombmjB3@@L zPX9B=X!`KnS3x(Z(`VLD6Y*Kc0fG5_sxxOW4jHnHpzJ3JBha3+4N{Y_W3D(733N}E zFerwf1!J4I=#k`A{87rntqUdd0uZqVXrG_6|f zcckm~XSX0eqV+*OUhIq=fgYwP!Yd}o>C%OkWjUHLH9{If3e1)-y|NI+3n_JGvIWw3 zwI4tqnPA|m2|FZ{C-W^K5Z{aIX(lSxFFH>Z$j~}+Iv;zaa2RK>Cx8s15dV^6IIcyy z5jf(g{aF&|iKSj=_o+g(qhkGyi%dq=zzhrz+`<4x+O2F$8mZ5Q=!9YgHIJ5bCX@rBwCeRsYFSst2KOfd-yDa>tUA_ zGF>K)m41j3MRpNfKeLOR&cr7%{0Y**;v-$F+f_)uZKd(@IiKZ1z494pt?s;z!GrH` z;tLWnHmCrvzZ}9}6Fu3fyp8WLt(IGhJh~vS>NT6}`i7rGWFPEjo&owR?xPg8v63c5 zi|qykiA=^~Uh}c?{TygdW7RtsjA6G=Kdd{bB?Z31JGl-69(EmaszhbB*77R?&-hS> zOmTI-6plj8_DaddkJN_ALFAmNs@|EoTGzJt2V8yQaGXzhlq%)LRQg#aLr~$M0{&3Q z4#>lpIf9SJBf}TIIv8}?@5OjmuznhopNYc&1S~(06e&PBBVP~$s3nEn$?U`i%|jIf z6Tk|cU6o@RP0w-|$K5%AwVt+KX9#&B>UvoqN=&1;J+-PC#FH|(l+thm8iKj5!r7w`3;dR(e z+c8@V(3hE~nxbObZGY#BEs(4(J0Jb(@uPY3Qsu`2+IA=wVcPhAbX zce3T~y^;f>ESY19B5qACVV-#WWGyB1a*M$k1H1b*E*HQ#ErF{|(FEp-#mf4C-WA!! zi#MBmp5X&JwiX~D4ra1Z$rX~czL_q!w{=Va7OphDq23BB;)KYET_iG+WrZopg8-{dIUQ2rdRffsrzPa=_Eg-it04@~4~<>k5H zang7sfw~hDe!X}PKn-$M#_hN3us`EZyGZE5@Od(T2#dRE&T>G|2o^YBvl9ar98U}} zbagPBgk6Bow8SPfNTQ7hF?mZ+Gy$5GjSg`&~cS4M;s za9EsSPREOR=LU)0!%8Epot6%55fehOjbhj%XIMaCp&)U@e!Rt*=l-HMlY&;`+5%Uk zXJP+21SeabWMr3L=xfB$6ope;tS+mKk}gzWwj#zkCy&=<5(=>-(rOJpu0FOO6r_mv z@%7o4zWlpGLNUR3AR}p}LV2t|VPUu1B!d+nDulpUU9t@|NYgh#!}K4xG-aF`O(=bA zb4uxW2YVr%;|pHq+{vp;w=9MGJA6chbPN{wQ7Xlz^OrM(g^E=o=5zbqHV(ovcItAg zs{lX-D*gBl7B~=z{}UkG_5j{fxqq5aD1^+L6Nb_ zG#OnSrHb@)ywV0h{mI%_o39e&0JF~mF8w5n$z&cF3IKj3LOe3bW`-ToA+b~z*GwAEdp)4{FS{Qav777#KUU&z&p!3=-I z1T5d*j{7`8?oJhX*IMm87)k9toTTpV*x6k4OO2Y3R&g#DdIa;ywhG#AF&|u)Y1CS; zoDkC#5sSV2%zya?DWaTw@ z3l0G-PYo)+*m(V>bPH>t)fAS?<@8HC`DOSLO#(n3|I7bE{Zsxfs7K<4N5V7mD72nUZ>ys6kcuEyz zE5ls=>%;kZy0$ShlGaTe@W7*mh7vpIxmJsLh7@MY6h&L|t+C8Z1bps8c`av3@Wf7n z7RVIOl^7bWW&`$s^cJsa_-egHd~OdgfMS}hEl-#S3Y!W(T_cp}pDcg*JEKby%}ePf zoNtXu_(3Ap{%Xsb=5W}hgMV~IYI8Z0AE|yoZD2|F+T}%~RIa3qh11~cQ!V22bF+xE zH2iM&fcaXeF2(+yMjr~mesO?!%w@G*m!+bmMNoedKAJ>&Bc{AxAe9(VtWsfC$04+? z;v$n$I;@Z{p6AOVF~Cy3vU=mxge|a6Ef}Ut!)+EjcxNchvBpmsJ2p;5CmMAMpyR^5 ze3{IQVtS$lFrTgjsL{XX+zBj@p`1YlhU3Vu;&i6MYi;E}5tv}KMfIlK% zI^Asg2pC;fRx6GY&ZFLig;aLOeL$Ev=Kb=N*sByn&xWnyTWB`vqmjk0+T{FahV%?B_k81##f3U+iBD#VvlpQDAU+@H zrnqaPZ;`z1vraTxDf^NPgxU|)qnD(x7!B#r_XY^12c>fWZr0{7R*ypGcwiWbARi0x6mWZ#kcrmsfH4?J35MI3XBjY>sVS z`Zmp=>dJ&|t;vL_-dq3p%k@6kX0IdmyR&i#Xl9^(Nm!te=*)&!5|GRQ!({L~(zvw_lZkIkK&>+be`Rrws(-UwtEE^KMo+R_t>)v^ z$%+mJQ>|BeI8Icw!hryHPfDk58b`!i5uh5o+L(>@*D&L?O3B*^)}7wDS{_R532zP3WEMQkw)tm&9iSUkOO=m)*@zW5svd@2g~C_ zN>B9HsS7}%+T7F_go(X#law=uO3KQlb0KWP-V( z3zR3=Z4Kvva%XZlM*x1Y*ifO~Vx9~r#a+(oc<;IDvBrBWY?^2y^Kf!;S(b2ccKnI1 zKeNI7gJPyr>GgR|fjV&#z5e9EY=xGd!@&%-cnVWd@xkD@^oQyHa_9OOUT7%1^8TLeT~IRNT{`V*n8_lHZoM$=5asZ4tP zK(ifD-6%X*#P^)z4_4E~@hGG-K=FUJTJ7Rzl0ATlv0H@mne;2xn>hT3genSaqwOg0Qz_l zNocYSAi+_7I|=?!KY(HUNhyZ`Dj*s3P!d@x7VBk6KrMr)sNsxbIbR(>p;)+T#i+E> z)8iL`%f=6oG%HR%pXK^%2a{W; z_$m^3eh|-OB@&9n-4KAZi%fp|_qW7*iVW2N&?~TjARrr<<=`RtV3rx2uGJwwkO~nr zEr{vS*&TLy0fCHdRe)n1puCz$W;C8_e}4{fje}S*v6-&FJC*+KGDRCns8-fr6nW_9 zPe#F`hv(<#&7BPibo_6FsOi-o2l*^RoU%8o4g0wQ?_(2q!#bCrC-@DclLBV*|tEO=aQibn)C%Cv=s4ewX7q$N^+{)D2A*rq`MUwCKy(;CJgN*&!=XcE6Cia!~Ft-3PLw0j^!qnkPhs^vO zcP8Ez;>@v)V~gitfqHzY?Ni+tC3a;y$J5;@ zL0=Glc)O%dQcSf&ut_`?l)-5< z*erB@bJ~FKw?yQ6{z65uJQ0wAD0?h$~5 zArBNBW;~Wu#`o(X={||m;he+m>F41zwhNJDzC@)TdyfmTsI;b_A^4=^YOKfnq90*H zVWaT}2xVS^N{L%>B>V#k>2oG?$egb@&&Doy&$QfJc6dT|V#Bss)bV3}@~`~ejUXKZ z(lNTlbAXVQ1;hh;eW4hEi=;5+fr!8JT`5t_Qb2~%YnEX>kh%d*B$rd+=#(NDE|x~EdY%>TTHZO_4=f3Fbc zLQiHFNA`gOvxRFv%>`;}IBCHwtp^b?>ZZe!T+hEy`L5mCbMG$47&$yugF3&@iAo%4UpjaAS7*u=9CTma zGjK**NBP$?b!|8a6Y zGGahqy}Jh{PJRNl#^lC8BwL2fAOx)w1N=`yL`1}pccchE(%52wy2EGn9eslt9o0ba zzyZ`gN)(|WRDRI6HMA&g5Ou>(ZzIpR`$2UU19pr}JFAp8W!gQAcdcHcGb(3&dAQK8_0a^(8Z-T)q$zufj8&8S7l59~}jyYBm0IZ7vVj)Zv)iApqwjg2!GDTV*?LJNOQ2 zpRva63Oj|hE7i^`IrgJW2Ik>A=4S-s?Gu`cIot*EFAgWmp3Qc5Fnz%|sSHNncPp5s#3c+|1N4q=Jqkb}j8W4rfN$WXx|5V1g zHwVb-N}g3pHH*Ex`7P)iaKC~1-hcP6?bLn5dj61tsYiP627iJ}*4}P#=M8*y*;#>tvY=n_drfsAZLG>qlaubNlrsHwtU9 zug8B+fm^Cq+5TF+c;^m~`%k8^*~g9K%G9OuDVu~!0EUxt<}Dd%;Fs+vtB*lLGFP(u z+NGy(K6r5G-aN%AS)ZndCIqp>>tJsW&gii(RGiQ2TBoZIxrKCH9wgskIxWO67?}jZ zBclKWSe^D`j0)9qqphFSO1l66pD1|TE_Yu!++yvVl;mp<5(>0>0iW8Yjt$7CA z!p8v_I=?6!dF51uM_0O|r52eol&AW^2D2UC#n`tGhybsZNG245%H-9pDxStFHz-An zdd2Cz44T5_PGdN74K9_=+-GG}&Cp?)iV#PyAPf|~(zIM%2BU836bfisM@q2KXtlpz z#sK5O=sd~^=+f!0cIUOACG#;b;gTcYbLHntrOKtvRhb^Q&S!6P&|=b1FFLLrCfja# z-X($hEv5moFWEDczRmH^b|2{;Z&tip-_^l$x!sD^B?^Jwo$vfBfogj>p4g&P**#3I zK~2p(syk37uj+EjO6PEzXtaH|dv~z|AU;9yOm421JcSOn2G_G8U;?=q_kxpL4@(DG zEw#u4MN7+;uK%Nf@~D4(|Hal^CWBM#U()qQ{21%y);klcSV2{!9OpndEEAx_7RP8T z&0>UCt+WCS7a12yJSKW=i{#7P9I$>%nm6IPqfk0We^s7w%b8CjvOgI*E5mx}yFvft z`KYF=iy=m90O@xC>Q~CG*=Cf-o#8~lp$Y&Cf#qd|T{v%X3dLO=H+n0e6^)zu@a zN&Lz5S5it%C~gh$Sm~h)OodoRFv1asTp~V)0+5v9>OlbxZ6Kv3$fFwPBWE+A{q3s% z1gOYZ80E>x0176+G7EBZbEC3Y;i@;?Zg^B~9qFIAX)pPShKd0jtr z?4Npg{3`ab3^m~yXxLjSsTjtP`@EW!IZvV^-r_d-HE6Y4cCt{8sBm=_{BZxn+y4%9 z+#&!2ve;Tu?art9uFh&HMWuE{`Q=S%nVEA<2}nsOy~s0>hHo9vLt0H{FqZx4Zm{AL zp@md*y$P6b5#dj7v`fVTf)WO&=%-~VqN<{l_V!CIOz)bC4zY*sT%OyXFSqxAl7&z# zm$GM4x(Np+E;O7vj_q`f+q4-8lj!o7%m;;`7?N5&k3bL~AT0o>!mmX_Bis3BUnw3H2S(7UPO6u zs%C26b3>nw-aUv$89PPya$qVm&Ex2Ls(?e3<#;`LeOtMHlD6IG+e#;ajT-?k`+iGa z0_e24ihWUZwmYMOQApO8$o7hC*7%3F;+0jx2s9cjlnPLC)ijw|#m6$Za;Q^RrqL2b zQBEHo?=BqHZ!?F#It0h`;eAp%6MViuAl7PkNVZyT7OQI0Q;5kGD+D+xTmnWv(-!Z! zv4@xE0iXD>jDo_6Z^d^b_T*g^elf)LV!ZZE-Y;*aOXW1$G+@z36#{W;=s7C8o``W4 z7wXNW0JQ$8WS!{*K&%djbGA+m4$0+}3t?myqA{#EfVe!gefTN9=m4$_zGbknnI1ZXg*k zd29?O?q`{=i{^4?ZqruME~4eg@IL}dZR9FudZmmK&L__z?oKD!I4su1y4U9xA)VWM zpQ)F(Mlw~v>EpQpt%R^lCTHHGg^dJ&xOS2N`O-}EAx*UL1ZD+5`jEZ~FXGr8%{&7t zzF#3~8&ciS3V+9($`)`h`BFrUSKRr&}h}wr^?Y zOC=^~9kvl!=O9cqnKthPAb%}r$1uEV z45~c$0RPzLaTn7o72cYNGOm(w0tUSfyd#oa2ohNYKDz{X@n8v#rgkb^$^o@s-79rt zw;U|)5r@M+RBd#=a?%2#BIT7DL{{w(50=3;8pYdG5VoKN8ff)23P%bwmCi%<>!XM8 zL6ms9dTwPtUQvHWF+%6<0Lrqdbi4i>` z-fxOMTR#PppZ1y0dz4vNS5|461t@2}Z$~b&P8fl??EP%GFCz zW(Wzvot|KsLJN&p2OdX#fqI=ec8LaFsE-@xgFpJlW$82>w`$p3G(>R|2H_}iA^Eme%>2q$jKp>@Gn_7!p&ioQM4nz3f7|)BmW$!?P zWsFieKr$br`_f*dw0I2 zD4i21CAR*m`H1bP7{)eJ!%v`95xb+xWHoI?F|C!ScVV`i)Wkv*iNq=@*YO9T4wkbU z7}dElM;F*PaFY0V5}<}cbT}B@Q>K{-h@MhU_FG}qamU?>d`CBj6ij;V z!}FK6bl=vs4xDo@d@MT=4#&13*sh*x(?A4LgnG+QB%N@W<1*kWb(9V<*}-W>R@DZd z?$5U<Moh&sh6o)H+1Ra>O&55UEq>ozoc-L+Mylm0q z++E-9)NVYcjs3|kEW|r^3yWvV-F*46iMag=P&msR%vxpvqVp0Ls(!bAeb)rD+2Rtf zL=vyyUV7;AgQz5_<=FhFAUq>-^BF28&wj-kLN4p+;b|t*Ndpo(Ds?8Eu~`HIK7lRq z>8S^jl}|V8;(n0@N?c?bDN94?{Hl+Gv zVkzB1*=*da!)ZSV#BCwm1?OUCK`Lbr z9xu(ZsJ0c_LvF+C}Z$ zl(?wLiej>X*GWz!YIk@(Y2%+}1wD3@IVb!STUl|O=ycGH$kF6frZ!8jpmY_ymEBl< z;$m83Z4nFVL<60{5Otz!^`rpQy}ENZ*+h^cDW8c5FvR+|*B^A0+syls^pi2Q)S0Y{ z!s@GkDJVY!u2Q~?N~goi?;MtzGKj>axKSaB$^BY0X0loXAb?rpm8$jfK~lKSzER#2sw+v3@n!+z7A4bfI;=(I=A zntZdqQwi<8j?A}|!0Tt4!Gufh4vrcIHpVnK%ogA1a|VjhW@B4PO@7uqEVh{=;`l%m z#a{!crJm9`?!yrT0&Zzocr^;}TIRPnW+`>IyM2-YjV958xq^C3>F|=aJ^-hG;Vb^Z zvf@$ZG7Mvdj3Zd8TH_Y3rvT)C`@jnYE!m$M@a!sbU&LEuKX|u$wAz2b;_|u-0v~Cs z1>RSg?f^S1*UXFA7f{X~k%kr{d<^=3guP`{T+P<5o#3v)-IL%BAy{yi;O_1O8YcvT zJHb7;)400?C%C&LSmTZJt?cidvG<$j9s6YTkER(J&01Bfs^*;cea&3MpbAGm{LrMn z4dyQaoB^BA_2--p-@7t0F2Jkxk?~>oj$GJJe!6IE1Ke0Td$N{5udMoHz)@L=$r2#y zJ~C6Po)C;ql8bf-1VI)wzBmThkKw~L)!*qh-vr#dRERSTBjR~>!L(B`I8i9y-%lImrM0T3~)+X#bwm`g#|J=j|A+r zACLELCR?{@h%_VDYf$AoOn0Fif)K2DNY3HB% z{S*UiVoAN0I%^^Dc19pehQMoqa-u8qMz!8xg&EMtKPR{s=G$(=V9o&J$u24zf|w&N z(up%~GiZESiTv*xo0p>59qknz2{1ODAV_P9XoHEh$g%Q2w06cxFRExIVFE;Oiv=2+ z3Z`oGl8ANBwQV4;bDn1xpX$x$zJlE!4O(4ir;J>Y+q1w??khIl<|AYG^A$^X=k7t3 zA;j7?_Rnm=8tXqT$0}}_5|jPSOSl_D)eWN+ft0TGZG#iL+?5SCnL2ocLcpTUrWe7# zwFcPgN^1Ok{cCP+Z3E7krL66{8gMk2gW{D2w%JW6G(tQ%lO2f{|VRJx_uQwZ^ zQK3_DzT61O-?v6gW-+LF#e815Zs@;SX)f?+2HSX0=Ov30hscDs6KqC`|$i z6}L z2O@Z59jQIlI%(wohn40Fcel6Ss`3ZEdH-O%JRYVqU1>rtRcvoTR~XT4v?&|*>~FB< zucFr61!{SCx45^%bk4@A0{GnRTWVG-6c z+o@^Z(uF5CykgXu>R~)qSjViuM%7OOgc&wP8rgPr8otO>S+~MBg415^f?we)V(tTkDmk9`3mXhHb4(pU>3$v zifK?%vES-4+34s$>o8Z&uQ6NC4?F`CZ-uKFmIMyTjjA|DIfO!1Sv58oz3K=-NE?LAaUe^-~Z`D z$U1`;jnD=>RcVyozM=o4Jrl}livH?vd(T|a&sQoh{|>+b|Fbq#1RP8Ny|SgEvs`}x z6Pw-m;K1_(#gpHdV@Wf2=k8>?@0@RK=3~tBaqY~y&W@PAn1FTdO&?Q4HUu%SExR+@ ze6yfrC3}o8*d3suO(gTHn*`+UWjI#sZ*0hO+AR>9k*aAf0=6XOU^sR{l4)Qvd~NOop{H;%F2PwBLnt)$8>b1Te&-3y z>a3ZjmBi`~nkZANbif98s}SE@7=?^-2ju#;Mn|XB2ApTuuu6JxZqii41QL342R5kW za44FsEP#55TCLeF%C-U7#ZGgaE!In_*Cijm4u>a%qBjhY1(qCp_g3aHQELpn*R0es zU#|CKLE~15-M0F5>yp!+Ff|ASixtC>41lp-WxI(HiH`%{cAW~?LAfw+f0^c;t)_Od zx$fD8m|8&;ilQ^g=D^G;oZgjNJpz$-5u{nR0~XjA_WN(6>Y%c4BJ9+*Lmp89&C!jH zzD(2&!|eu5MsaiYIl>{BBqeu1it?K}g^L0;@h~Uo>VW%d=;X&y2TdJF>yDisNbSrx z@B79bzW3TG2HTcxcL_}|L8?_elB4U_qgvb!YL%f&HcZD^>BwlRDt&i%SHy3#I2^Hg zcT;hwx>WAcCE!aK{Tm(Eoz=#;o;L$SymT!g?bfDde;=zv2mxsXF{Wr=CMNbc}QDc-0m)?tr+BMQ4uqG zBSGWIvO80PD;?YENqAbV7@!8J`@Q}@3s$X^2_WtrEO zOrJn3ONv<7#2Iw#)I)kZG27qy%1V=+ebChXdv0XB3`7uxul(nOw_*4y-ZI*ovlPhr zT3U+F!y#zr9={&qwwgD!*gz@o>Z%N6>W@fN^&L6ztmX1NXD!v!kX*dx_h$n@=tJ!sm7&Q9O9F2o&9z+4J+!la3zOL6rHhID z9QYHyorhBHan%B}fRWIGFbdMJE;GP^ad}v6yI4XKX){}XSRHL2P)?f6Q*$q?krjb0 zoI~3xKI{i|=x<4Vskf&4yVe_;rJ)ah^-f$Z$!~Y!XEaIKOIW_R#OJBxBT7zs`}ydj z5Apee&keyx2v;N}*EM(RDWrm&s)LzOy8JBbKj+1(rOMaQ&c>iJI zQTS02?p0=%ajBDC4m+3kw_9H?pzAgqKGYK>bDhlo%Ps#UwhC+W?K=A1Zx36qy&>l}@7K(wE@M7q zPGJ^&A?lnxyw!cM-Vzp`4oF|tLpdtv-GLR3?%ue_FlB2Cm0(PNv|!>8obwTG#SIkw zGA$dsR%bmO%bv15V^}ynRWR~R>0Gb5gNsaw!(9Fh&k^l_XnuJHPP{`%EiB+ zQP}N(VoMz|%<#12W?K$pP-)TmjLYD`=zl#xIbr8S5wmB!D5U_~%24gy_DNJCF>iON86Eo|!WB^4>g~vPS&-)s|n~-hk zI@@K@ThH}&%aHS42i?JIJyeIKut4>QY(LHT8xP@$jy1pv`p1~$x*!fSG*_xEl~`p^ z8z1LLmeM^DS=vz$)Nr(Cb3$X$D#MjD<-=h#_HcH+q0aTB(O z$r4nV*n@yT1gFt3lL3o^6wOpz6439#%FGg**|!?I-FShb@ASbgC1S$28iD6wa8edD zY^%Eq^dSDZepHNj=9i_~86UeH#vUd|E+{9y_Tgju-&hR&^sar5ft_gu8RA8lOc#Q{ za-&OfYoVKYq56`}B8w<9d6vBGX>*M?-wj(n#br5q=lB`|Cgu3R9%wDIyNAP`lHuD6 z401fv?LX$Cinfcyx0$t~O;C3%EssuuSda#=}rkZ(YqXgaOFtnTQA zFdhAvU9^ZHro-7c*W&&-Eg&fvHiYSeBUk zp%_k#>4?U~=Z&TJdbd93J7Fk0qt8+a>j~y}SBj|*5h!b`O)@k#KfkAjr}p$Dp%^g* zMACuT4fKnOiVz34wTiNg?d5@`^jqsi2cUB;7{Rw)UGhb^PMz}$0Yq3*rUTJ62bvM} zl=IxX$wOW*teKw=t5BzYsPtAWEo320Y!50;N=6^kyxgIii|s3qgSax!Mb!bjHq79K zRY{s$21XeFrcKM3v(&*%WmTzC`V;D(tfOZ7ck;iJNI^0{-n?hW9#t@*k_IR~hX7U7 zsSwHup6S{f9JdkSFDUd(Pq{&`q7*`)&jW@>GJe==IF1Fm@+ud~onN+J>&#erwLe0y zC;PU2e{6LJWUk8pNtR!yR^bq8aAOh$1ZdXcR%K|2x`dz+ z%{sMi?Q$c%05<|9)ZM6>8NenAz|%Y^!r5Ac@dAQL|W=92SV zmLGsr!t@QYseSG7I4o!K?uZ5!BsS-B@sN8jLq^M5tP(l)a)>nZRG(6&e3XP1R&yzT3sfi5b%ohC|9EM@vl>*`%-m_@jo>)Ch_he2P`y+okwj z%q#}fq?s!1-SG0y(hM=ez zIRLVR>CI{vsQ8jg(u!8zMd|yab*z;`t;>@?*;4Y0yRB#=-9!r4b~W6heyamF0NYXR zZyU}AYCQ^>avkh9)n~-8u4I6_ELR4%U7gJwxs;St21e4A3Gs@AvJ*buLkboVzEiB$ zVj>4nUrlu~<5l9zCUl+I6X<#`vw&en#FEfIz0X4d_CGk!xl8dc`R=f zYa4sd09Ao0n#kgefEbGxiDuOw^4zz%Ul9Y2v+SLZ;t01L34U~8T@&miGiSfpX#i-> z!@)wLzjy{-oW@k)7|G@SL}EiR?BC)d0UUk^9p z6b2&~MkOR7>}N}=(D-0snk801b8|m!+~S9ugo!@ZDCL%ybWG|B`*>&HQP|0V4A*vM ze|a^GAReXu4(ytwHiHWeMkk&IEWjnkc?dupkLv3HDC6lc#!ECpcpp2$vLL@G9ai}M zkUiS9mP;rRy01v)VhKO``uLRS%pP1`{^m^Uk{n$L&P1R3b8tXG<8@fcxw~2mBN*4% zI|#h!2I8KuKyaygEsazZ8-6OeR0RHPLE^7~)Ci|nS&KE6c_kki(xX{Z(^QyE2O{k} z(l)EJz@JT}Cm-)Ie=I7(nELWpsx|}An9CIOkL@LZ6`-O2t~nHoT2eYq(2^dYm5H)W z!y(k(7ptSl02qKP&cX>=?OUcdfKb7PVBDTZPssQDTmRRf%ZsjT>B!KAAv}P*z^Z;O zP#^ENm49|QtJ!?%5E-neYg%vc`>`9ya)t)xCxmi;Me*-_Kcd=lX+8U}lNqa4A71)#04|pThp1#7;%&9om5#U^)$xj3JhLd8`2@=K7rQ`#id)sqlC$KJ#Nu z;9Gz(W&@4kO1{^wuu<^3In8BxXEk4P?81hD3#j^!A(75#{1``^WU+vC0yd4yq0s%w zdcMdPib(rmd0b^&BF7FWu3ZTzx4JVQOoB5FDqIR|E^p3Er!)1u=n`N(2X@H&!to+_ z92bpLVYUC(Pn@P=Z#?r!{44P1u1zWE`OeBbJGWmyvk*VAncZha_^4#q>U{D58dL@O zs*D`L;vPTDRCRD=2TJXO7K&=m^2?Wk+ej(4^)CDEB`PXVQ6_~%yLFzm#_zE7rYPTrAPK)0>8?yu*cFd72F2z-Rt>W zrNa~Q%(?CJvAO>IVjphkW(|2QBVy7lY3bKwzl_3Yy{)LMF}B})69h_P(QnJYOM0^3 z*0N$JTu=|`Wuc8NsY~nxR-xrtR68_;3L1P7CZNLIP<_uNm&~%tgyW+LV_juXKS1qF zOiHI|!uH@nem6;=~ums_skVK4JxKXoWE?!aV(*u+NsVMh?u0R z+Zts$y(whH+W=@wI~a|;@Gb!wxazxjRr}l5hm;v3`etL^gcA@^%vJg+SBb5er$)eG zVf^w0ldOma;}1$~ok^#0T4oXVUi%UX+C&Z;o(eT_wOV}Kw+NWX6y!YVGpc^f1h)qP zp-!|38{vI&&S8&^U-nLF63B3T_4b7Kx=2uNwN-m?Hx?rCJ6ZoXQ5m8~IlMMxs@e9l z+dm^^Aw-y(J9K0?7zGiy;B!=1d_vj{7j%3gjMY_J-Z^kY2y-LFO3iTR-9tQZC|%;m zX2}Rcqh?dnBIN*Va%VG<+3ntos0_eaUL!c{eD^IN+xt9Q-|R&#>B#O7dZs!x0gF&_ z!C$*y>bmToLBuKXEw*DpKir;k`XU6Ay!38rKwYJ$jwV4KwBJ)U&usGTTk`?}2e-Rn zm4ldih$aq6Z6>*#vOaJnjQkarOy7*Arv`YW%fZp4a##)}nguRy%hV%9_=J5gmX7X| zWc8W=c+ToWhIus!o}2!77TsDv-ocM6L=7V>6^W%03J4BIW_(+S4w)rT_#%mp&x1;? zy+meVddz-Wx0V`9e4$w@X|JyIrIjQhuOrHBhp&1-%W}YEnZ51;IJMSbKj_CoV1qZ# zb($B8IJaACIZO?Ky;r)ET9MmkLEO0!&pltS1H>&F0BX{r?P_0oc~Th@@wO z+w)}~mx_kHmv5zJ`_Z1fG1~KWRa$$8KWV!Q1#Jn`QqcuE-+41zbvf2rV#oUPQV(~( zK*8zRJq;sN{%<7@55DQxN|UT(KVBM+^gM9ZvvTd-;$A)_yJkDwe^k*++(Xs z$H(=l*lpp-PEd55RFKGxq}Mt)y!-S)A1!#6*&oD}kyX`ffwg|ICHq6=-7Qomjm;QG zzsX7EmMi&1?3U_43IHyY0T20U0gP+W(w zepD-ruYgB4jAkPE2wXq9y{Js%jQi@`UhCzCE97QaYr*u1idGTA2neM^)6WVyI&nY0K&a6L&m zT^82&*JOQ+IqFX9=A@T%gxh`E>jNDyhl&HKtt6(;4TEWp&)75}KY;>)y{;X|p^c!y zp&}!ZNB{)`sEj=AXrX%O6*<`B$@Mk(0Dzf4#e19i%BXO2%Js82+n>Th{+ZK9Fp6Vi;T0Nq&c+}^qLI?9FQ1{ zU_=>xmjcX|<2A--6+GUyI-}2g>qt*VvGRhz~ z^*+|}``GEY^rg=?yGaU%S7soe9eZB0Hw4q|j-;C!>*{1yNlAOP z80)7$Hn7NGdeS~^7#ZS(&{su@S*k+aQMXI%t#&!RAu-B87Tp@ir@uYL9HmVR`3zZZXGMH6(euPpW7bTHeN~8zY;pOdZh>EFCIwB`A z2RoR$%r$}yjH1BNk^LMF09UkP%g<_i2r5&R<$EJAl?_W-WgK`FvcRfCwyb0cLC-tSU%>%TQ33?UIs;tA)paT1F{u$1gBfYSEAo#XNL#g9xVLir1>i9YZw^_f1T>CZWIf~udxzJ z=yzpa95A~1W3s0Fl-u+5H6vo%oF8Z19kr@-wYMij--fX592)*6u2uiR$Dok8ilq`Q zbd_7}qe(CgUA;Q$%PchGVCdHJe1t&)dlbGp3?!Md z@0Dkg4eDBEAuk(d(MU{!VmF54`(lTlE{>OySU$>Dq~O8UZ4e#Z&k9#zx)XAmPV7(IhgN^LAfc(BoT(?u#nBs)V5|8W$q8nVA0nx zN87*4I7wZVanus|mqZ-OOI+5kaFN9sBl~|`aw1MW z4$~7hemXA!EYX1#&Wh)eGH`V^vt=p(0;wX1-My+Wz(RKl&`EylX0aS6{YGt$LT8}g z<`kBFC@=#=w(qK+DP@$GfSr^h`Ic#C)PhPXJ`@%n6<@imZo;rhWWLhiqiBPmAk8Eo z{Z@cS$YZ0MfHX>=e2o0XuJt;iq7UXbZw^#4vgLT$O)XfAUC3fML*|OgwW-Ja+(#N~ zEvwyY;TR32*pbLk_5XiHOw7M z*{XIbc)be=jZ{;@*MGS68;iZp)oO2L%&*H-&QB4r-l+E$)AsAWa_u5>w(C1LBBDJ|95Rnl9ru@chF;PAv3xe~)` zygzSaR*OCpg>`FckVdfgF*Tcvz7h*-Lf_0OwwbNJq+zU?E>sZH_V@~zSyt&r-i8^w zOo=<1tWOR9uwi-yTUbu&FqIGP^&~nZiGk%LxDKn(C?Bqbaki(DiL~0H&hrgv&!nfeS#K|P^Av?YRWG0A z)<4exT8ek6T z(xo=*2##}^4nmIt3hjPY0hwS7BE^~rhSxBGYz8f#_?_S5Fy<H%nxF4Vqy_3#tIbZv6K`)?TR#3|pPYY21(4-~S)ASf1_U5U^ zOFST3L}Lm*;?M@zw>Sa${-(pDFkwijbh7xo76O9q7Cs;iiz6;JKq4$+*kpz5Ty5$r z6**TFDhNmkHt-&2GyI^TH(Vw+uV>};5W)^AYhPu|Qwb2YX_I2dNpY)BxoNkBiTrDc!BA#WsSyAR5y-Y_kVA(a(mBX3-g;IA-J#MZfV4SZq6sAUp6A)Y2 ze6`5nd)cbV-T?Y^bfVWce*@^9P-Nn%S3E+h) zOXk5L3pJ_MRFDvlGbo;FlwH$Rij>VU&$^|J$t`bE4vZcPG?bDtHC&m&gOQZCvfkP+ zak*FK*c~EX>qYf`AH-ebr=boGwLhVCR-%DQKW&{VhJIs0gBz%3kkr$@Vv^Z%`%xJ> znPJ8db)@An3T4nJ*8)h=)QyW@gAZ}%B{6SW56<$WUcGTK>xd4*=oeVN4KJ(tqiVUs zY3-U*$h3dlc%KYGz|g3ST(_Re|G7#BzfVZ@Q`4!Pm5RNw>+;P!&AQ6O&AnKM7y#oL z?)ijsC4isulphsZe(s$W3GV>%3p7Jq11iP+t#mFyLm>9*wn>ctc`V(y04#Bv7ag5c zes1-J1bO=^6sq3{Ndu{ByjwA-RbL&bIMMDZsHHr3LVJD)dr!yNwt7N8oXX#4M$j6D zKfUFtuzA!y{SLWzcpb(VkryeNRmR~F71O`+2ghhZ)LN@b=KSr!zALLDU?I>j8G zGlc{Eqh>}4{hmT-6d(!;`8IX-w9m^oaevaWwAxr*-MLwN?=U)=dEb7vaFOn+7^U+L z)zEBFilQ{&P#BXMYTca@?L?juAn3X$5U<&53Xbi%l6-MXAIk`90893+u5~SV;w=6J za_nC(kv0aA0ID^^?>B;7`xe~a?Dyy8!u=E8hX^c*mr7Vgs|;naWJj{_N@4zm;Vh8Em9WOKmNEE$bD3R*4!D1 zm+F(?@3Kt}|7kUuIF?je8EoHq*a^Cr_iDvyNAFu?+{xF!8_Q8k9Z&J2$K}KHwri6o zCfh_u>J1)+!Bu{QIh8EdD@i+(CFHdD_N}G;+d5~n)8_Zf!(~H_io3ZTQX+Pjly$Ea zX_&Lb7w4s1^JY8J2u};9F|q)%ZR=2(p9P2V<=?NSN@QiDrb^cJdWwfMvh^Qw*`L0N zTeHYbrN@g4^K-r@QZxHpWAuSWV$@f3XKOLS<#)FD)OH;2PHqogr65!EXSl7GFKIzp z+_nuv&j7rQ`;D)qHE#A(#z3>w))YDk?{K)15O-La>)t4p>0ngSXzDh|Ak5=)qF5** zoYOkB;UIuy+Z|!;3P~t(FC92v7yu}RKwH9ZZUzepR*RZXoTPi4-;+Z|UQ$g!~zWG)^soimfWj@16 z|Kmk1{~5q&1<*?*fL-~q=Hz000@I( zQ3+U4`o40QpUkug$!smN@ss~OfWVM8r-!fE`%}7_LjcckrauLOr4R z$9((G85jx=3@7;WV4^=DR4DdAx?|j|Bs7V0g7;JE5(}E#98wNG$FgAQWUbKOILKx zOP@5&X|p(sc4yk4JB2PWGE?t8ePe!~h0@CIv_{$f=U?^D_h4#ZE!MbMSWwuQ3V3v> z(?x8q+XTs+Il;@ULuUC1h*+}uX&6EuQ)rst@IfF`*fiMt{*!n zb+WbP(@jo>M@dn};|Zfgt^sVkwCY?j15wLWqIk)4A2RvGVy%nGC>y_^cPTl};41)( z#4>a<99x`)=F9=(F8kl^GjhTU_~0PVRT{rJEP`lvYX$EiR@BV-FV9aYSnlsBpW+r1Z$2fjsmN-q6o*QuMA=~+4}7IXBh$v43cI0J*^)fC_c6`#IG4h za-e%;ZpNFSq#pnKLH)=2Bu$9~+%C}#CrvAuWDJV<&UeBD{jOB9BYiTox3Igk7hP1~ z@u3ZVZ^>v3KkacA-Qp}%f;`gUW-9GmlX&YOFOD5|IzM-fEspB7l`m9wII!PbE?2d>ZdQcOco#5ZZu8IA)QN(V<#6;49RHazdmn2 z|4d??Capz^fIM&ak-`prx``Hw{yb_iX~SUgFgm>VL@k#n0(v+-)MON#AD%oN)51}^ zd#Q~hWiAQ5Q3;ZLU_)dYdL$mu)0h9-D1C-A5e3#LrVa3Ke>g?*cdyqQJ!EB%S8uBr zdj0PonCVm@FdiIcWbgHGLZlxegU0>Qy<`;q`IKlQtEJ!6L9U2uhmWWCq$RyrZh9x| z|M@ij`x7i%m{)`*QL$uNFoV}8aZ$c4vM2SnYKTb3L$R-AaAdUGv&;@w`-QLvHeHWD-yN3OeVe#- z$VS7%k^upXi*$xhZSg?Ug3v2(LAT2x21c`Av70U${d|^0r!M|997cw5-z5NID%0-L3C-lm<)( z`Mx3hq~1M-bfRX#gV}x0?dV@Kh#&X=_@i|j@f8g=o)9_z=pJp;JG0H{+x=D}wUS_JVULwEo zw2IN25jN?4Q$kTjuWdk_?;IUJ{L?sa7Xn}V!HXrwFcg(!+WecqS}KF~IRVnXvfrW4 z-EYhD^Unc(P-9a77()wCQ&sDLSrq}@OCd@;%=~t6WT!A)wJ$k$u*_L+VnPA9@ZFg8XSOdUfMaP3Z=S@BEjOz* z-J#{Tq~MhY$iPW%jJf5!h{h67V=ffGon*GUFfRj4B z!0tE%!Y8keu(l8$VbwNZxjEh2oC1TOwkb6hUc9CsTWn7;ER}dqICxS znl4frIjlmD1N=Tc-myV%+1fbmTjaCet2@kUS2{*f9PSzuuyJ-C*B%!*#r1H=TJF>L zebHkh6X?i+Q6odQ+3v^L$N~b@|isR!=SVC7$JO*bTkTfu8r!dq^{2|yEu)emT_rIo(vhZ zkm=dvr^4Wn4ufER-b4$W#BR}rkE}B&4R;5Im;r#>0h+w+3$lE_$KsxQpuy43)qKd0 z#&ti-yB}%X5wG5=Nu%JueJztf8waqPCvkE%M{=*;G6tR<%o|d8Xsg3hDf+% zwc`<y~t=CJqJv)=8t#i9A1}Ni#ge^fdY##(Zf=i1;5Zk3lJaD%HgkgU{eeb zC9oeYfIr?{{{B$yy)(MyBJVZ|(^eo_V}ide8e( z67>*iqj0}IVp07NjzNSA4jRt|+7_?`z1Cv$54hbXS-$I>(Ioe+Yg-+g;G=vY=A1mf zDqk5eNbarH0{vxU;^=?9C@WJ8BNlQ!acDQ|HdXRbYFh>uaiQv-Ww4W5bj=sq9t+d! z=Kmde2X3j(!B%|D_6^%ecn5Cd|}%ka;y^M@>8x|S0dWB@iW z>=!gzw$bcPZD)n`lT5)4xP4Ha*kY3epUGc0>)l53=HP~+Go4P|b*T))srdMEa zFeBRntO?JfrlB7*fVTXmeK#nCM)ZX8#AjG*5w#KHM*C6x!`27l=#2oxlX_ zCjv(jbVjh47>@bS7bjeJZoB^Dcp51TkQ?OgyF>*1<7~P1s-2it_&PVyuWbKH&Hc=g zcuq~0H@epjZ*p^4SK#>x{2tDvh}eC;g-t)6_F~Em#W#AD&CaFXAzi>X82X(h2LEi5 zv6-#>y$aD2k&c?s^keb9KH)xVb9U?rWB?19j=O*sTX*mkp2E(5N{#I9ge9n6XVr*C znML4tu%K{Hh7wkk-M=FtFdnSYwSMe8P;is@(ncu}^&Zhnf4^ z{p>Np4*&I+xBD}~E*E3G>9I6GiIKC`SwZUgsmIw^UW^YrNX7HlCgN^GJYBoG6AK^1 zH>Yfp(YyYu#RmKIAvb_a`SsGX`TnH!JLx+4kLxH~?TsWDV#q@svhn#oh5sJ!V2b3kp@TuGvcOgipRka*bDq{9L|z>JvPGWHs2s z`VL%X#fKjrDu~U+tjF1(l%!NQ#L>#Bd;{AeM_o3pDKzB-sR!9C>MMeu1<@V0E}Sngnh2segkj_GjI z0u7xCSr5BEv$?P}^?t~5X{Hq*JZ}nf5*+_?dInVg@s6v+{8b3O%KSttumQOKF5EsREUJ34Xe10o z7dvj6VY6PJ;1LKRSq>|Gw2SuhPyE)!2pAxKr;VJ;Lufp2e!Q#jlM!UODrUuf8LyWi zvKXDhzo$>-WHL9C%cHHMwq=3?ZH6W|<{QvZ&6cmId7v5~j(#BGcB%W5Zv-fJ!$m?G zMk%^YPH~a`w%@xJHdv4<;AlcWz7}oY?3Erlyw-WFuNQ!MymS4~a@n+j1+EBCI}%o5A{j*x zu-3J9`!_L>UamnR`Cxd2yTXY&wt*QcF+<*cOsXz?y=^=|$Sb(d+W8D?dn9H z)zaT>W!c1aV(_vfAVs}M(HGZXK#;t3t;mtJL<{^yAN`If;gBeEpJkz&>f5!d@#P@5 zFhY5-CCbFyX0KGf=wmQFWFiIZC|jc12yYjdawnI}#Q7b7^*E+@U9S-e`Gj_`j*onP z$(jy%3u0h%?|k!kr5jkkV)ivfH)UJJpQdE6RF+%u4L2q0heZce{1-xin-&(bggQtC)^(pg6= zSj09n)anlQO&)dZ0oj57->t$iyziI=tc7G06*H@hf zmj0h69JHr93SO-=OT16!x^SJD?DQMVZ*Z3R?oSB$k@QhEI+L20fMu)Ez>Y^!)2It< z;FBAXdS#$sY2gm}Ikta_MPMZV*|O)@hOZB81YoYFr0zx#_*14BhZFTlD_TDTedQmA6j%hX0b>dAu^FBzGZtf*5|2c{)ebH=&Mzlzb|6254@W3_P#W z=6D)*FO>-QC_GMIdTu=3Ul9#64}GLfMknDZ4e2p+eO`0ZB+3@A{E-M_dII#f7?nT0 z148w{r8RscS0v6aI7iK*?=Jwo3Nb4plH+OC8$f20ir21=o6DlyjZs?wb_8k*@r)oA zZ=~#wGariC!!(UU!838OAw$aNKWvvo>yPU{K|P|Jw%&JB0glyY{ zoH3h2=Y0w23TRg=?@Y-i-nE$<*)f$sWe(?<120cn85^KJ@(_|8>|2F)Zztx{4vB!5 zLohb=LeukPdr;}1N-3c zNDswR-_OeaCpZb9yjIL|D1=wU>3Ksi7@FD&bQD~>CxcVU2Cb!TRZ=^4@JsGZ=u)08 zc$sg!s9o=nt2Tj0XzSg01gorL0?_{2#5^`^u#>M*`w?h|;oK>$IHg}8iU5|j-_)0N# zxL`x)1n^r(BeAi|9)@6(5Ru&cK)aKDwE@K%h<)K zm?l)witYch0PY@dww1mgK^sNUR|-1^N#6hd87r?++SX|WUNi(Wv@zpqF*U-I!6}jb zhK4{-1Kz0_;-MB{6F5?-%?Bi)9hyw~>`B&C2q_Mk*$W94YE#jR}7phFLSf(BFgKqW7E zeZQASHFv~yt52r&;G#rQb((;$^lZhFLgQ4=WWDDrL~7BJ7tY&Z665$xaiP|-%6{wd zz3X1NlxtwhySED-jmz-Mym!jraiD-l)H-tSdAcDwk+;j3CZyqWUIOywLk09r+{bHv z-r-7a0);@!wp+WH-?FqPw+m~$2i<1lcucVEBx0F{c2x{_m{%+C#IRXq;drGfuF6WW zBC|dX{?KD+q2JfRx87Vcu@geAH7>jRh0$JUo=%x|U?_q|6fw6B4X)%PhH74Ca*3Dx zLgC)D=UA^V@7<>jt=rRHx;?(9HFG|ej*C;p8fa*zWra+FMPUr4(9Ps>t#9%M>FPSz zR-=mj%2uuFxB}wXy|4cuaS8&5!#}kkwH%i)kfb|XNwa*!ggQ@Krls2hiG~em%S^>| z*O6u}m+U%?RGannX2wsU6>sYwBx3D@kyF;8==!aCx0Ph?e_dg5H>dy4V;f~IP8XUs zK2B39982ciU~Qfuv^of$QN-?T;(G04|NeUdCDNE$@PN3H2c*4uFUFnlO@_p_8p*cH ztxJsON-&8o=GKcyxEp6;HLkGYMf@Kgg4$7GRP0e zlTb6pSRdyC*~x=7BPC4j?klz(O+O88Rbkpi1a+|iP(MyTJ>jS`vR}$V%lo6v zE@N(U)iI(IMe&tr9={Vmk5;IZt-6w}jI|vC>=lk<;~*%5PY}l^1RO%6&{_ohB9UFe zY8EsKcL}~}?cVV*i$&s>ri^SG9o_sloIaBLRV28U3-rtAdMHMpgC!U$SrD!+$e?sb z@JqQ9KqFYlJBYc-uSJb-3nb5q4U)p{R~i_M>q|cLx`$F~sQEfxlV-n@iXp#fkTPr# zS2a52mFXfM?1&f_1Q5#vdi2ZKil z7{)ZWCB4gh>+G7XQDHl4m2`7Ax0TW!9kz41E$(m$H_ShuSxp%(D@+2cE>P+n+ZQ;_ zw%&V~$7r&9jmf7Bfjj|xOWl1JS~!HU7~_E$?cB{IKi{glpKUKh(;ptDCki1bG3wza z;=nO%G!=qy1S=_8-9G_1k-pEMn*RdMD^}94Fwx9^5!CKKCbF9jq&}uJAF+VBUkOBg zS@&rlUiGb;KejXS|DXko{b+pS1Gk~%q;tJy71c~8pbAhDyqDkN$JCIFYU5z!Zy6B& z*NA^C>M$LEWyL`cd37{td>qjyNU?lR-vA>;PrZ(L*FHy`dbD8+_0hp}Pf3&7yrnu4V35 z-_G_vkTp_~WT`Ez6|3N8H;jYA?prxp$kD)_1ovpe^;=3tB8iQ_uD1^tFv#2jhf8P& zZSptpb*qNn1!CT%@fpYOKir}=q(N&vYm@doayuH^&`D8o>y-Q-$kdzuO0ULtA+sTh zealf;Ll}mAm89TSy1|%lP-UTKGS;%L~`Ol{m@)darhS7-q_nH!h?=kz}fGA43h2 zZ0Mf|G{7B(#av-M;hX>exO?lUEZc2gSh^lkkS-~uJETEU2~k4n?(XjHknRwW4hiW7 zL6Gi}md=OfyV(2eGuHdAckT24H->{jIG#JMdBvRb7x#1B28{RD9d**{I+X)H{ASf= z-8-0twI)k*-Rn}fyWh|Mz+3p`cT10jRqLz@$kC_vs89Fa9n9C)e<-?41{*5OfC+<2 zL)`1D#aWJ_mi2`Pi?pq`7LMJV^?XF>H~t$szh+DQ0$Sj-4l4NQ$ZWYe21)rH;vPE+ zEKUd1fcbYaOFpi4UH8;@;jHo0=%#zD-tpG+IbSsq?nd?|18-3yv%G1XMR%5zk}7q) zq{c-smrzrUKw;IQ<7VXmlTu;Sq3evBZzl1&^v-OJvl@!BHt}sxkyP-93N5+sj%{&t zPwwVhvF*Jt_EIil-U;pB{H{WcHdDG3dUt^|r?a-#WY1c}wzNKTd4EIx_PxNVv{Lx% z{$XdyY_G+6D%+91i&jx)#PcVt;%T77$zvVqUg|qVWh*%943?%}$5o_<@B->L;Jj6J zde~T48hYj3wy7wS&Rezo1^8tcE>ZQ9>#kkShaI-H&8+LaRBVUdAl>Y@thUlsjeG=N z4(2C&4fZ?T>xn5iHGt^Tv(YLR^nN6{6wK~iqr5dkQPZVjrv4?2HLAlrj zPu^!kT=kPpl4**8l8l2#tN(0}Hi+w=9Xig>V=uy4oVYwGjy<#WmU}vI0)yS~k^T_R zE33sWHbMK<*ZO{x)h8aQ^faLj96mn89j-X5Pz1c zK{gX8z*fp`~hLpYZ&_*(z{jNz{mf5WR21$gLgOio4cViexrKr%R3 zzVOVIM`sl{FaZ*C^EEZbT^WIbyOZ{mD#FeSzh`IbQry@{!ne2ee|P+>sqJ>Zy zQdcUM@U?|=IYn#R#vx0-Y*EUDuK-Tu}f09wh&6yHZywqC4NmdG;^(q>LTjEPA69Fe1094~;eqk&a? z@#CI-zF4rmeZq#Ve#MZ{l)>7&3xs){WezJ$#M+JsZ<6JpnT|^=W~3Yw*g#7(htmJE z{q1&Oh3=vVffkYoWZy~PJ;`ewVgMzYGn(k4jdSHO~1|dv=`b+j4L8r5*jh+2&X{DLbgJ7^fPf~}AJ!4uoQ$&726NUJ_B;!831`VoeRW538Bj7~ z*9AU^mZL^sUrD6X{NmUt_1|c~BG_Y#(I6nvcF75!z6`m+g#FM!g9G)jI82*Cg~T>w zuHdQrcCbrr^JO?5xPCwWoWIlHjrGcOxz)2S40_shSWfLO+3A!Pjc}+@+i|+e($R=V za2u+y6y-=6(~br5yc%sN`|xy-Q4L?P#XYjI5Wagx>9)_24X;A8!jZf~qBJVxzV-cn zl~_x-rJ#3K2R!0L{gu_xfkZh9E<@4fn-dFq_^Uugg_S^Z52RVWr|D}SqpUg};C_*x z2vq(n;_2~wA7M~OxqY`<7lQ4x)tPCPA+US+V*Bbnf}f(W^kzhs@SC9WCM`iir&_Du zjoZeFj&J2DzQe*nhAuE&(ItM{OB2H_3g*ogDuv*gC$~fFal1?Uj)^9`pUb}W-orE) z3eX*m&gk>K}6;9#&VO{V^KHl4NjEWT={?qEb38G@y6lL@%h4$kB@i@l6}7Na@{ zY}NaBFl(tb8s@$*`l4cr-JHQ82x}Zh#jV_zjw60oXr7SEVOxDZ5^*+o4)=p9Yyyk8 z4ISIAvSa=+SU7XCupQKDJL64R#k<22INK=>P`o5q|5G*4v^cK4ckX?4(4jNn zow5J?zjlJqvi8SmNgInpknX|8O&!^H7qsO$s1d;!2*>Uak7ki-z!7f4*+s@Fb@$0mt)F}T%Nd^#^%`wFk!eM9WIN*A+D(u{OK^H;ExG%_d_ zQwNlIL=GRv-LEz)2;$!}DpTZFJ`sf>!_XFZH+X6oE}1E8-A2P0yNZd&GXd@wlKlVc*@}_~%VbI{>t5h8rafE5^*@xi1Pn#@Q&iXGuGM8DE&{ z2(8fReH((ajkapt`BLiPmD!&>xrW@=ymz_s4t+R9%V5N$zlPgG4DwH%_dpdgm7CYA z(l3T;n>a|^xp4|a#^%qoZ|uK2he`PtyU@N{bydSRC8hV4CZj^+t&>1HeM9;*Q=GL| z0i3``B(rh08#_3Tj>I?KE+4>uA8uvMTOdM?U0D1Gd%h2*TL}&8iW-m<;><-!HoZr+ zK>hgNBW8;VVP%x62f4)WWLrwsZ0)puf?mgZiqJbOPTQYaq`b%_nV>X*>9VZvZGjL3 z>YcU=Iz8?fsp$l(Q8q$YJc~VHI_ApTy;r$QjHWjq1{cqY7b7iKAV0h zYUsJx!`Q-DX`Ca$AEQFseXum@SenH%HUi}{ehRsi1gcx;oeZ-$q1U7A{=M}p@>rc* zk!T|-gxKmTK;j-1vbC)1jHJ@~4>bpC+-wWBz)Rc;%uMJ?8W;icfB9yzZ zgYF%&s*cZS-pBE0o0yJ6_d*Wain#d?xAs5ysql_x^_8%OkrCyGPP!v(hPDHaUn=tE zf*}jA@f(H7vBolcnLhUIjq`Xfsol%;x{g2pbq)l%V&!!(*Ct7aBOrO+V>~rXL)Q-E z2F^Rt)#SviYcoWNx0(;q1mDC6UxA~YPX`IqzwKj(mqLHlDADZ#TPvxu0GyUv&sns7 z_XiytB1|~KtHK_<5o)SLw)g1_agRZ(j zXEjnHNAz_h?8~K=9Y>9RRTeinrU1oi>{dnl)1KwKKNZaNe;eL~hDUT|!}LXJ#;gQ- zIQ&SU@B~^111vl?VZ@eLS8AsC{5=N+$$Z<$so|S*10Se(Ox@DGvcXJbI;09Y30GQ2 zgk%krKZz>f3s-9&GhB6wUxP{7C^-RGSRwwAgbfF|pY;R|UkyPB_@IePsltsz`l z(oV!h@Ek^+Pjm#Ce+Bcqvb@F_N_R*UY=XM1ZFi|5#CB=^!sv4hYOtBMtpM$r1EESX z6knLTnfzR2(P}_>u{cQtdGNgddKT*eUpTri!Wus0&p18_#i6MyyoI|Ia+T)Yf2tF z6WLQ_NQ4=o_}^C#z9!}4#n%_8D?W(q3_OiDEDz&j`*29~i+9Lb5_xC}CdOg|6owIQN zX~rw*7B|PmrY^1JCgX~;y;*gj()lv<+-vAFL(=-sG*zelIhxdniS*^PJgFa#x%K!~ z3{OxfZI?=-Oo2|0m=cAzSC_$BuUrt@OzT8jMM7&$tpb1PhYFSVg!fETQs_zicY9J9 z!01$_2laE+i^Jhe%0~MeA#x%~an9a4hn+>w?iIocFX&nDd0rk~1S>P40Z}d()Ya8MMDz<5^Dzcxy%h_!WFqyR{m8sY5 zczTLtn$Ep$)jZFzSZe+#*}^9#o7CDh?*$g)v9pwCMt9*XszjSh8Rdb_KmvXM?8#+2 zZ^)Ug&z)e=to3p9YQJ#iuPx(Cq}6#HF)&Ao@4qBZ$Ds)C{hCW%0nfzRrP8v?G>?iXo4 zZ;ZNnBklIK+1^*|+gq*!WWZ4!iZLbke^1?!*1W2Sn^gcB!^I=Y2QF|yq;y6r+l6n`ESb`LdF7qPoXn36;xae+P8j zEL1&(;1-F6K06cu_3diiJH(y2vYLsacZIkRN|~qvv-U4N0Z&5pY>|RpXQ5<*4@GP-E#KLd+WJ9!pD-$EE(7{c3!lz zxRU|c8bkfkr{^MN3~9>Lc;|^HQz<}Q9G5|5qUnAjUSZdHjO=vjXAGOa!9cpi*lyEX z1f)CWCAvQd`hSD~KJ4U#0S>lRJ&E~FTC$C=_r^O7xCs!G0X>~qU@^bzJo0fI^L}Kk z@e~avs|?tN42G;y$!U5Ztu}@H4KqNY3!wiotQGF*>E|2ch3oD8JnNUuAAi52(y5G- zcBXx&f8dK#us$V9Mg7KC{Z>WT_Qxjo3@Qx zc>H6QS@YTbyMm;j%!I`*Thx(bR}iLD z;w0BJyY)0^^wqarLVZq1Yxt7(3!cS<&cY~7l)mI*6wXM|l_YJib0R7nI(dr-w4N~h z_=Cl!xr62`EU`zt6X$UaTeX|>HY_ALTHvHo;Ph?0&zjwoGc(w(hA+SY{1;t0TEu>q z*Y`1oIvvoJo-JswGd;C1$5XM>iLY^rzPi znx5ZqL}J04#L!_ct~AQw?5rRK0cPMQ9jl6j@eG|Dm%$e%0#IhDh}e6~Azd9dnr73* zGz!~QiQ5D^(r0w6+2zBflXqPbEtZvLs1O@CZO>W8;M0X7r1))!{ksY*su$UmnQ6_g zr_$qJMx?K#22)xW+B$(f$#W)FkIGB&kG0#LRIrVGA3gy0Ni^Tyz4Aki=%0eoUV8S+ zGqxfjDX$Duu~+u$qDGu!uFt#h3H99sZJQNGGDzcZo^}#sHjW6XzXUa@jT+*S;XCLu zOJtUn!4i)UKPkhX1}X(kj~^i}fP(}CHsR0$VzCHpw!vwbR2;}V84M`7uAS!?xd&tH z=Xb1~=S_4Vo)g45gS~oh7nA};CY+NLVY|Q{VK}tSMlZtbEKnb605Fx!oo}g^dJb&) zrt_#+vol(()Ih2Kbc-cn#Nl~2aAG@u5N~}T?z|~-3H=QgME%CYR`*c>laBQ#0#a!o z;Fns=>#?mypXjl}Up$vUD`{953W@i9)oGuvC1K<|qO}M-M;ZKFvac89{|b4tSp##x zW=(6p#LXyaBt6ly;w*lRd>GSJBieF77t2IUnvd0-| z58x0cfZd$$S=qb}$X{;k`Dj|l^ap{qR>1nJw?FZnF?r`rhnuWMkFETmrjr9#KM+DoOS06eYdoFc316KLpBo5`I zY5*jeo$qRsMx#`|W17mQz#V$O8?TPaE**mqdrisWIR&$b4=|Ywz%Ew$@^+^jC)UxP z1W!=DXbbWh5@I>}lC^i0XqC=iYg~XHBC-;0)dA5Z*i-~&qgzQb4mS~l*GDRTeVw)~ zLZ*`?4C-|jqeffS9#t({`tHjbK*y${OY0o>T59BF2_K918syvlCk=%Vm%eDyq`bZ; z!dQGV%a7+Itl%B)*na1tH)E}$``&QZhy8YWR=x#$$Q|N% zL>*8Mlj#fm)liov*-&my(g1?Rs@6?NMkB35 zqW_;p8;g#n+)zZn3$%DGrHnGy%I!(+$rejC|TAx$A7wa=slzq&LLSf+qlu|z| zDn@_~osN3aS@F$mwwJ&MpE(tu%@;bCfgSz!uTcbG>NZq>{ANR?(PQp{k;Ik<{RU%q zd)G)Qr7M6x5$SE;Yhky1))>ck__>milK5VIb$wO5y4scMWu1Mv#u-JM_%>m`>7a7L zLIot2T6gF*rZY*Y6znvEFB4G`IY;(*!5fA*iC$P|oWOUQ9#r@_YR;0pn>m+8rZC;u z7i3_0p1{Z*Fs6nqu9F=n#jhapN@T+RwZjA|GwqIm;@0KpGWvTwh9{EbdD0h!xHtIs zgG?*d9-$Lk6e&T}d^WqJcDuWIxlGJ6LX_;K`->9Qo)4eHATf-7;SiaL$>sMoz6k`Z zGfo`}IMS8yG2?kac&(QKCbT`)U{YHYIn~Sa<`L+VnocDx@CY!q*+*u4*w!cH+~$gJ zaK1h>J$v!pDalWY_OB%g!1c4i&Te0U?VQ}ko;lqeslE!Vi#x6GPbH^RRF4jlkY!Y# zuwPv=Jq#p$_EOOrIjOc0LncV;<3;?Q z`@F8HG5X1UB@86^X$uY+Eyc>x$JLhlIJs|wB8d%q=(19~C#5X}ofb?6()ql$K1(a& z$IzuwAX8{#;(RM%W+`dCQt<-Zf%p)psT};`SI0s44j($1e-8l9#{lruD0JbMr7m4) zvnne+TzY4>KVP7Q&??TAiAK-7$D$=`Mf{4^K+Je~%6B^E@+v8lMf!rg^_}jT9j*dm z2-*#Y;b&NXN$FPi2f9!P$YTKJUf~O{>tDZ(-zN0)Yx7%QRQ~!Q5ujO2Pku4pf3+b- zi2)S8$CgCC`ZU=R6@{-gINug%-qf+lDjw{Ip#2Tu{P-i5E~q6uhj8XN)jvQTffzl* z0HD=8ghIe60-$^c6U7fw0LmA)fhN~Qo2(f-d z1J+neCqav zH|f|S#Az-BqgeZ3PIFF3b2`I_08O}Cy6adnP|3R85w_rdi~{s zK8O{nU6l+)=v6TyLnwRdHzgK(6Owi$g4FzWo1fX&zDQ5OBIqya5->%R&#){znNT5c z-!V&#eF1c*(YOb1%z)82<^Kn53-CL|-wsqQ;=%qZj0rqhhHd$?5+rQ6e>rNWFufE< z=}gwdATRtN-|2jR`whh$C@#DvCM5pL zbAz}1Z~qi^Rs{c*Z~BklV_Aam$&HLa|KA@P{PhLv5!t_zc>nSHkVmrKsAMnVKSb(Z zua8UMg8A?F{I}n{P6H5r6DobUzcRP}ZMAtMh&ChrKOZ4i4h&swY!%Euysf`p83Az# z?*I7+qqHEb=lW;{{z1B<`Dr+>N&Utj3IjrL#fA56Oc z;b;EiIQ{D{LD;$f!#)4C81es~uzT)-sqx)G1|*Sm0Q3^)xH~nVAbdyt$X5V}rXP<* z#nEbmf#<-?E3PvT?G31kiS`mlx~Tukya}C(LJ$U z1r(6!mdcgZ7#ECc;}QAT4)mbi|M(tl@E!@qh!*P~OeTtA!QD#${U7Jah&t9UU!-Hj zz++K^!vH%UaW0#Mid;K92DuO;u$pV7L;vlG4Wu4T;o4Jg9z-Si~^S57@z~ZHF+M8BAOX^sTh+5v#N{r6@a+)j&-F;#06+7 zLFv@xRdqjvLA%u>b|<9e@3Z+|ru%=bi4^_M7}Y4sK7ES=w#|J_A6JrFGAP9nQ#eiI zCQ4LU`ajyJiaoAQl-iz|{Qq&a>t+J$Cd?%`hJJFp*fSM-j!=Zd!cAo`w$kBW02m9$ zdIBV`ZyyQKUYeLuLI3epT2X^nd8_eL)E{vGjPV8_5qMqnw#fldV1kh6wKULP{Jp&L zdo{%C{tCa*;W&=)aa5=5i@h; zMlXFS06HJ0)8&ijoO|Z%Q?hs^ZasOic|n62&WWwGYYjw51?@ImFHQ;mQYgT^f~KA`jM z(a6n4Bn7Ux5lrqC1Gq`OMV=lewN{JPC%Y_dvQ@u(KvArTN+|!5npLB9FLw5DI1z{d z%XHC^B|SRlo_Tbg>&!IR#;5Z;54-OH&>E4xG59!m=m$VhTLpM7gON-@JK(N40I0A7 z8T|EtA}ayvFMH#+M>$>95A85nmcA;e&zdDD(h=x+{Mv1<&j|U74>KHo@F{;y@RjHK zaWR<0G6)>@Xl!%4xu&ys8kuR93w7Y zcGLOl?$0@n<=mZak|Z&HES21Jz!qG#Iotsaxp)xSSAtGJ(sARliivP{tU6VC{|-oo zGXuM#h-zZ!?;1;W!m5q~jgwWS6hO)VREt?)jnH^Lg#)vzfeygX5g+Z2Ryut2+oNbl z1j_Ver?MT>`6&&&?k0Jv&8MySJg*a+Rlj~HUe9ztj2$aD40%439oI)yZMFF7PbXu%J3at7f7C)Q;zh%YLE&q)`^z=VV#O-I1bRpH z1o6kEzV*uO^WMU@H&LX5Mn>IvO3(4E*bUyYG}>>(fm*O)Pu7QbbCP=E7Lj|g1paM8 zHqr8_mvz)CBR&`VS@B>8yD51#RfqDFc3}D1%jC$#(^jaaO3)doGOV`If2Lqpc-OI& z9+c$q#WcP$V5fwgl`P=jmI{htFxM2jL4)_RZdXw8v3!}c?T3Tb8!G_cD%|k|FB7cT zsl2bo@bvWoXUecYhSJt4qTvq#NA>PhafPIif*%$EXcD}9L{zOrV8X&RW7w?^F(!@|LhbF-PpxDS!Che7%B>K!8i|FP8ne`p-aB zhx6P^QU4-I+ru#N7;RP8h9m)pChTUY+xqe~9Jzmf@%rTkr^+jCDF@qJqK{y)X7rG| zLp=W(0ky%n-LGFRP8v0n~tQy3{w||W`^VVYBVl15*M4C2S?kYh@2F-++?j<`O*~Tbr`Tvye{vNsHErY z1xjGscitC97^Ba1HfS`;8opG@uT)U2D_gvDh%fAVbx}bdIz-EerUKAO+3|cUl;+m6v}{b-<}MW(6S# z$P3GL9VJAb<`084WqP(JI$3=$oTWA9$7hDVo&BKvkrLI4#CfamSNc567#_EmwuUb9 z=vgw3h>k{wl)zV-iI~TNQ`g>ZW4IuP`vm^H)J4j;6F7iR)>Z(2K~C$Xp?Q2g3#xVb zY(K(!(7fZU`H3CRuU=PbhQ)~0!@79}NO~7?howdV$1|0>{s#RqqM&JjTShp@+Pkkv zb(PuTKH2V8Gu$g_lC{E-sbF?{)Ek+FT`8Wzer`!l<%Edt?!QZrhNFoIObm#n&xt0R zg8?VVdS|RL4I9-)9zY(q7VACdopzQV4E23lRE-zwO=dOvZnQ%RflzOMf2{S7@{A_x z_~EbQ?CV@@HQ5iBcbKmG-x%~}0z%hvd+yATA$gKfiLXPS%JfC;w``H61zM|mGVFTY zX#Oa!7ai4W%^8X!;d_2K?4}@*VXu^DgpTg0((PXK-s~vre)#P`8cRh21GEy8j-W&M z{_^RS=1tG(bgAom>n24s73zkXw}daX@3E~N&l;T%g?uTh&9~%RoL=T1k4M6b#WB@c zW(v4Q^xFozX$f2;dn@42BW7`YNPd;C1%x&>V?5m;0f=F>?LMqhPwAR11zxk}&F$-g zNYe%F zRRjreZh-XzXLvPQCbx^!_pXedi-n3W?N4B=e~VU&%hTUbWsM?+h(MqG zSEK28n& z2l%n=?9U=ck)jXbm~}JTM92#(OoDaH?WLBI0UF(#9=eFc!=IT{hsCz16UF1hnnHuf zm><5G;bmElY68%a&l=@k&(IIqq%8!DKdnD{?&nyk`CfO%eGZ zEx{WiD(23-2|#Jql=xlK{)Flr5T!Uj$V-|Q!^%>J&F#yXP`EfnQoz%LSM#asg{LJvayvH<>d$}L9yXD^lU>fZ)06Z>cjfqYQ{MfvD z&k_7{#)t}ZD$$I5!Y9;@g6|&FqfsgGkrz?>Y~byBX}PSr>L&zAiDvuR&>%PIzL{oT zl$#-FIyihp9A;kwfsvDqq=&%y<7un*!Mn*9*CEbH?{!3G$O8`B&yQ7E)jihxSG~HH z0p(YLHX`c9r+Esr~ zJl%Y$^fQ~$bcMDmAdwSpbFKr~78A&=@WxbJy=*j@X5K{j2*9iH(#j{Bi0uiSPsG3L zC9~*CoisOSa+_EvTq1Ryu%}yqWg%KGJ~Af2oa_U3#Ba%90_Z>v=Unv1s0|MV76npt zwiYcsfS={98+RvEuEkt8QwNkuIbA6!OgiAcfE=VwHeqB$Nb_ae?Me9YFA*{4A*U!b zUzq2J-4R4wU!{(5J2)CFcGzXUK3CXPVWLq+wx$w5il>$5&PgB}bso@k{(Q_=@vW_# zBd1Ju`Qw~NR(l!>r7y?OD!yok|gMk0Y3?<%a_fwpr)Hr99ntMs6+e6qQ5i zT$*-fA-K2%Dbc1y+0dmlhTZ#fy#{Ejy94M!+iqi{-CA)q%=&$tT;q~#U`jr|TY-bV zNi6+%md=yvg;Aty+Uh3AYaGsxfLI#{gT;{^j?2twJd*KQnW%Gf94~9ussKoaJW7W& z@2dIemO7RgxBSKxoBi-rV<5ms>>egSxdURRzCRbQX?9fe@RKY=S$DR1qv)tW|C#}v4w!tnRL>@JuGPfij!4rHHPO00IS}fE7l6ocy zTl|h8dNz&_(Ju;FrY;oClSkO%0El7d@r*zxIgQOTsGU`<$*JsxK4vY9WZS596qn?d z$JHrtL^y|4j;vlBPLRB$Cg|&8aw%-#GmAjg+LAM23n)M>REwoZZr4HYK;{Ur5eJh; zd19P4lqi=ng2Do?S@{-^z`U=x9y=XjuFg}1Vr+j>Q6d&x@@>#DA*>kaoaPcZZvD() zapBg9aSV&T@3pA!kjChE=F0J@_UPQGqbka@HK=Yxu!N6PC~kkgZq{gNpm^*30!3%QKzsM~_x9UVRNxUXr{LuMgJgK0|Fn1vTWR^sQ)d3n!j_P#)TFnjIdH5YDqKw|yhSDl68IuKUAk( z{X=)gA9Sl=yP}2fP3&0U*<)T`yJ>?qd@tNOpp}oEfh|1Vk3Ra9Pr+piF?OU5)GlGK9Xg{$Ya*ngs-mPClm*}e6fu+1J zOpQ#Td>V;iA`QejTqyTWn5ik*{;`6H2nD4{p8MB?kG1 z-^n8bT;F$lY`eJdr`PSL>NB{E;0_$|oWR4{_RN@OKY+zfp#q z*8S*-UEy#DX8p`BajYS%=L4S0NPqf>;QUb_{aro_*sSoXB^TN=%=2|(Jz;jcWj&Fx zL^ZSOUsXk}&)ykls2@Vy83pu{%g9W9JHlXmn?+V4ZN%b%E64kJfi&M4-uj0E%84)X z8Ab=o@_!08IEOxoJAXghi5$I)4JK#5q5&Q1VveooAF6*05yYL1GPssLEJqI4P4yq( z60EGkP#=8BrS!Wbqv68F_@dN!e{e1spffm|T$?Z5l z1hl#L$5#QOZdvS%rAwIdw!MXM=0H-&pWS?uk;{#iqjv>2b(~_M+GO;GNXf8dShiJ_ zOi>}zCL9l?baZ(UBh+g(&@YCr|C^4Wt>Q?XL{a1X;S0kPRtk%ehl7W#6w3Vr^MiEP z-d|BOd&r}HUa@<8W3XK~c;C29F3G$ZDPBbp2+1BE5B3swW!%mR8Z}|8m3nT~nxVtc zv@9An)2wj$&R#I7b48zM`qVw8lgFvFxOLFy`mwxcX&$);786NJ7hDY$aoduqvRl+> zY2Jt!v3^Y-5=39r%#8tS1-22}>=>>i0pCkF@iWhdrfCNtCnKVT=3+c+4(Lq7`~S6U z7r93V;rPE>(zI}4rvB{|{1R>A5LCaOGYG2_{yOcaeeMPHnT8m>plo+#k6JwOEYyk^ zh#G74baLE5?%sOH*BV!|TeMqGo9R|FaK7&S!ZJVI`pLtmLlMLq__9{wk|tnBocEwCijJZ$x2ZRA0f+%-2H_j)GkZN)1lW;hNEebFsN^_V*WC6Hq#fiv!q=u@M9tz z5=Mk0j@b}(&)%kpZ7EzN)vNgoSU52j9m%#f_LTxvPLFQc8Z<2=&F@YZ#m_+O+O4Pc znndB4Qlv(9MLs*V(@GKoZ4(@h*6?W%cK-s&`KeBaqwjQ_2QQ>!s55x#s{Q zRo%r+IDWDr$Ur!)nLyu%y9vvvJEfmf2o-|vm{>>m!S#Q%04nE?0%N$BJ#SjDZF(a} z4UKxcL=adoaM#D$xiCM_wh1b?GddqEuwQ;-$PK8m0%r}@dHkRoprn}QvSz9*(B%%d z6|MOC1?%t0GWB^nNYd$Tr)F>I+HC6WjZYX3ASo3IVF^FLoqK?Kmp?^Ci2a32QJo4k zfT*$Jh`sIN@Uam*LiAakFfFaMEUO}f9e9f#2#k8%xFWPuP^_b)(-~RYpC`Oo^R|!c z{@ku3NOc=X@ajv=oUV=3&abML*HYbtWiquRFY%q#NX)mL=sN1Qq7*_b0Gc#B?rA5{ zEO^0x=6^}vcM}crC9A?-S8lkYyPrk|wb;66>j)ogRS}^MFc|^0w$|%E=DzqoH(phJ zCs5NX_!AwGezIn%m4OxJOQC=n*b#z|F?rD!ifwDXTE}E&Q>Ddjkp@oA#W~m&0xSoW zV(;i*aR=ZKlupY~R1i7@R?0o4eal(8`tmn!F-h*pajxcn1p(iUywTYIssPJOk<-^e}CWzU{Hw^ z!jq$DKJbH8u;Ey<=?WF8?k-!jV!$pEEfR;=HwWM{PVS(>$zD1jgFCkgf3M>LRA{Ib zHBLJGwRj|j&cZ7RfMqaSaB{J(CaoDVO+s#}yDk954OO>k3%Z|i^O07Lke=+gVH2b; zp?Y3lob-xWPo8{STYXo4OGR|r_EMfr*4GyTMLgk4cxhkg;MT#D$WPR5>&yKbMVWm+PHRH;ZKOdb=g^%ar3WLz7u7cYmN2P4Ta$)%E5`Bu3`Z8A4{T*bMi z2&_K!qfHkom45Q>H_)&AVK`#QfkupItj;RlYWMkv*%NtFo)m@oDOAXeNjyVSCch z;XX-Br6_s;yUtpamuoG2(f8&hswd$wbvi>NwnXt=n=WF*K2OOa3`agP1Gd zjYL1Q3vT1-i`TL`$@jyM(}!o&J}fxhT|fC~ng3qje1f8p1&@>8?h_+=*!JL6T0Ubx zB1o4f85zc5+kt`cyz6vCxB}7N*6DqO5NINj#>Oc6Vt|uUj0q0q>)X%LC=j_UQ(Yst zH3Hs5j>dwvwO93g2tlA$en}nWG}UEc*j+Cv>Nm046`X8X2o11rn%%kH5YR>@#NxDQ z)PhH(E)Ak2C{R5lQ)+f$tAW6cp~?lJk7VR@EycV|y`9p;S~8gEA2s5L&~#1=O?^+% ziUv8bw<{^E|rswVLxF zUkd+}`J*rwdGRl5nBff|IQFh@uk3r%x&)m<__~54BMd{Rm(4BF7tx7@%E_2qZ*$_J zxqOeUcfI26HUg;DZ8hvI2q6)V#Xjv5>q};6W5e#OqXrVS zyL_q4M8-(ePn6#mdZH$+pd-hjdh8-D&0Mp!q%x?K{`$Bd-BasYJLh@5Q)o10T}#wRub;^L zn`_=6p?tAQ%Mm0Ib__Fcyyyp2$2!{!jU_?Bm!l5qZK8rZMLF`FOyI1+aRNSQrGAH@ zqWLQdzcAMgy=pOai`zNtpfnk3*E3Wc3Mv_g?B8d#B9}Q%`&p+dk%xeprzpMs%6kbG zy~?pWAdXPbD4(YuvD3qGXJL`xd5yt*I7iB$119pL4XWr@rkhmSaMa&+OJ<227$u|aY-_BdOK za}~kyq242fFC168&GKKL$1^>0VmmnQfh5U~xo^8~$0(qq(I94wmab@W}t9n4g9 z1tf%63a{1%cTltu1?s5-R6JFq-Bqtmlx0@k-6S}az!4&n<5DAfI{spCdO;}+cKzR8 zRHYGZW36|m)$){4U|-S%e$IXXVgP@&~t(WFV$5G9*5bC7jj! z-5THK+3h(qE92AxQX1EnrtyBO#=z@Z+h1&h_s4z21bHS!+%uTAFuMAny<->=CCyDb zt|#FKRz!keu8>b_xth*>vC&{7>h*RGX0MKjq4w&#*jJJ??n)Z}c)XgR4OAtv%m~s! z6ZK8arrg8Gl4rY&GU*<yA+AF$LsN534>84yn z3p8j(q@!F14gvQ=r6N2`G3;0Y>cc6Cz}n(0e@zX4P1Ad?ty2_!_pPbJMh^2~`w>1@ zZWQzF;TpfYf)_CUZXVm8Cd^lVFt9ia3O_0roSv&{<6V2br>L}M_Rp|_wUuk$?K=`~ zUR!nYc7?NFexkW_p*VKSb{v+Os+#@cy{GEg&ODt$Kh|I$5+wCVJs!P}-s>I}p(XXS zKdJJryymI4uo+!@Ie;K#icDL-pU6T$fS~%}BA@Tgc9H11+jrAfmD5aJe>xC{6CV9` z5R7CgT{kdnp6mV&n$O}D@&bWTRTIyBTSPcIn6{GK&>iMFPP(1d`apog_BVqqTu`4S zW<8e^FB5vo%oj`IHg~V*K2KngDgN&lgB+1z1W4+5HUP@VsBQo=H+}A8+LqHIQj?+G z>x-RDgF%2fSV+enIH0q*`G5f7dAK8YDm|%Rpgg1AL+80?+q2pH$nR9!JF7Bk!!Xiz zRBAa>PWavGtW&2wJ7~7)pq0uEkLRV+gBSjc?LM>tI^ixFsZMXcU&(oQeNlfnYpZQB z8Zf0BPhx)H_a^8tjo{PnqV1ODmpserex`kw%>BX^u=6xuG1DfpYnp^GS{i|BhE^j(6F=*_QNC=W;r?H5t}jP>fI^ z`R3)j@l!#Cy2uqN66_t%yiBY=*w~DLCU!9%(d3bLL)Ixb&)2Yel-(NqH3oMCc(L;_V@}Lq;B0Z zDHQ4^H)BfO!l(?>)rBc+#%Ws+MntXc<*H$_R!fuyhAxJb%qUG=^_1A8fl9cpN!{dO zbiLEva&5&o(tE!V8$wXKBuB$&aSx71LI)8mUAgB-tkEa^h+9}vWHYPRbXn&Q(5zc&$qLgq)0-P(B;uBeoIOA}En!yRrM_Ib!yJkr%$gA? zj@>aQ)_Y3&YzK&^)6K7Vd?$9JpWS7N@)0G2&eI)o!7K3Jv|L2q$wSg^>l$DYmrJPK zq%*QV)6#31(kV?DpPr2?44%$H$_uCOix1%T1gIXhfh(HAH^(~CyB zF#f$~_glgbrhWPMom}OaHk~NtqQbo8jz`IJSyNfumZ|1C0uQ&R`!<4Cbl)L}5aV>) zAazxRNbj>zDajk@S_qlI40n)F=Jub!Pb?r9n+{uz?{C`fiTLW=2uzYcXI#9(pD#S- z8j68>3?X7i&xmv;efgRCooZ}?Q5%DaX}Vp^RraoXr_&_xsm;phOJ=nmV4g(=HIpt|nmJX0A!kZPsVV*(BxH;b?p2H&i$anOd zfZ0Ug{sTI{5($jI{QRM61prT)Gq+ger#(ov-6(0m_-C2Cy56zy*0`If6iV$9i_A8& zIh-s>0`3H#Z1A9WUtQHWy?urH%-~hUy&Xa)f01fb6v6mkx(~W&z$w0YYD{+K(5!NAFx8a=mo8wBfm&{V;G{QcPsYHhl&6iGj z%UZHWP0P)R2Q-}e+2>H*>n?V&P7*Uyt(BKCbx;_5G~om}Pqeiwm{gag##Y(-Hq-^a z;3v1i{80snj6vM3pS5T^U-maUiGyFLPQQSQ1mn|37`zQ`YGj3J+C{j?ALF9fQ)jfL z1$Up9nX1%pc5rqN&u~jhv?QT|$N?yn=OK;l^TjQYzlS5x>ubo5y~NPqX^`~p-o9BK zdIk?!Hi>Aj$z$*Y$HAET>U#ejqK}{hcqFJZFch2VDnC)Ik571nrDb2ft44t!-gt)K z?4!?WIdVIkb?dAOnL4M5VmsW9Gd~NV8VJ8{vv_{2Xj+IzH$z+aN6}N%jn1j#J(NHV zC=f1>Tc^W za;e5bXq`pG{7tOK#c9piYT?uqRiMVToG_b@ND-*u!50BY`tk4q0EItE z;#K6*^M3-eqpSUB3}Onf-&#o9iy8>dM^=|B=W$AfP>Ja@!x!!NkLKd^aFN}nvdd1- zmo!*wY(CUXc{s@&me5T~qTjD;!{n87<$0$_Ul5Q$o!pMA3Az%M*3|aQU&1gvCNVCF zE+rUsrQWVa4vT3KjQui7mNhhxjB23$)nMkw^{Qft?RiN-iJc1dLWc~^(&pW_JqC;j zssa_vU^Anhyx0#~{^$>T%5_>U3K>?n&}dcvqm`jt2!wE3^srC_UG(V+q~Uo#VSsnB zv9WjN=u7Gi^>RtKoZB*xlw=EaYwAT;IkNk(A8f~FJ|iW@X*Bbh{wppQ4{P7rb}Y`h zvXb9rOQ&q-p!N_pcY3;7u#mM8Pq@1>vXQIFt)jk;{A&Q+&AV489QlUCWnn{+z%ys8 zn4`pWqdJGXM>bHz3+U(IAOS@IF5yXyY!9!bHeKC~f9{+=Z=ZUp*o!BKjeP`EV;_Aq z3V#hI239G0LXLEC8ZRkp=rZ(H^K_emQlc3@@A@Uj(0%Ro>TPN3-9bl&?!zzAlNkxY z9=C=p7rNs%pv)dCElv~VmM{4WHql#3Oy8X{h^cIFq589->c=lrU7~qNfD+bT+3rwy zPfK#Fx0_rJCEwM{LDGCrdEoVZ&j&R-jvuNkc5`>x7P;Sef~koRbPAv@a_UXo7~gy} zss)iZh_$Swo)q0CYPtj0b3MqoC%G`~#A&DryF&x_)~Yz*Nm^?f^?zZy9$NSPOV<3P z(>f1GJ_lr{S)+c;xUA`Ae5Sxf>g~MiEnn6i_Nj$Edzzm-STVWC3L2emyRo1Swv$|A*UnhL9 zyI~N?6DTYmJru_`mn1NyeIRY9U&cSOM=~HjrTYrN$k#>R$*ek)R4zO}wAZr7xFpAl zmQA^)VVp@yYj`~*P$$!PWK}xpXx^Ibok`-{R^xxJvOh1iuU9XC`>ZIr(19g}JVWv* z?iGwHqY1u<##GFOs(0+7v^U&rWyrG5cp@jyGD8>2&8KSDeIC{1wXi_)lIiJHUeGAZ z$RlBu_+^mVApx=m;DkM>`+VZ&T-*$JM`6ey)swE6CI?FR7Z6=gF}n zw29BwV%GUl7SW6OS6u1f$r`WXrUw;r;ra5j*1En3GealXTg9>&aWVc8Yuzrvp@Oqi zFFsS4RY1pG4~()f>pl5K%bl`4pON5D3{(bj(Qpnp&lCB_$Fva6|Y7xWVy4~yjxYfvQdK;N^*k#xYam;R=1>K?mdFn zUV`WryI{CcvN77Mu(5G~#HV;L!$FEfb8_3rhupZoB zGJki>|3K6#TM{uCF{F@(b7ZP)7;Vx!^)@Zm`3prUrC*mV=-6SFn+CNrOA_}Rr*JlQ za-qGrzu_+<9Ah+DBt`@Ok#gaNcUq?bW3REk;2-<+>D+mC3Z2vzeC-#o9Sj-(%XG}j zX9&SeX%@6wlZ?QYxHXusQMHwM#Mcl9e^v{+Ka6V-!=J6A^5XWl<4&UUW^PPcp6mY+ zY=k4$;9k)v*A_``(jKRb|YXhynr%=mtHI4N2ZaUlNjWxgKmq~ z8HU(s_qf?>CPKd7_M#(mb|VzJ?+UiXJNgIQ|N3@dHN58E!29Q?p&k=TRVH zn&rvEda{P3w3UbNs&6JR87o0z{`RVpw|QIAGqgC+Nk2c`&Gx ze2Zciq{($_c_;Jkc7eH}(-wGnoEpl$1o``Cev@WAKE4&J4&&<0ZZ8OxZ&H{1C3cF1 zo88Tp6RVt#uff3PO2Uk9=nt+=vKuiTxYaxS#$D;j1X^xK*fhyhIIUo1)D6B@L*#?R zl#@FlDG;y(+vNcN4j@74;pVo{{@;)!5>&^z#kI8dY zYdx}_XSBZ|-?vv0)?NFsJFkr zNDwdfJ;1E35zr%ta|Ze))m;}r0_?(rXnzXB+x-FHPxC+_MHi~$IJcH5SPW}}!F}~S ztKJI&t1hB*t0P6NAMUDi&+Mw+<0mL5D=gBgxbvGP&_`i4L8aEYqF1lg=kigU6AYf& z6m_m)LncHZ>l!L7fQG-)M*{d_bC6Z|Mi~Y8cU5T$u+maC`2E4}ix*eQ;Vi7r@CHDK z&yLq;XsK$PTp#|DF8DWbfc+HTgI&;}2?ITt@0U4Z=1ub`Ia{UR6PL+wPYyIILAX2) zuvMY}G(`Ne;QqIeb)yw(^XlG?SV8{6!`!NMt9DQg{@RA69Dvzy)tuj}+%Bw?Gq1e~ z1YO6!XEh&HoE&4K0IojVYVJ$3W+2anUsD&qy~`tUa62bVh_;_}oKFeUdeYQ7ZqqN7 z3aq;w$+s{10Hu)%$X#YtgIUT^h~4G6vDS>VSUBhfM5!tSOpZd8ohc`{-f`M4543&9 z-pK(6t<`3EfT=JWU>_yhlb*8cg!5Xbj!BcF!8`j&Hb`8b8@KL;fjhp8p5l<`=|U2D z9Zf=|$cK6X=k`8coGx z7TufdUz@(*ffWCa>9-=d&_D}uozSVDMwhuBAvkqE;U~rUeDEP>h%D;jV}7rwdgeEA z{3@r{xCB-lIz1X^0ml*+d03i$OQ~LV;HY_wm5RMdoo&bovsM-dhA{hsun>{0s1oqI z*8Xy!MH2AAlY(RcfFKykVF;QmNm}3jAl@5I3K)27-xIiQen80n88`hBMm_o{(nUxT z2QFnxqa|4*Km_kuKo1y2>-h+S%SL0L%yveN^CG}oT(aXVa|Mh~keA`?0L&cKhPKt7?i_C@rURk-7U%=B+A2}IKRF*{W z+vm#lh@8G_^oqE=)a++1!1HNv4T#iJLAJwe$R^hDqmh2cI>GJe7fe2NLbb* zdyfZRlQm9JNdbIcz_^@}N0_%Iy`gv2JBp3^JKhkHzx#wt{2(2}7a=3G-vn$yDPvR- zW+8wYy6~dR10sO z%Nz*D9(MEE{g&sM&zYEWz5RYw)!!cVNEinfslBW>S?!prUS_5breiEAKlQqw1WaN$ zh>rnnc$DG=vy#N=N6!Kmp9Ck*a<(O+!ShTMmHt(33CY$j|npfH6^@S*bN~eTifxMWW1%W<7h|n(_W086TBF4dRc|_ zLZpH;Z!>TJUqJV+D)*A7^K0Md+M@^|&~R{Z9|MQ7RF4!o%ZN{MPe?DQ)B z!V$y0luZ&Kt>(&rv8dQ}2%XS4$Z?!-MGjXKpTiL|LjBcxnpb-A z(A_=Z{5t3r$L&c7;Q&OZoRNZ;4}Bm}$vO!yntkV|J;}HM)4Z5>HNTPAa;UlL4vyH? zLE#^H@qgA$uZdl#D(7-de1Z>a&5nE#$UPJpqgcTDQRRWJxr6~=d-r|UquO$^ro z=78sU$S0)D9ek3d=hV^XPC1*hRzNi+ij{iUU$&5J1FJDXKpGh*Dk@f}>-m7-NM@VG zaNV2Qth~WyZFDeMJ%4)SELAnW@M*g|ei7U@b_2LZI>*+f}fWoizYbbi?V&- zi?{B^zG}Up(^g14XZ64T>R+$%fxs@lc~N2kUekgy^p8^BKUQ{xRir*>4W`k7dRQ;p zQNK$2kJkMweC(%33g9_hIpNQE@8Tk#WiWM}b}S#|fMWy~v^F!xC*f6|(_lYkA=AJz zmtP3RDvfWT|7l9~4w#O%;moIjr6t6&b@kPdVi`8Nqt# zDYCpk?DwWBpW>9|w%LK@n&i#As1?FRz97^`|6(ZqksbImkx1h6?8!#WdS8q#ug)Z3J^&%gJDZ$ptFpo0wd;i=iUyM%%Uwon_&>rxxKIqk@FLS@{>93+B z0^57@Y%_cYoVpoSmebsHp(a@Fm~nY{UZ8tI`0FIQlTIG%PEbR622$RuCy|mh>YI63 ze5tncy)n>UqUEa7>OBJUpgH4bQQQ;2X^mY)EGDGtcS4CY*M@S0Bf5n!B#m#1RhX3V zm9kZ^iFZBF>B@}HW-*94O!Ebb*X{95AsXGZnKU_-x^=n)Y*F6!ihwG*zu+ zITe^xOVr)ZJfNQHAt%<~`;hJx7>PXmfKCmyJD?yF1wx_-;STXasSV5g@+5kmk#9ifz{_($8^REohYjy-zxAQAga}PKO>Mxx^ijyAhyS zMWNAnc|pbIC!C5eLEl$~(EU%@q}Zq2PF!MLP`R38U_jPDN5pmtCd#7kF+-$Ui9EUt zKKJFLKA3u}4`i$l`kJu1n}YTrkf4j_UTjCR)cvugdL=*%O3LP2+8Rb@NWkQ14$$7j z7~I43ax0g8!zrt+7gzzg(LM^a1050CS4EM~@ZF!Ugg=vO+y)VA$7cpK*Tbv5_vR~a z9T5Tx*Zh)z1k9S`#b9|jI)LSf{%4WC5IBkt_s9g+IYEQveXHJEj$`FUL=Pm`2Tw4p44%YY)FOS9SaE@1@9= zylichLa#Ga2JuZ1v;1>v{Xsbsy4q9; zzj?<=6q|X?Zs|T~K+{>V5KDgGS_>go*&Kc;6Anr@;h^7R6dsw$HxGXh&Q{IjahnWJ zm#+8CJ)-2G$Y-9E{9SL`E`Y^d%~bXJJA9xXSXXk~P+i%Zza+2S!{u-Lq8jq{;N74B&U@pe-9up;t)o%i6L}0NI zSDh`MT2DGIAhiO?u5rC-@}`r%2PV|R7UHIaZ6+wSuNuS+9d=1SN2K!}?esrDG39vS zlVp4hq-1a6lLv1Lu%xde?#+_pB2_-Nd{6#+D}t|+PB<*}ZFClO3n@>ZcTb?E?EmCV zi)iZV%%AL1x2}yTOMQHg#%tma|F0JePQ&d%C1|WMA3h0`?O+!*#SSi3TuBeLBMk0S zzu&(W$Yr-1FN&ubct(&YlYzZNDt|G<7RI+RUeO!~q zKq671GS1xQlPptPN0NYm0uw&m^o-G|lparDsXf|L=c!0Vru8I8HUQjF{Nz<|d@NBp zlThe#qHZIh*>^?r_lq~Xr(DX0HD3bBJj+tb@kk5a*bTn*bagk!QcyV2d#U$4Gamz_ z<{BrBwm!(vyyNG!ztizO#!yEz+g*38)YR;%RZixNh{vt>?xN`AJ-Hk;SU(tgJUzc& zG8uvbW^V0fX4HiE*UYrgyJWtOC*Q_=G~+*~U&>|TQqU|jo4C_0s8D7`<0Qk~U6yg% zOmQ}4`9U6xB)rZoNtk?}n^ouaJgZ!d(G>JkHn?w&f_uEpd9 z%C?O$Fr&Wv>&b<2E_)SDnHVrL+S(wc`y0q;t=61))}%(RAM4*=ixKYs@>M zlD9X5PPw)Q#OxKxce;?;1Y%uF9&~?cLriMXsYmqgxRrldoyAPqI&^O=FL9-!1jHf| zrM-TA<#hmI;Ns1yUHfS@ip8O(>WmFd<&Z~gX;{_?X}{pN7>er*PHxNmvLO>ILOu2= z>oBQ+Y?qa7sHX41#3h$0(2{y&BC7IXnc30jiMWG~6;5g;?2zmm3KO%LQ!fK}`3fV2 zvWPz`*6!=)0*mj58B5w2SOgtWSkW{I-GdHK1-XTz8`a@LBqxBXFKZv|F1IUQ6fM(`V*uF|-ya$E{|{5yF)N$J~8Tr{`8kbJZIy z6K;xjoWEk`N&pK2U8&%Qjt5Kk%rF4{Iu6O87>|G&b1ltNYIl&b22?AF&8iy2EI~(Z zoO5&B+8f&l2e$mvRfM6Fb<35shjldjM<9*IeeSaJ3iLyO;9hu}RShGfjx64MlTY4o z%e<*$X+K-#F({P}^D@)g`#(i#IZ4&pCQ@SOKCj6@G?X))~c~I@%=t{2T-9q-w2mXx=F$01&QyJ{%uHKo#mdVI26gPm_DJpFXRhNde zf~a5A92gch9ksFF&~TXf3*~S{Du+LGD8$W}^f(nGcDG664tby-<=9#`EX{K{o+G8)|~T zB4xRU#8)zfy~ykKI}Pon4xA+@VYFmWn}iq&d$;W_{tyjM(;dFbxRIKz|N4pconlJ*bN#IaCVO!YZ><@R`gOG zR_58b?I%ip1;_v%#{g9|bQl?xTCw5G12U;#TDuxzW+#vz{Y2+R(-1d0KNrR@`j>&C zMS)We($b}F*{L*NVrl|-Zv*{q(vx+ivrfGdp5IrMbfx9$st#TH>)eFVs!nqsmHoS} zRbunNd)54{05o~)`w(Zh0QELTo_T58;`?X8iGu^DlsfgaXsf~~ciuvB%!`>%67!ur zQ&ytBp~jDHc**Fd#MeC?m5hVA%u`g7P;)nV&FNxZ{Eo^OhSbHm^7RWcgu^c_ONalNvH=*lIGY>7^#oq;Sw&~fuf}@HqZVnVX7IlVx zV`(9LToT&^vWa2F_mykx*2h2Zaq$k&Qq7yEeh`u*H(68bN9T1N&nryk2 zs_^|x6~mnIAYc8Exg+|DtWG?`QWVTs-`jMBvRYtl)*vU!L_;P!%WO~~3ncy4uMXUJ zT1rgn!qkarKSKhJmI1NN0Olduy=6yvLY0hc(?4ZTrEi z_NY9x)D6nN7K`i_6TB-|Mrtqyl=O`3efGLLQ`dJ7WdBOOf+tK)1bWy(s1Aj_kla;ya`I^Bt<|+c`b|RoQaK z#_?pq7axVWH}FK48WwCk)^?MFFIFzZI%y^?0d&TE>>cICQV(1hu5tKHn9Bb5acj2n z1mgkrRE9K92^rTFB10IMYdgP~=07N#EO`sUoILZ!1M*;0<_@&oB}q}Go*m3lNBxzV z@VrY99qsII?|0e7fUEA!lSCZPq21ZMtOgkrjnZMr3<6Q1T_^Njalj#4QV+6_uzzo$ zhl&N>guTe37QtxSW1lhw-OB=6JH}HYf;u8@W5c!PZ5MK8sqH{ro0cSQEN#KI7T&Zn zRp(aAP(0X{LI2EuR2P+rc?j{~@L4BF+hq3}2aTs!b)jx~T`j_NF+B=zq0D~zD0PU10+%Nc3q+bApT zLj&o$Rz4Zwd)2wB*Sunj16hgtK0z&y@V}^OPsuefj2yY7cV~HAc44CdVTB`t<;U!Y zy`woi!k9qZ+g`VNOOY!+fpmx>`9e_(vRA;FE*Y{0re z^Hn82No1MM;g2xQ+4aRLXygJ@$xKjg zd|zzXJI*?x>>=|#E8!7DQdgpeaiAwNkwIXvXWq}ehslu9H<9FhvgHCS8|fRn4x#o_ z-`GE&$d1#9;GeIC5-3W(E5E7TO#(Cdq9A6zv+knw?Xx{ZEF}%8h(*2XC&eP85Gy%l znzLC5VSMUa3cB;s^ew`*ulYvYXN>vDJZ@8?`g@60J|U^TqcSSrdn1U&De2_XUu$3X z2^GghZp~_2$+)i&ITOh0O4x#d5@c2JB9IXf{M|JvacANOgauf|H99j( z+?Ab8gNhEu3&97@8c>$_Vid*N4WswL&8dp^e1om?QHkM&ss>e5lI%knXJ#%UYqz$QZ< zl}%wGou1O(DcxQS^BRVkirr9!e)sHI=3}7&3;6~|f&ssI5cykAO;pllj?(i~;@4?k z`X=sO-Mg}acA1(WE9ZT3u_jGnYhrGLdV(!Xi;sg#qi=u06%&&i_8K9Ov7nlNlbju( zXU|D)tGt24B)|M&A*SnB8~F7j&y@2Res$@_**`Ho>hAgwqmO+j8wbx6S5b z{i(L3nKwHFb!@c_;*Cw9hTV8~&wmH*jMD3EK$<}`x7%(6R_t<3I;q@9nku6c=0}vL zKIaO>toW=qOj8@5gR^{JxpZ5n$JS`^mehC_p#iLqpdGYv>@2rrt03eOe3j*r^&<@l zd%vWE*>TKHB&;7Zt7=TQRDT(7%wnT0uRD*vwAargOLJgXbu(Bd}@}?Zw!27wY;X;;SdNSy*(d9y$S24dVkhOo% zzc(tQB1d+m^XYlE;cXd%6(5A4Djmx)r*e>YhhCbyh^VNpFY-eFreH7m0wEsZgnH!L z`$|k}SpP#j!o?<@&0*A6Ww)56y1(3b<|Y9F6R0&;t>7f^GGkLnD&9UU$`)H~H!u&h zUGltlulr;lw);JIwm(8lHIdfY+}B3yiuK$A8@k=0!cWp~#j_!6L3P(HCo)bKpkd7d zs0hppeCaMfe%-ylfVLM4Z&nMN`y-uL!32_iQM<8)S<+$dqLkmfeK%z?G8@z&K~PUM z$T)m)ubIc!n2}siGxIC;S(wtEJI(?|aiZIN?fwelyONlRp-PH_gy8J~>jz>5hL0|5 z%lE3RQ|Ew?X37v%Y0Hdyv=n&ds6Q}dgSs_oDsZ=|WkLByAv9u#!hVy5`XX zj`kTUl7u;rU5<9d#Jnc5!0z_Qa@0~jt)66{<~Fer^~inPNWerjXdwz;9b9q1X#^Q4 z|9Q=~ichwW`*`==MQex$s_2!r#B#xi-7cx&Rn&I-VE@g7$F6k&u9-aTtYht1z;h{s zszZA6uJaaTY5BF)?x6C1v!z?=*Q)j@o?f>ziDauQYsLN2mfMB+Q!=-8Hr=`t>%xwX zU4qgpln`UF2D%d4`i3ec0L4{B>kb2kO5Oj}AA8M3Q@pR9&!aB?NPk&7b}DiSBRynV48>byDgb9NwTP5;vxac zi@Sd2@vKkk;|ZSf;0I1b_Ql18@uW9!{v=f}L3--q~a z!_A;md^mza$h^KjY-W}&=fYdGusmecomHEI-ZnLLgc4oaM-;IkW0GSJ_zv)K- zc{HWO?SHybc94(62l+^a`uMcf!Rd6QmOoRDF6-sH2VGKzSw5yoestSl0H6K3^BbBM zOILV=%8(+yu5hOY4}#qH?C+6|Q~3ia?eBAOTIqPe{&nug^U@KMvok)Di%&!v`%BSg z8Iu0xKN#C)E57j(6S1XEr%;ixz%$JH3SC4XdcPl^&@4ptd?%^#HgSc*V8D%+X1gE#Ko*LlvHhuwFOv zS<_ahKMY{SEnooEcVoV1Nu>d2hm9gTz-_=_=jJYme>I0K1{IZ&(xF*tpLYlHVs9$V zmftRVH~6;Pc16Z+0yEBjTUYR^KsM64x4#YgQV^j+M2A~!;ur*gBLeuckE~FdkvuPy z6L1OXLKoF`-XOAD=%=!h*!@k9M|ZX>7PRt11lcSFFWS&x6X^UyufjCp-c#vUH3qwG zu}?{T%hG+rW$x*w#^3#9FKl-OH8%bALYYcK5VX$uu~)>D@^H5bWT4^vHH0DbBo;~A zD|^4za1ysuJ6@8XfDG}8PsLfKuiDWXBwePa)gRaG;fPi5lhC^C+ynJ^K9px7Nci0g zTykoBBjs?__{Q!FxweZNlL3=^G4{7BeClCLrN{|i#Y6H%F#hCTq_}{}i$QIR7(g8b zUW=pAyET>sCA^zURE!z+DOU7A@4dayxTdgk24AMLh7>9M8J{G@#qAa~`;UEHt}>rm zwu@^uA!J-|Q47+*2G8xTX7UpFHx#(Lq=?l|JM~{mHIT!9P5HsalB-4_N z2AVr4$Phu$iPyM1AeqN12N|(9i7mLA{BOGro#)h@^XHi?40+LAAag`#=&kgb-_Gey z$ESd$ux5Dt-ZhV*r(8NcyF&Zl6iU&b1J`R;P%v~odS3z9bZ(fhN8zXFSuiHR)I5}OVjW3F2Zy6r9qxYwO;N@w zZnRXIBAcl^B+#pXS-A{dZj8kbRCH@t`5rf>=frLpw;ThIX(7{qehz!FQgo{fpaA;^ zJtxmjJ_M*2E|8q>D9g#CthsPB0x_d=p_AN5FW$)0!z1imNQ}1xNW~&f8 zqo9Pay7{z#fs1sV?b4KH3Jv?B*1&?8FibBVxA)U!mtzWdf|Gztc68Z+r)P#Qvt#); zhKrZ95j*!kle!IjK8f5&qYG`UyZ55$mRYvhiPL5pbPEL7??$Q}iH`2FQb=xJ-Vm z2wa4-_haDs%1m%FLYNX0SI=>=8)To{JXmYjPB!l%&Bi-UX={k{I=<`v!faq#M23R! zL5jhn$;XK$PwsShwEDTyWWDCoYRq+Gt32bmmowwc_06Y6fQ*{>F;2*`2*fTex{ou? z+Zo2Y4=RwF=8=or{<~FlC?S^N?_-8jY_<0%35|#+BcqDC*XNM<+Z&+Wb)X$pewe0+ ze0c0xS0@6J(K1}FPC@xREy0se%rnFEj{qPeemin7>UdkZNFT!UA>y_iS_0Cwe5p{U zq0Efhg&VdYk>8YAH_ewpLN$OVI+NH^h?bZ-S7|p`gP3B}*_t{>d}vm8Bu#lpWA%ui zXX=fc%vcu6`vKpee=TJ&@WFM!paw&zY>t<4lKD^uPp1kFNZ*-Joy>T{Bxjyy*UMvk zSlh$$EXWg#E0CFe=%Tzc6)Tg<`3bsjoFDI1WfkKQYPN#LI*W*YCWq(oOHL6VnG}Xx zQn|YQYB@jo*3P<2C)Fjz@X=f-h5nbH(;+2XfBg-=@2*bI;E$~ia2wZ&N4x!)Ig><$ zR2&%QfDb%E^9>0@Ur09gGK#0excqU}-Ee)OH_|=tDwv)tEToKtUHgqdXMlj!4+acAVdv4vYRdy)_L^5#+2|h-) zIfBXnASf6-T>xY`VxHuP2T7n4PU~(H5v}&MQBbRzxSo@AEnz1DWglpQE#0`dQV0NR z{$c*;qp!Q@BUcr=njyhE1}@U2W`heaL(bs>48#m##xO?wDSO9&>!piJLYgJ;5{%jN zZi-!5qENlssy>i`M|WVO`EJ|I%0pw#I^=_u$s>F;x`PcRu(>9VR)9ID=vVOWX2-V*drooY2e{PU`AO1#oHJ>yWr#2okK%YV=*10?F2Zh@R zc;NzQ;g;X_(Q~|f=+}Ya6r`Rum%Rs4tB;)(;j1ijof2qEZLyn_nV|i;KvIk3r74T7 zt$modUo3pEzY-LT{GICZPfUjM8z5(r)&>?c)6~!1;iH2PB+=fkHGF3avp}yp2Ai&8 zc8%;$YEL4vBc^12x@4dp+<<9O>>sD1=syeC4R(-Zwe@yT+TxCL{+{tZB{qIfV*9ya zc`iWeUP7F`wd>y7zqzbC`xI1FHORGzDXN0sm@-Wu3IB z@FiKpNs={nbT}LF29(QC2e1wBsRaf${U&5I>x9SvL_#9gbbyM@k5&*-9)Gi2vhMI= z*0IM*>K&a$P@jj8ky*Ze3pKkmoRQu&@Rt+lUsGw(bC={WX(b9&ufR{E1G(;-KOQ^UmE33cwLdU`u>UosJ_Z6OgsYqz?N=naVgY zTx?WiYM4C}+sE2b>XV%{i9>t^Oo&lfwDv1=gUloo<-xN3ZgU1ul8SFU^zY(hllqp) zFn+0nB9)>{Rk!QbrIpOB=Q0H=K6X;XKzTnVFF*130t7^D#as=h?l&X73t2C-SZ(N- zulm8BKiRSKInJFtvs@96P*RbV?X6g;R&0ek=fR!Mrig7pntR2xGA4Jf^cV=g$Ed6< z6CDBwZH4K;c1HPAqe<rzCnaMhUxnNb1trrock0Nlc4_fx|E*g1f%&dt6!K6(Rxg10rtCgBuLF;kl z^*rInIbuqSHgOuDs8xP69<%)i(o#hFEGVmq!ziaDF0xa^newfx%2XLA!Uab%9dC0f z|3&cH1YrK!=0`ibjH_k?sx-Qj6U4lS9i^6=Y94h?Bu?Jf-A-zn2>LI^#t#X1_t)yz zn7~da|KKp2MQOV=I`7XZo8eA_5|9sng>{SORfcyWZ$bQfme{XPO=or3pcBkX3fSO=au&(0+ASR-FuU4M`EYlI&%Xo86 zC<+ue2hCX4Yh5tm;GSu)YHRuR>`ed}3QDI~N%5=yed(M+? zCwQDMTNvKQz^&$K1*JLG#^^4pww%K+R0Y7bC}SR{Jk#St0)5bHUw@*~Hi1$V44>); znY8{2YlHrH(W4$)l|Pt7?jqO0(tH>Tq@MvnhI6TIAzS9PYMs5X7_bbvB&5-3v5#CE z&;(`t0qcixo-O{=V`L(zL|HYeK8nN>==pWScCvH z?6NXz81mmA`|VTH1ptNjY*Z(}QV&g-v`&<8kqWT9h7EB3%wv+5>XrN~OgWb)4RA2rBmJ=Zb@Ab`MF70a{ z5KKaw&}r-K0941eYQCpgoVRrzWi3zZo%Y3xSWe`<qp2jVDgx%q5x0QTB8sR*sEuJPAJ1jES{^&Ah z5Fm5;@16N)=l|H5K6&uGyIHrarG4G6SugvZN!&>a=f7ga0=yGG5C5Nj1{CPe z{BJ-1pFaZ>N_-Np+b{7>v8mWc)9Xyr{vY1*^#iOui+l(9Kl}`Ex=#P6xBR~;jMvHd zsnSP`8EYd{r^)3fF^HpRvTr^cz`#@Q+`n+j%HqYbFz^rj7}C8T1A~@q@V0{8+1l>Y zjL%=V5!f>ku^Y;508TfzVuR1WO7Z)rTfhv+CXSETv*RLHvlMbqJ>B9!l`h;G@&OM% zAA;mLMSicdu~(ht<-5mzH*^?XUk3b-S^Co&BqsrN;2U~E7(&G#P-|NWo* zKhk0Pzwb)Jr%AjG*Z}0aoXVa1mbl2B^fO(!r)&+Q5%^;8{GLBg4 z0L6mOX<|_V`%x0hTgC&B)mc`or>z*v>Ki}%7+kb&Hn+B%wu%<4voaY>Y4sszPktz9 zarv|_J_g6qPj=mD4s?4_FEo4`-= zWu+4TEP?||Aov;SfDQo7*9-n8F7lyyg6jgCA4G@p57wk$GC>qHUyn!jtlj!s@~<9& zej6w-M;+PZWD5Y8_;g&za{?_YvmjR?MaK*9Aa#pg)bc{PGC;@b-W~xYKs|{cKE|vo8Q~}bJp_`1W&kvvdFW-K^{+>^O%QmA@vQ9+T9$y< z0=@kBBu#bZ0q9yRk1$;&`RQ6-2UGk2J=!(eEb4L2+!WLZMoOqvJNSV1NPhuhLRD}z zNx(-WuD08eKV~BZK&I|#$U}$7(%$@Q_C;=EFU(eJDGe22cAz@M#%0)3|2$je9z^^; z!QXG=dprMSD`^pYF!RICi_IEJQUJ)$08PhxrQhZhO6mXxi2mLx@6L<1Na);yU-sz{ z9eDqp48L~*A%MC9n)ENIepl^v-{`0CwDAE-3e1Hw=i)U7Nh~lkb}=b% zVyYE%cjI7@mk%B(C_p}q6mmgUl?Cw5FRqp|=KkhY`yK!zdN=c$wM=3$9uoAoxL*xu z?XOs`8~oiop`HylSJ}=4my7J*WM5fl z{50#$z>3PQHt{{Gv~cSFj%6vTHO6NZWMKO84haq|k$(AYSCPdW7Zp7_$CCCVhPo%jDGEG~vGr zeApl(>Svx-HWE0Xl#IBE*4sL5>j!hozlfXhF8GPQ;O^kri|l%jC9M8V9T;5$HvIBn z&_@Q*`k;@4UnG8M3nROXeVP_Q1U5?$q3IU=Gb#{40C%3O?4s8{0^U`@)avdpUM@Kh zxR`?h3CUO@95G2HYKEV2;{QYqsupU%L&^GR;Qr#FjIdNweg+iD zSl?WUlAVtQzIlF#=0Dr@Q!z#OfKDb`uj$oSfcufiElb~@Z*b)Xc+fq?kCqHi>Vqs5 zTZn$~TR|7V60XQeEja}P;;=eT^iOcQ$UHU$q!sh(%N6qfqNVC#34!{9%A+xNal}Ry zi5PyKil7GUgESnCT$e#0q$L_n`^!@P_o!CS6Fi7}-~~bp53o>&&Kdj?+>4}Qj~4|=Jum%fVgU_UJv(tj>~1bgL<*^MMs z2ELfIq@MQ|ClZ9+zY*oMTL=k2ivH5s@KY-au^iTR=5h))K*prl;^q2fA*w9kY0V$i zFNR6h%U=9)6%VW1AVUQ>+)1en($0fmx_GnZD(^zH=^f=`}P-OWg808r;F! zKEq`uBo?03Zw`dWMD0>@hqG!1aAC2WtkVGO-id8RTWUI{52%k-ygNO6mZ$}(zYkuu zNGU!Ezx_JblrtwPTchF&VA6a(mKrz1G9>{$2@XIU*j}5aca*Xh+4vV+g?>zn={F+% z*DKkoOg`9VD6JBLZVS>KIKP~LUx%pnvEBaq?eRur z-Qk?uGcc$W(8U5QA$RU6&qMxxEnM6PT6RXgIF47D5isLW;8K*QzkIJ{QO*Ukkw1h; z0qD)V%Z-PwfV}+Pcb?;y1Kx%McI|5Vx3ASr8bnlf8Hff~7? zn0Jh8!IgV2%6X^V@vhe`^qm6{ccy9XrC&_aDmFA)Ke)S>)&9|4Gzj$Y`Fz-|Z4N4} zpEyem0E8=8yA;A)Hg1&#nnEWye$QZd=0!Z`S3`RL?=!b|_D9P;FrBw-{PlHb**8-?Z+y*E)PYL0@mA#XqV8WQt9_rAAFatIZE>-!+_oWif_z?f#M|2&%zq zqM@*I)$oi8|49Y1@?O4gznBo zd(N9Ns+XE9YVDv^1tE%{eZ+ayhqlFlgRHLXq}f&gNWu>%nHRl|Cv(-&Nxd?Ic?cat zl{AM}n7y@ibDNYWA1Ah6#N_RX)}NONM*pIXBJ?5PJaJ@{0(hh~lg{~*v^ZyYZq1&3 zs(i{5{p=X+YgD9$*B8&wI<$e#94+G~^)-MObLf9Ud~LmM1BcV}z^3RE_p=PSWZ-L4 zjmucg9;M_zriHEcy$NH8q-^!)nPNMdG)=OW6Y~zR9p7q=I6lI(#85t1QTX{5--!>w zt-|c$3l~iuqrN6D0!P%@6DbG^E;|K)V8%OUsN5VTZ6TQ85C=>L)H+{ngE`K8>{4Hy z0gvd@)>jtIf)`#tNvz`)+wY(&o)V2Lwriu!R~_{hoQFo|OHf+&S=yG(bMp&v_SCzn zvVSGlCDd{m^$mAoWI+?BI>xDPUh7&eEU|>9%Sa&>&4rea;?C&=!!SY(DqQyux7o10 zbTsowPEwC0=>RVjlP}ucLmLR-&c1QKI34<+C7@0bTAnG+#}${^-(p6mw9JK$Y*Lp{ zd4bqAl9~{c(c%#ecAa=*lggvLlkgjSH1G5D2YM_UZp6dyQGYUfU#ZO=P;H<$0vpTNwkk5i4Cu%mj6jHp>$M-M_&3vDu@Rzz2XkDHPb zUQ5=7=-^ z!1fxh>zyK?TyV^BPXLsJ8|@TY&j7SqHD5W7Ni?Qq&qi=NOwuOK?xByAtn8d z?em=9@i|A&zu$XZ@B5dyVXw93Tyu^&;vV-sN&S}z`)dWZz=Qgcs+I6u)-xo+T4ndw@ImCh46qk5S{%(JT{=pResH zbx*|iojhgMhZmM?B}|e6a2m07Bco<<`UceIsKxO!Di@0EC!4^~2i^2*BwLugNx!kO z3kyRh#4kjAN2t%&rX@5`_rkIuDItkgCgT(6dAiD}Rbo3;GwXIc{}`!rdS9zJK80A& z)cQPc2e9UR{WRPoqg!=m{$O@#WUW}U%(4E3s`ZO-hZbJ|IUN3;r-$*nGBAaC=RC zjK#2ioBHEwrr?-->fxg*N3lMPWOGj;c(tZ$sKXjzw1?);L``VTjdRSB@=u7X!j(v9 zX1fv=5~qi^HFC8Ebv(8+Tw?k_O@i0Dg#~k0jAkIBA^NM=)O3VvRsAPaeiAe+T>(a? zDD8BL$P zz(toNd=d!`ym9`s2LShX)%KU90}8E6hZ}RKSAa1^ z>loAP5|Y(0IWmwYtph+-hvg|-m^zRqG*Oc}eGx=|Px6eDTr5za#4c9v0pj<>v zdhR`XP|pM8Z}e5Dg^L+LxMwWEje$S{a{yPh<=r|Y z9duY*E)_d4Wt+ZA&&jX5ShNp)6h=Vr#t%}uex#Va6L>7kO)e)$?yZ+s0uAw6F5URD zT{D9Pv}e9XS66?V>?yfa8qwBX4cEW^#3!>wN=YiUEEegF(zBK?S2oX$)T1Vwv z!U9`t5I`t?4m$GKlcyvA68Bg7`qnqyrR(X}Q{C^qrr^N6l3!Pq?_CE-1>=te%)Qa~ zUZaO|wN0=D0c=|8%eb8(*mB_-P*zv(oBl{$nz$9T$VK*pJ&-`;lAWD2&k|qZ!IaPqHC~?zfwFRO~(fD0ws9LyKE5*zw#3BHc=8yW8{N zw5C&cV(o09?AhWk+Slj&9`w)yB;*PRfAIqwuWH>?)H(X^KLa;Nv-dJfHa*{!t#b_& z)#+(9eo$ZVpy@a;_IC?ekW#P5p@XrySZizLGKu_;lH0nUZ+elh=IS~ERn|nZvFG+|}hg~e9&PGTQ zEBiIkb!p@7?3C{$=}YWiA@72}&(1qH>!3T&!PXEjTn1_XC@E2%ES1^0EIpL?W8wWHfiBV`U{? z$atc*ZDs)+r}$=QK<=vhD9P}v;>W8e)pFE1*VbRLFJ2?P7e2~O|I-BQU8ErSxi@=x zuKPIyWD&!R%aVHP_FLmX7*KYjcohjk`Pj?`pI2{7K5oUzUeT9 zJAQI~Y)0^I9KHqcS#z8e?iDQIY^k+u+BRe)BAxd5^qn58%dy=Jf0BDAJEY2C9 z-q54rH-FM=D<43)(dN22GB^I_cxU5*O5MiL*lZxTakZ1`gzr>4H|i?gcR8>#eu(gI zKI}+r4{Z#OVd_{W9N)(EUTYKJdO~D&_xZ*@9J&c?p19VpZ*LDsrHEWK-!V5}GhuNsOcycu2xv{@*A&_D zhkYVnk#h+~WDpd!tnL%*8Z|vXJ(2IS-y=yr7V3%KfVC!^c`s*g%=D2m4?_(jCyPNS zF2TQp1)$KEfZ&kcypS^A+l#r-OQKO+$F9kA?WMay(S8c1^M&AE?-|qPXtF5Gm@}5) zue$X-|7=NHIhuJaNp&Ny|LpIFWFU~RdbLC%yR;QOydS08(mXX;6H1D*z?b}{}c}^70>I$ zC@xL&gY_)>3H(l=m$dc1QEaSi#qu73jYg>1z6P|IB+(l|l=}6}CbY_5^+e5|&8$oK zQ3<3j2qa#yQL_rK^OBBWu%#l7T{=NF0 zZ=Jg*Db4za>DJ}g7+w?Up@5Cgz}k5QpQO<7pVXl-*l@qKG@5Wur9Sj=ee$=yPzpLf z!*KU^4xO>3Nb}pw?}*qF4M3S^=|lcdoVlsX|_31|0k_9t$WHOK@` ziv0a+~c_4ls^x1?Nnrj7Ov7bl3u?;7paujZJhxN~DfkIR1zxp47# z?uF5Z1>>GWs$vXh{W@UPk81-=rVi5;K!H*m9Z+;$4f6F-hEyi9zpstj7!Q zZYT1td5CX0EiF7C{3T6tOzQO!9KU0=cJnhOMq>4$k-Nzp%q0aGnO-ds?D^AO371sp zSWON`4eeGYnT6ec6e#!JZgIRn-SM(tvqS&qd%keO-|vX;uKHJhJkqOQ4@1mWO>zs9 zvm<;;VJVLtcqYgZw#EtGiXSCtC{tY8cBy+t#!z&Kiih3bd-%?b?v;?;XJ>S&2tWP1 z5rK?h&C+iUuKwUFaAlA;9sI+f`r#krdEe8i5}nU=!u88Rg z;`psU)(~R<<(xmK?{!3S8r{fOi;GKQ*4Ewd^NOiT@M+{kkE5e7K22Y5=j7dAtf2on z99)t+j=cS!RgdwcKNV^INonS<4xjeAnDif1!KeFTlO(@>MF#uJ#~Ny@vGB`tf5UkE zU9cDO4D4UTCE`h^6+8M%)rjd0!7(1G4UF=3AWMDd_YY@qekQ08*dcb+s$ed`5Jx|s zA^*2Y^ZrP|R8K*_CES!3enj$lZ;{c@>8GKDPkjZ&UUJ18k-RA3K=aGsA7F@j06)5YEQ5Z~K zk%Q_m3CH<%k6+%3zZLci?uQX>8~8NgN-bo6&B_W9g~7@lp0EyF_>?ws;+LGPm)B{g z`g-3`R`{a)|53c{!N7mmtuWKVw6L?TU)`a=~*gtaZp|dcezC9|bO`>!suc?oP zM)p5e3@aynh|>)ke8OI|j{Nkx-j~z^9&&oRH6on-7Go>iHvF>q;hrbr2^#V(EOSYo z9^so!AHuj-APLtRt?%(jwpqt{;!yg40O-+wiDp8rVacS&X`hH;4X#w}hCE!%6;b*5dHX)~_kR)&%lW{YV4W1UQ~`lVa`yTQ?%DgueWf5F}Gzv zV^8Z-YP}0{3C?Lj|rnOXChV?BQ=Vc5Ql0IDU~E zkCuO3Fu(le4HvLMp?b?oPvWWJ_^bRM?5}@WFuoy#tQYgplF)GAzblLX_$mGrSha}% zuxh{V{GXgX4FXk$qWmoZHb|3#Uf<_K&ShG19f&aCh;*sE=p(5|F2LKyo4ia9+ z3c`@<*VFx%?LvWp?U}kymbJ2R!a&aOe?Vw}0G4Ea{eu)Rof`N@ivAfC(RvAH8!2W4 z46rm0mZJU)7WtjQ|No{2`=Wk(7XE)z^Z$^kiN^S4|BDOY|9_h+N8O##VYq|f*SzIF zOwZrP2KH?FGx0P95Kq&b+Z=)xgkP+}FE$Y_nVtaGC@G$6`SYJh0U@!Uf2~uz&>!p! zT+xgj>;h&{`0Ahkmx= zXMppcTPXlA@VBcpx$-}DL@L}$uErvs_s`4S>@qC(7dA(p{fR~!Zgmpt8GP3L6921{ z^{;s5uOmUu2##hmH$0(hf4)`N1-RA8WxBclv2EzEp4%7t`l&zP%3lg@74~>o$m9<$ z89Z6veR!W&(OwYeYXcsD6GSq?LHDH5I*BBi%^_!_fw;B>Buuabz4n`nnxGx! z>2^5Jyk1=Ws3o+)V*u6VNy}>-33Ux+V3}ktH6IK=BWzzGXh`?x%R92bgoTyg1WqBh zwHHBj{0fkC#OnzbnZhJ6+2)Vh`s#`?ssfa_DsG5yop$}^iBr=3r{@sUyp0q{@ost zf<6I1{BiNz?4C?z`fVT=oq-t6u8;A&fd-M*J+%vuTEnFwr^v!<+)=z~+1BCGPYs603xZSV|JIJ2!|+?46bA?FXfU z5vJw>!$wxzn>Nwn3mP?H$bwa0PV_Fu`#HF zolA+OY9_1jj=5tQjpzF^R6%lUK=^`e04Sx9oIsBKg|GY9%>G}raPB6oO8+saq~4qd zk&rWDE_|IbocN+*44t8uG`JuO?!#w2F7(m7Bg76abmicP?e=fSnhs!NKc?)DW zl79Y~QVQM5YHXwoB6orBJu2~5go7drT)+&!+wiyh$R7YRB#eT{^{>5G?WbG(If8SV ztdEk=Fu@4dD(H*}j=$AhtKEZQ7Xkr5mGiQ}XS{QyI!z#F*moVnHt^1c6wJ|NPN6T$Ea5BrhE{_v4aOJd}>_eLj-Z7z)NC?u2U{>DK4 z)1rVG{0L@nvT7MP&cZ>Zrv<zI?!Lawtea%=IzqdANmg@r zUn~1|q0ikM#J$(|PL*C3BcSO@6uV^8;o6^RY3`zNsuj`^sd*e9Wu}4+K9<-;z>fP+ z9tXS(w~FRkxOT41d#;vVKipH>TpYOsSgXj!XCZPaHwiNC7p8_^_w<1LNE&)}ck67Z zyX)3YC-G*=!)#TE?#m1U&(qtRk8d8HWvtSkRfRv=@p*-NW+<`~GU+cDQ3lW@*2Jz00Kvp^}*SK0Le%wGG-RHND=4M*vh z#%E;hwOeJB?xLbpxFkmUXV`5}weRgSpB?cH7P)Zub?83VnZteOk?&(vy}d-ET4god zDxnghXuv;9R$sf7I1bej;jxBVFuI^ll$QG_ywy?Nd8zNt8}-`0ysge*bnG30q!F|I zxgV?OM}XYgEG9hVxc;O+me1-kUHY*hRhIgdwoCn(mdrDmjbisL1}ajf+oQQZK0s~j zyRE(?YI9@p+~0_P9fRnwNLfvj4QaDMSznRxMP=03)$9lFc#N6dkjNcW$2&sM>E3tZ z9Fz}45sN%&v}AF;B(xctYsRVt1~@1yN%tRnYlp2s*ldLtK2n@O&uQO=f8;>O?j3b~ zOSo|HK(==CIJ(HA+P=)m*gW}syphEbyQb$ayNoxh^{N~>&?aoZv$W?VnP%}wb_7=7 zT;Sf3u~H}l3K&J;V8<{+jf10n0->$I*i~m$V?KB>8>p0@Gd7P@B7ze|oV2b!5vG$`hr$kd}}SXtEL;=Uv1Dws97kM0e|;yLoP1rb$ReUC}0onYQ!rIK;@rrTzK! z?1-#~IkY&%7IR!<4O&%7^N;%{&hVPqiIglq6peB^8=*(XJyNtk9FWkS&erB4p{^VG zHLB+XiE|8}^2WErEz39a^*Fv($;m;LnX-iB>j~{PY(G{83Qh>n*lq9+rh|Z6YSV`V z#ALk$?R9G(TH2C{Yp0OY*;A6|i|1dHSzg~?FTTb*D=g}|STXm-$-yRx4u`PTFNlrw zPWh7V_%oIDb?U=i)u9-40=>;!L)Dm+#FP*7c29Y>-+D!MC|s-` zee(SCc2fR4!S1$71FxkUzG-LOR>Bx2Lc4oWRwm$e8dYaPKRr50FH&xvr z*AX|_sKIumM47LpXYbRjz=h9mr!BSLn%)^P>@(6el+hb_bFW|X%=&V?aQ@h`8KAWu zZY_!7)A%TW`}<$^Sq_bRg~6bwe44)^dH#uN)xPy7LT3^D(zM(CA?c3&CAa7v9_#Q< zI@!!{b=q$Gdmy*f+=|arn~!dLEPf%8Q1u(@J=S%l6tC)04iyjru?QdTttE^UdF&I$ zU6ocNB(NYLri#=s>Gm&v+$4MH(f4VNREAM+W%NaxiOh_FoGtyVO3`{Ak9UFJcUMnc zby=tB6?~tNX*_tCU$wq4%>MA%7N{oxE&r|$X)1oOS1(heB>6_v^V9nahNe6Vor1IN z^s}hj1Wmi^?sC?(rNIsg0XuO6M|>F_XFD`zzPwD5^N7GT9e8~x(-g$W|AFwK{ahC( zi>%lqAH|r@@n67Gn^|p6EMb^@(J6*vnap*YU=lk@;~3c>bjqN|V&I5^Js-n`4M6H| ziybcQA9M#@_|X@1;WcPZC@atCWv0p3#5*yF4F{ZJ8@Y3oK@@RJv-(}_Ep|By8Ux#* z?XmPLv7%d~y+?EgFXczl+q{{&e9}al^x|8c?LwlP55s~JMvvACOx(7x1xd>0Oh=LK zJ;J^3?cDe@ZmCMYiO9pwQ}pBbVI{E2pV*WqByqTpm8^Bk@24^#mbx|~MapI$=@&f= zK&DlwD=@q(*JrO!=5^Uzv=+^fJlz4-zdBuQj;s!Il$7prtO)yEViF!xlZBQOY5RSc z$5z)LuP~uh?l^l*)lqG=UF%1_*=o)?&8?>-b6u>DcfWIQn|S(VcE3BvlbW(&*F1*) z&RFyp?HcIhs6-9>)^#_q^+|e3__FyDk`*Sj3!+sOwP?7lL{N%zOJzb%MiGo(gGFt~ z5wurl=S^njl7`!XU;mu@&WGBi^)m)N>&j|bb?2m?Q$`tg9#lV*;2tWS9JA3FtK!no z*X;}*x8po6oSkM0>>yks7bo+oQ_Cr9=!8b-F9hV|J8bM%c= z2~YDiSvt2^u<4_C6>i{NR?|n0IF3^l=2)<=g|Wy!tm8P?Z6sesZiX@szP>(|H8CeR0)`TPP#j(tNnG2~ls}79Aq4 z#q8pi^@5hSjcRGITO?Lm)QCLx1hr9fu(NvD!T#AOVy?Y>p7O+y(eoMS9q}bg%{4}R z>P!xWFI78Z!d}dZcrIqB z3B<}M;IYKM%a)J$&~?$nlfOb_dnP;cc97g$7lX8~qo}gh6vzSyiv1Xq^iv#z>G zdGOau6TUC40X{u4-vM+r$qd;poJnqb z*%Pv$L;CRD`$CVo)ThX?@`Z=d3)k1EJBph;+F9~8b zPmtiSZ*8J(&n+L^z;umlMrm79arWdk`0{!th9NMcu_70Q-4=vTb$un7yRQ`}p~ii} z!1l?H-&9MaqHc5$(ts2s8_2?_e4pqO>{zb&LKbl{{XvV)J}3pQyg1h*_@X)FaJh4% zKBA{)4|s4xAx+SXs3YLI^>q%b_IT#ooJjkrDyxcxYCIAxiw9j6#n%E^uYar#;gH&m zn8?+jI5&R87qRngY;?3F&zF&Vyoze+i0^E~Fr|XG^0LI5G3TN`p)TSOPps2jJep7r z{dKu7quM57PXF;x=HY7R59gc2(`7cpz0|j90dR$mJD9&xpPcaiQD+O0yUf-WzXMzViFbV#)CJKx!0=4X2i+Y?x9!U)PqH?T~Ue zjvwiQU`x@=@@VSRPJF_T{U`DPP9HqF9(}ud_l;w=>8eG3W||WOG$t}1A`7L5fjKrl zi-k?k730+UQ09jtj|475=_zY9lU$-y7SH%y%C0h%(E9mx@^KmBR~Af@A6Jdayo#yp z5wXQqR;LVJTgp)6@~}A938pz^*g|3WDrjvVJZ6|aV{DenJHC{e`V zUZFJ*^4P0T-iEwJ4C@3x!|9)b+K6JRQ)KFH_sGLpo*jPg%`d_tN8On1F( z&*VA2p-owkoqyZGz)Pb4DKzI$?K1SB(>~9N#PL}zQZpSV;Su7Jo!YHK9L znDrY&{Q5L~8^tewj0gV{srYYFJm48b;P`>kdhE>%qDzT%kF}kq-vLf-8suM9?3*7< z)+Kbus?UQ|PB`>coJX=Y?rpCri*N08WstMEvCpS{BE5gc04>ZD@#Sgzf|6ln<#N5Uc>n;+Is zvIrDiIGS6F_399H!`DN|kmEy+J&(LOlFps4pJdGCF{p1;{WL(>GgREXZ{Jrl;i1+^ zp8@F;gx=(Jk&_QvCYv8^Elsc~55G*6h^miD#3OOZ^E}v&-VRQh8`iYuY7bia_z;g> zON}MPEEJb?z^sy%BZcEhiS=_TWwLU!tONSBPX#QG0B~i^akt`jMcn8{Jd*^~DgTb} z^ErD)2U#qS`6j1I`Z5&c6RJwT1oc6@B*XJ{2OF{MlAkGXqA6kY?LXK;aa$(0)pFqw z%05H=cQ)w8!{hHCdNB+4u{bS%(ghKOrR-b;5p)kKuTMeA*s zYdbr}+O5R8c`I>AbVZztZ8R1n*6+J?U{^HHgK0I7r)d+rulVL4Y4UicBxEFfVUbOs zFP&r*n@U{%G!%o-&nLXfmpoM>N5o_5ZOl3F7Bl7HKK(iH(&)T~vTPAm}P znX_n}UiJt1zt-7S<+z>fHD{e*H6h{4kIoHydDinm--mmlE*o7h{Cd4QF6Arnax|+b z07JF=hQcwP$3<6vY5DwDOyW=D{fZa>6qT{N+Wnra8MV-Yq*{%@q%WRZw7L%2SAZd? zd|YtNeZBpK{8jmLJmN){+_+aru;3b21SUyKWLxP$1~fvGC$=}o9J15s1kG5X5896G z#InA#R|*QrqE9^FQX0l06L*63(qbwI9*%W6?F0VaGKPQco~S-C6KY*`WirGy{b}ae zZ{stl)UJ84dfVxi6WiN!q(!Dv=hha_lx!SHbYC*lUc1SyhaNxMb9jRH`Bb{;a~|cF zcY)hXTjxHW5$v-;O$SQ_=3GqA*3`4Nnv>VVz{9nO;oapQDfdK;Bj*@4ckuGL>$HsR`|86g)Z6}08!wF1WH} zJyImC5OtYWNK{(fVorx6B9%281E%nbjhueuz{F$gq){BdLhj&*ap7iBzLT&sDGKu^Hw4fLgd`18FSpP=Ay-$ zYm0*!s$Qj*jV)ewPBBdgW5gq&^J+5{@hdgsq{y1r#w1ibmJmEiK<+qWwk#gCMVi@v zeorK-EgIp(>YItNQ(cU_pn0>(dHLiz=MOn@9#afnuJ`29LudM@u|qD5IT~@3KD5j| z>GDRcE)qkxb9SRDeTnIqa&#)gZ8UGP!``gyC(Vm-0yYArtmds)Wtv^LtqEl; z=%!AMwSF?q;2#~BSs&B z!rSvJKp4AwNh}iqNvt_qUi~nLn|_G1H^1M+j5UrbA0GHldsP}c_d5y`9G{K`Bv4?m z0Eb@9E7w9Bt-!6WxLv>Ovjy^GXT>jT-MZmR`Ba(HDJH$|pP%EhaJw!t=p z=&tTvzP%%#vXVTEWv5JgjX3%88e(i?gD*oJgk32C-<^%Sc0JryfVfIU0iTBNNVRG2 zgI)UUVSz{AFNL$1keQ8@m7kH`N=rP?nvoWjZ#7SbiAxMiIR4~{CiD8f= zWwzfZ9iC6Of~w2QJ86k!8w8Gi!K$ysOfqX_=Y}ZkvP}E<%;9v z#|iG0nz64qbYK7C?8*P4hoM|>o#0}XBj%y%G~X(QMVRd!DGzINq2pPt^=+WUWFytA zdz`dCEtE-ky|2iuKz>2Z^tSY}e#QI?@mr!Pi<)u2ouF6V05|N#o-SVP#kYaamRk0H|b~O#q?Q991 zkxYsa0-|ud#fEr%EO2Ow+z4`fA^{SNR*Z+x-5QWd+b6hCY8EyX!^Skl=iaC%%2WEm zZz%4^U=ULenMZE1?OJDP{2(h&ee%4g`B0VoMfKNAqw|L#_Y!$_c>k+5>fSF-Ig-yZEn+WjcZ@Mm_JoLdQ^SgZ4l=Z&%x|^e|^b z&)oJh9ZK)_H4}91=#a8n;})h?ej+R9S8ouaSc{;qwP?LdPpb<^|ns=afT&-qd&z zKj|p# z5y5h@s!hYH7weO8!sh!;MjN9!bVun35{YsAZk+go7wv#U=pOMn3n_YSybN?n*D`Gh zs;jEg(3k3aYF(XUgzQq$c~Et>IX;fqikoxmaa4xnAPN#L`>V}ot=_P1br>{HRM@2f znMiM~d5almUeySto^n8x4i2H1VC^SreHwPG;uboa>f+tonaW9YS!xK#(F-WQ_@v>S zd_z>@aJlMRU!JaZH>G^}Cv}aTb!1Qa>zz9vUL-JSD}8!QYHQkmv&re(P#9SIo#%|Z z2_2}jj*;&c9Ohb^FI_)j!spA?R|0gJy5>H_x|q0cdSfDM*tA)Me&RP`rFl0oXU-cF zukT2jluGSG4e){hT1M;a=VztYTb9IJ-PRm$qFcJ7x%21uQ0i?_mln!9wv!tISd7!d zsvmy`T7yRoK2N(Yt{&vN%)GS!qRhYOvNl`G44y@>Grh^vrP-1G9oE&-$m2X;?a(|8 zlnfXLfS|q#6MpnL{y2`G5NpTpyb}eicOoJ(3H38WG%Kb6aeRPq;j1%ZvxB!=4qfM- z5Kyvvkm zYj0g77dZ>kJcgqCrM!Z5siQ9Wh?w%W5C%~$q*8;4vUVhYkYH`X!tjv>m>~>8Yg~v~ z8GU~^xgXMW$|WgB9QeSTlMT$7Hoz3mM=m8=#t;FA0C|9|Uj`g!WL%6A|%TD9;qy*;&Z9f+P1@ z^o2X;rgeLgpA0?d={f|8`1jeUWO{ZDFXr=VtWRs?s4`=qzRZ_4SO4EJ5Y#_G&!mHZ z=A_oNa0tbuvRTL?kvbpIGrYW!jz<%!S*m5@Q)rSQO&)z(pT)Z84E$JGvZ~Fp>U=$K02?FtjC^CWI<;8p9 zz!=pEIk9-nvYz5Da?6I`oQ4p{coXI^uCIYO&N*sb$2&bU|0xXq%l=~0!OjU5O(0;i z3-Qytt9@Ql;4LmzHHhp?i1txRX_s4Xfd6U{HQn}7k&vA6GLQspbeMz1*JUyK zudkuq&_)kB{-o!Q3P6ow%m!6DhPAm@JrCUID~{=)7aTx&;^ESGrC#8xXa852|0kFc z;DJ5_53bf@<&)|8j>%rSm3S>RVQoi4bVJ```%$%K0o07|3jsjMW*9p1${GToe$@h2 z&uz_V+GjT0c{7Wck7A0kck=Bb8IRDeD0DxOhJQud#uBo88_qx5_2%tA(fhxy{2Mj@ zN}f?dp}gdW)dTH$}LCEY4I}i#|}AS7f~v?v`e~Fe5S)L;_mml3(PHVI)3R>`o*kZ?HZHi&+8dX zLFFnM8jzp8n9;ivC=fy~*fnHq+kI=vEVr-}|AK-m-99HRr3`68fLkrE@KyW6uv2(6RRfF@%%KieR% z0~=>1kh=~GZwVx%KiLm7J?DUCB^)*(o3X>+JxBjB8$bWc^!kReib zZXK0={+I@8`gK^xqyn%Y3Km${9I+~b7u5AOs9Xl}{{68*?9XLW(mc>TE ze;EJ|0ji@>2TQ8BT^GQ>eFvTjg{Q|)pDZ~2cjwf9ZY}I%gz^9mhAST;0(ofZn+APU z+s+s9t;F0lw}IaKBE%Wb<0EF3{R*w6frWARnxc7Nfk* zD~TV|mec3=0nji-A#C?qDwMykc@Z#dt$+i{0Bbq_|L)g^H)4sGQW%*A_o1&8Mi zHL{E5ry6CabIYj|KakL-JH@GI+bfZUKlX;SrL21Hj*fuM=w+CYs0U5Y60+x2BCWtlzqMWICvW4HgU|^<%ZnQ&CtjqvgY`^~XPOnPF z`ap>!A9OffHGGF}HeO-pBEpZZ+=E?RWIYj51bhJ_C>zv6o&;kc0etDU{k`o`^gXIv z+9~T>;#ZWg;b(~{GN~lMi)E5+-?|>rr7I#2O~-pfQ;nXug$Lsww$ALc zzpTjKfbzzEt&1X1{XA^#YYG^XziPcvNz_tngv$uAVR#^S-m4&2m89yO-o3-Y?Eb8o zK1J>m4776p^`gO#fo@2n5~v+!>!a#0tcTDR`dL%di3)Tnwp9U2rdj3q6H?|x7VDLE zMiil>=jonUbNK0~fY6uHY(%oIyAwaMLSMf%3Zs+Etd2{PrF>Mqkx+RWwtXMu>(Z?! zMD(OO6lJ`l^r?ju?p7uzwNj{&=C#6wm z)3_kn;6&Zk@#pWi&Ya({&MH45xqOr{91w1rAQ52&;Tr44_dd*~mc#s0>JM$t&bmG9 zUd@PRR{$8}BH!VEz3&^?hQt*2MOBO&&9%n`N=f3nAm9+fN8g#8Mzx-M2&YmTR92*j zMYGDwpw5l_ylPlvgBEu+7kQ8Zgi)#=_Oh~{Y{rCMrafH>D87P4hL_FcY_RRTpQTwhd=xcRdYx0*^#XSU(sk+Q#0e)&z0A@ z2=53Pz55XmF04oeF=Pda5 z4^!Eb&ajD`>omisIYV^tpKV$cDA;p9UbtCcd7H`{4xz*Ew0oRjX&;-J0dwH|k4tKq zL8SINh>=Hi4hpwUfkBIAoN(2oC-rb#?!9MSjZyDbgJmC~jHil)IDNklk%zR!aSn!7 z2}MnBz{@CNQ$Yz&Gul6uapcwn)3k3%=GU4H(d{OtB{ z6kYcn7ZRQ)R|BRW0nb=yG@CNj{^1B%O}YN+Sh-^3tyV*|BZ&a8M{9O5{4)k&D#beI zsycY2e?y$x2+x%G>f({glM0xcJUhsG>dT+pgYxu@D9X^PBE2l+cDCj)C5X|TYa(p+ z+fe)jk(G*9N(RUG@li^oxZ~H*x4ToakSX7=U;lUqi{j?wds9mP*+T2+O|%T45sEo^ zavOr}XWCn#rPIh=(kg$;cH`Uf!$A3%6f@p+(ob&NYw}OO&&-T|8~*WJ?U~y2Ht0Zw z8p(!?V4xP=>in^s8fB!mY5L6C8<)UsZKI|XAsrBY-txt9_q>vouREmlkBTd!EJuo4 zrKwM!n22^2MU&~Aip~5M5pw-yLN%hbmqj+?Mgwj*T1OU)w5~VaF1msMVubQ-3_8Gqv*jjs#egDd1h7+7m_V;6# zXD&tzy}p|rzN!4>?9hQhQUC*6sr&)%cE;nv2LkSa8f^uD2x@^+dw`2Y@6b@L_D-H| zKSCGz==3fU&`_8)_0n%IRjZWD&>~$=JkT03KIQa+mf?_nQ_Sp$N%tq(BcQrC>`(y^ zK?JYZX0*QBdFog?mK}s+LFU#y(fkc9EG!H)h^DZF;_wn=`zD5k$9@nDJWK z-p;ShTd0o1HoR_>Rn=Mfh?Uo!?sy+?%JbE7xB2dV?;Yix2@a!8*GgJs#@vaw^K~1} z`3IPd#fzwzx#{L4kMND_Hlf9b@%-KU(zE3SZ`_T2Ff8%gaArlo1{j^Q1<<@IAlBmE zVJ@zT-8Rang3VWIHF*tFUxreS6Ksd*JKe3)UbVsPC>BrZO77x_y8h{0w~IK0C&eft z0N0nGGaxu?hd$axXCVfwt%+~^;ld8amBkGV9__f-UzZ;&ncc3IXcWafnA@)YxLB^5 zp@=6~n3S-La6?5ez1R?RDm@U7TizOiz`s~O&r&nnI?*JHEyQ*IiPE#(u@WG8poL-* z@^!awU5V)n`iV!0=u^<9joVfApZg!%U`osA{iQji9klGG2Q~Cxg2v-8A#KT*uI*do zDg8^CW+5f>`g7MwFOP$acptRtX5Y(+nr;betd*}yWaKj~fCXJH@S^`ofYBGs`>iS( z_WGXQ8fC2kN48*^D{Y8(NAp~_Pe;dcnH$_$ zcW=4oJasx&-06FyQtWy-2T$F&g@(Y9bf@#<%7N_Ht$c1_%R*vfg1HQBV1+l|auk{N zYF{rGAZJJe`Dc7&kSFis1wnWUvHxkj^FCo{j zbWa^q3*AQ{y%!edo)S~Fz7OCI5Fdu>$#?ChZ5253gte2k0+-%o^^cZWuxw2Xk9!QP z(F!df7F7mBUb#&Y4m4O*FTNwJ(St<1h7M!2n z>KjqVyVlsTJW6Ee3w9C8dTB}EDva8x_q&-$9C0zO3$F$KOI88q3K*;rm1EHhY z7FYgdgVY^^A5@ZQ(<5N!R{pgV(A4rvSF_np_Q!X_^^Z@R&OSIU-B_P?`R;6| zE9jmDE4j1m#F)sA)d#vhHDD<166a^SUGi1B%(pNKI?oVaIe8fRM#FNN z2UR59i_sGUldH|oMg_fHumA8Gw{6@&=wb%qug;u?nt`i;ZqF-|M1lG8<4D9}_12uy z!al~@-12K&*Qn-ry<^XUL);~2E?2!#q}IlpOZ(rfziuP=GqujtK5Px|dwmCQx2)n* zqcXkV2yPKHPgQSoMV=;AGUa(c5r0H7;Nh71^MU86<#IFtFKY*P(e39 zPHI9_tb*nDNcl3ofF;o1-C(Q#p5-33u4h`W5-23fnZ$8psiybr<@)5|x9tM44z)`= z3+b{U)|(>*Hdb+h1GxD($Qac@#7w@(N@d&fFN7Y_B>+vH@Opp{|=Ivy)!?wq~ zCbQpnzI{3^ME&D(ylbSaF|VqmY>W`+M~9sDQiq-FESZl6-%1Db`6c?|(xp~E7j@&) zI}S8y2U3kKXAm|4baiR5Z)KNYhrbxe~j&bN&c92{ao5(5COtENwqcdOnV5DvE17VAm$ZbC zPO0h(+1jpZRV1fdKFd+Qp1b3Z=i@d;=W8F%e-^5C9l?L{i4TW4x3xcYrk0JyzLJ(S zvNd@9m9i|*M4fzS*M&R>-=nas|5<5rsnQ{ zWv~8@1n$%Mc_I9rzI`0b+kPJrGE%~6Xh~&qI*V748k(1GS0NTYFT8b9KLDObjP~fx z_C{s#`TTiSL~LE}SfS*cgSXF;E=D~55oEhcMV-GHTbMY0?NN#4M>W^pj~9H*-`Ub* zc@UiC*BMVBv!LB+yEmNe)L|237-lM^BRF?5#rzIkccH`!FqoMq1q zLRdTVCOD4v=1WkLo~wu>#NorJ2$JJXlwpCtr_@AMEe7Arf8v`i$t<81MbtR;($PcJ zoT##n%TX!k)m^Du;;XM7@=M@2_aBkcS34`wFN{pc2lTZS-wL1o^or1KPx;JPDaKS( zw$$jJ==}){y_&v3Xf}5!yA5NEsB^Gun2pGNuPMmWM9Mz9X04`Jd(}!I-k_uH<=J)s z-zi*)fck)0g!^uPz%)QP>*X!vOy}|mHGE2q*sQ|y;4F*j!T@fikYR09V%fUOlzwY$ zVQHqzv0!eqBZjxHPM6*F?1pOwI=?>C%)6w^w`}#)hYv`Pc=v_x&5ZQthS9bODm$gn z0O22ev!}j?&*Azzs~z3J$&_GL`ptoeIx@$tO=yG&AIa}3#7WQ2R|Z$t)saCGE(y*#=_*_B{|J-C80+B>GRXHA8c|p4$d;Jec2Ds6kCrMr)7L*f zcxr;#l8y%a#qRfxS07j%LxEXI_vgpT9ND8-$GH^!=|^T+aRwI6uI)odzzH7Gts{)cmO>7B_U>w8S32iA`nm=H+kY(f+?zX%nVT;jE3>EB;EGzciYm@Ph&y`c z=qdK#zb8Img3iPC$CJMhVFxUe(4|th56B#x{QUv z_^yH50J1abFSD}9?`-0@{l>=dIz}NU4F?~?+E1pBVI8bG=B@0DKgv9uZe|o0d%?DH z*n~l%?{nRdfQj2KnNVOA)_+rq0|`N&g17M6uZi_QXnwcIpLh3c&Eg+ z*A2C|+DdECgIA5d9O6(Qap(5GxB$)>c069lZMy0)F4b$$ZE7@cElIyG^$GAFk z?f*yJTgFwnZe8QjEuaVpQX(Z1Dj^_^gt`C)rE!^bNJ=-TNZAt73jr71jbKZ6EJ8XL z(#<<>pL5Q$&))d|{Xe{4-cNgP_F{3zb>Q+F}m`v>km{is$f|)sUI~`HPSJh?kC(zN55`GBA3C?z+0O ztW{n2S}i^Qt6n?ir#WV-**UtCv{@;&*Ff5%@$!;{3xQb_KKq&LjZk{Bs;~1#0%#=} zGH0iUMH^J(Bs9Avl8yr>JAd{b{=qs^8|^|TVclH+HXox=w*K>R)wQ?-0hl|j2glGh zKLa(2UOSpRyPAowquszVYJRrQIZy{Gyf#8qLQegk83I6z*)4M-3#F!JPFCKAoSy#izB{ckL<>bz|RbV(Y>rfjFwU?q2=H>pIFR)jpa+EGFZge9PsT zgEzA=Qw3sdAQ|nPD795*!9v{1a8v7`mvKhSGOD)sGVsl=oqeoG_0>w@GwuU~k(u%| zacmSuvh|8Qi#1hetU}mQ%umy7gZwRP#g*aliVP9~C;7D%w=>SuVlh{3`q!DfVj|o& z4cvegFg6}z^~R8Af{?9I38mEzfR;>|vfA*Z`LQ&q>aTtvF|}>r^+01Bha{MV_3hbpeUw=!4DbK&R1 zNW~ezNLl9j_B7XKljZ3RUm?1TbU(2Rk!`UX(v}Ip$7-~$hU!E?#=Ed|FvC?Er(8Ka zTg<&w3)Dy3y@|IR+?DRDMRpW3r8DAzmYQak?+(-*d)9cuXSc*|W7<2;>EtHkf>n0) zv@8EyO-FctZ2(!1Kh~S7fefWl(0K~)?4wn>q`Bw+$!|tFzFI8ZKlrt-qM^>M;Uvkp z9wuC%10L`xw*P*a2atZlhnBQUW#ckn5bFdhpzqfkMJee#qT<(Fn`IB z(fF<-b-&|=Hs4CC=7z?2!&1$2;l`LLx5d$yrAwwuGTCtSfKO~6Y5Vp;y3qhqYq7{8 zz-D9mOszy?<-9(12Dcb*Beao<%}tpEyUrQb)!Jyx2g{zMFq32Jo-%`vYRqaXMNp2I zxSC$E3r}^F>nb&e3cM$r+n-6$yeIBFbw4|M%0nzHqHBq<(Q$O(l}9gyuZ3lT_8uyHU8~rwQQ|{{MAVvOsa+DL zOJX#kIMGeV<$)n;tKW2C7GUucy^bTa3x zpgj&v5WF>SBLJFT&o$#@0xxTg&Sq;TDpe_EY1*#4uh>2#<5(1lo_)`;-i4b=V_Wa# zl4z))cpsM#{rS9Z9AVm7mhMw91ikGj@}R1R&AL1-I4mdm0x}c0JT((v#Ba|kRFlb8>t`n< zLlFF3IP+A~`7NiRdsR&Wkbw{(n&^y!I6(7d-&Wz?aw)6I99IaCaBf(UHCJsT9>}zZ z1sX?& z#}}?h5z1uax{}&hhMLiV5^LngcaF`IIhcXU`7= zENvxmXAy?xl{bAnY5{|U&FGh;CJ%v?%LlPoqye}9}s!N zsv}mxbdzff2MqGZJ^I`vZ8jN{QKA3Mr*0m7KjtcGKC*^Uhvd zeVOa;yEdhpC`2dKgMLM`d>j4Rb$%imZ!8ld{vh)C@uo*KqLZaleY3J2{dPpcuZ$gX zCu2r}LK%uC-c7~i-T9i78H8INn3nAf*TM$TSvm#h>+lIZDOYYYU|e6z!mM=%3g2U_t@`76CU}hoKok_}ZJo5gCX~CNG zLP~7K2E7>ao+-!af?`?YWIv6)Q#^zc0H>FYusprdRq$yR^>WHm0xvVSG=2=L~ zysr{cXJ3vJ&aRg0>SSm(JFnlitYCPF7nq5D?`3T5%x9hxhi{V?W!G$g+TSZ+?)LU% zzgf026sgy^jp1eyJIB!Nzr)KnzIN5h$UF>8otOPSU!I((-$5u*27&n=O<*+K$jm(!?g7GHMj7SK2S z6V=vCCD;)HrJJx#$2x^bZ}{rE%P)XlzU3s=*|6}6(=fI- zSNxjmbIvQLI&~(7osc@-tLU5QXJ9-QUdXMZ$eR4r-SgtCs3L=AS4z{7LIMbcI7MM>*BebbU{bpmC9Sv?ST>C}Z1CY_Q$g=h7aCA%pa# zxS`O|DD+mjQI1!6m&OlrQe2hJ=d3({V`a*w=F9O8_*T2#3H|RWy)01E8^Ei&^y<_z z5PfN3Fln+2)gcRaxqoo<$vp~c(Mbos7gs!!lViQycG&)BFrcI8`lmS80WP6=D#Bgm~R-ZyWzry7v$T`QV#py0Tx9&HH>AcjXZ89lc-ODih%` zw7a|nEap_y%xcogi4Q{Fv&2Mj0vbjZnl){qEaT>`LSx{JXMN7ODMx>2jPzE!<3(#< zuvZJi3@sB~{b;;rJ`!n+T_d9XswKa3N)qRkeE!S>bVYebPE z_S{fxL=^J!aOv0QPHt6@u!Ho$2qvH`A9Z_F+`sng?d(FSdohiJXvOE~rnv}=_oo0% zc(Co-;^-p@9=#!{NuzZ(8K>N!hn1EWiTjE@DbLwfgCZKsPNTa zn>%0^si;$2c)H1-aj5e^IH?0+%w~a2TP>r^8l~uum^J7apYOofMW0@Jku#H45;5{5 zvKj3kzC7KR77ya1Dww9%({4?16DLJ&Om2CLtP~fTl!rU4H{UceQq=jzqjzc2PA6xC z_e4#Cvq8b@qTSuL|0QPqi{pP6YL{HkwPzc>D=4SA?#}Zwy#>mp_eX+xU;MaGb;hf|$U?&20Z+46%#KrFq$D^vGJ?eCotwV`g8PnKq7a%Mr4jCoV{VrLw7Gc>+4 zVr`-`tWY^~QHn&{1HIR?hk4l=$5AnJyc!guKcY7>oZGj4EsknjO;Wi(A*P};a^9xZ zWs09$mM{B29pJII8|@zAcy*)307JK(OsQ!(I0I89$5X#QUyTcJ5sr}H4wSpGQd$^o zODJquT#r+l>oX9^B_I{*l)bZXdv(qW6(BJgMevkc?VwrlYEMTm6$?YVhq%+^NY&j& z6$l1p5x+)wA7jw1Ev#DSf4w&Lynn&0D@pO|ufx2(gTirBaM)W-wwA^SeKCf1v0HbF zSZjgxJf;!oUoUnVu==_F9#L_fhHMSD_V|5FxNNB~x^>#b zNftTxW?IxFDh9})7LxDA9+b;oiF0G2du<_|Uzlt-I3Q${6?;dN3Mh+rWP~agGp+6q zw*d?g;21PeNsZ3Y>YiA!gbE&yd5R+*4rJ1C&QqiWBfYdCvKZ>Qla2>Haa zePA|BC4g>z_3LL|RC~^_%S$;eguzTTZE1gVY5a!D;JYqeagjif#*Ee zAJTZ6LtiTI?wzhIlf@;i8B~a^Y9ALiZW6#VnhNKsejH;#=d+G2{XAWb7`chu&y6JP zPTn~a*I!w*DGf!FYRG(9DNhaxUgPK%iIK2n#0Ew3Y1y`w$~VvN^)v46untx^H`J3d zI~idwwN504V9Vvo4YibsY=9|7II_9Z)k`J)p(c~g3Cem9YRU~N5l={on+Ca(XNSgJ zeJ|TVAW;2Rem)^{pK@5Y{?F)XkKd z-P}2txH^peoQU#?xz`vy?p9fLzTM72$w$Q5hefyD%xl>Hf{P(OK#rTmNy=#2JZTjX{?=ughs#CT_-x0kJtBrvl`$w^o8-NVGAq%$Gy@|o z-A%DlmtMZnbo6o&E`OhgZ}6yeLCL1X)%E_u#-)z%J<0zV4@o&erogisxodTAvfU<~ z>puiwlnn-@yOxbLj@Bk@b(on|q~|AaABn|$Vp-O{O*1cM*ZCp5toh18z#rM0Ui-er z$T&p5od89Ya~va(>$=)B#&(UdwfSM$K5Di_vFp9Tqt@n4Y~l`^Rc+bj-~&D4AVYPM zcb8Aois6brslGNQM#DeJx?^hBE;DmNye46*#Y|PETQ7RVN>n%I@RJsg6p|jJBJbiM+s_anp z-g}d+fE~?Aa}pZeb0{^EbU((ps*&)%xSpGPs2_IEJSK)onFl;?S5<5;GO#ARk??wq zIy*K%+xB-fr~WCVsQP7n7EajB@hlhf8TH^5(z+UH_YHl#JV2B9?J0s*+tww}4zgtH$M1Gqy6O__@x z)>3S55cfS?ZgM6GyC~eY_C10=LIO0f#G5IYp1`;spwgb=)j2ve5jXW?snA zEia3naLgp|@5J`LIXH4#qT>lB_Ln8gljekLMb343tl7_p zZZU6qbx4k`Y-K1?%pK4&Z!^0+2=pG}KyO#4WmR{}&GH1h@A2n;l^-S0{y-XXb!*#c zxiL5S^Q?MQJ@d?lWsSBPdUBPe{>L*uEq}bLgNZAWcSyBdVN#1YR%j8t7!9rKc7sP! z)sXM=jGimobLOSf17eyCB`;TB-aoXMTX+E_>z(KCI-F0~3wel1gH6aftf=5wu@12- zYyG%>Qd3OTnI5M+#!!P|G?U!dC$0Ku)!Ke%y~9)esX93wv)ckXrcrK=gOSnVc6l2+ z%2_{@{y7T<^vEO?U{^lxR~IHCKuNY1UZUL^-`plyQu3cv_rKRLpKm88;%?=gG;o#H z&6i()eSJjP=E~1`*|Lk^|Ep};LM8I#2sK?34KAogun!j+{%DH1``DlEq;3O(;0(it1cF5+Wx^lM$#o2?<;licm#NGZ ze|C*m2!m)IqfqBe2MAj7fcinyCupkfZck;dXLW60#wrk&rN|pYYUzuLHbh3j)JLu9 zCK^dy)uA^-EIhuyUg#AeSRxsAB1}w~gwdox#PxnjG%ndu2N5El=SwCNT@@fOzOJdvmEM>5+k$u;NY8WY`TZA<_^%ILAp^u- z)vwte{QqEVJAtdh!|<&y*Z%s8|NV`T8L&F8zK99Oz-zLs~ zD@3kdg3W2E;dpG{t^51KN$T(s2Ha&~62Cn&eB+2s)~bBC&k5zp=(|4{D3972qpsTC zd(_H#_c4F^I}V;BsSZJ6Px~)fXkWBYF=1bBRtb1`NA69??QrUqnacT{x8-YcTe0~O zj;q_7a_qB})peU$E5;Mq_^tBJ{ilc^mw5Obe1B6?N@@T6*eFgY)I=)8Y5b2P=ihGg zfBy6T&2Kq6hdFl6z8QpAZUdP+4+vjs<6`k%sx>2H_J@sIhN#GUoSt{`>~`gLqxf(A5yUl0?k^$6wJn z4lnft8(Y@BEaQ!5M$M%V-+aPNzi?#rY5(I)`}emfJOL}}di{`kBWD<}o6j%?&xi+^ z(kmDK#NYqo2T$SPLP`4*U%%@A^5*;NSd$bul0D5Ibi{TLQ~#ZH}WKa!M5cX*1nYhtCB|bF*hE)zC#$s>c0cF2XMsJQ_#)Mbj^F zqSdG8(|+xL!;$r{-Zc6*N?V)=gZs5psQ(a2ICsH??q_z>t&C5^)TcYxbV>iSWdG|n z=pMd?`>lU>cuAF*`VqJfQvTs{UoOIZ2y%s+orE5C+5yzrPg1!eGVe8-x1kLogO(y}kY`OBy6! z3qabT?=geGEfBBDfx&^#7sb05zR%#5e> z>Db;`_ZMDzCH(T~(_57uYeirdeQ)I3s9YfoH5P#yXE_+@SpRr^`fHft%)Zb3p)cG9 zapd6*M%XBW<;2u{X1!S^GJWN)**Ne7b-_7z#Tj!M|HTF9ub0OKt1j^J$49lWT>R5V ztp|bKI{PJx8&pB1)C!g@{XN0;zR!eHf)gKq}FjTS~} z3}E8#J;Wi#X%=dC^-37rFoFPM(_8Qr3~J29E!%VQ8>I!!AI*Y1H)?oK1F*e*U5gV~&GivYEZa+egD$l8NAGoaGV4}#|QTtSR8%*6s z+)QC^j)p_7pM=`4p*>(GQ8}a+lEHab^WFjr2^dylVy*x?+APoN!@FA}K#0l#Ch6xL zU>p~>qCCW$r*%C*vaQV|I_|<-U}soxtA!UpnVll2M!Q|8zYOxP@$;`;%!g;dincVT zel1W(Q|hDp^5k$<#~Qj1(7QQC-GK@>$DF#(lKZz=<-I+dZF zWAdKwyOu{d~u>CG*lV?()cH#PrK(DXg%lUHcA*+GIK zsLR*Ls&}#O4PYb@yKO6v)!AHdZY{+Roc0=k*S=auD_?RUsIbI-Xcfjf4d634<@IuW zRbN)wbViL%>&|>@YABVY5(P8V4P(>UbfaK9ni7HVU=jPatXj?PuGyK za@D8iDvu;cSYYE(e)r=4i__Cz50hO!g_;F@?@8h8Awhp0*39Sx7U!mj?lEpL+TjXICWw<0&>wqQI8*GoDe1)kSgtg_lr zb8o>=kr2H40j{<5D2fa{SiW;G)u~my>p%E)Zzn3wcQ{IoJr~Bf%B3qojg9LC9;Y+> z0p=DbRZY!_RdX7sw8a|Q11Sz~YXWcGV-CW4Xt$WUx8xq4mPEyH?HRE!vwE9!`vfaaL+!-Z9| z)i-gzi9oWSuPsx(NzE+EnSX01Jbl2XugH08S;3TcJirDKTDL$Ek??J1CDem12b+#O zv9Re}98-8x`Fz>;mm)XjG1(_Uy09b5qz@IA>argGf&6o&z&=V{NY=9phgQuErEuaT zHqrHPg=RzIS_wP)u^K?T87KV;7|A;)iP_e01-rh*7AFF|$zsOU+sG}X6Tb_W{}3ve zHA!}65R-k{>B77_!9r{Jo%6X+yRTyM8E{e$noJ!<_) zgkYrAy9@A~sOfBANrFJoN3Sj)WNh1zKiM7`J}!odS$)v_!WmLq@C6Tl51^GZkKVMH zXp9ryeh2dwOM2ahyCZIv$X?hNyzs4whak0mbX1+Qmmr|?*lQWrtd4hA>KINC_c5H` z9^u$im%PvlXB_Sev55}Mv{$D`_`gW@f(Ks+qq3W9ol4E_Lna9d1Y1J^w3pj>EZUqd zLX349v#e$x4ao~)5jCd?0yXrK&X!wL z27uB&mr&qB__cT1wLu()#Y)4d5{a;rEn>RKs$mYvM+*i5roaB78XsojM3YzFR~qE% zC8&eIIL|(f_^5+L_=|*2e8o~Y$iMQM)FcGOt$Zq%2vaIq{3aM+8sDKAX4|ZL!O+}5 zF+egyA(?IYr4OVxI5A~|7b9%6;^+kvpPvwz^FX7(jxYcPsC+fgcfMqg9a`Zq?&4lX)WSaPny?%AYn2d z`aq4nZ~yU#-s^#!F2Zln3iehXn@rIr3WkSYV(~~UE{f5(b4LjW%7=F=-B%pa%v_h1 z@2zQj9LcCyZoOnnU=f!|Pr_nA*N7TMy2DepQ6_l%&d|Jlb1L;aP%Nm-1<=L3kR?;&TYdKI#563R6r2L-EbSt@WTx?58(%}r-! z7s0UHOKrO0hgnL~7_WwCClFK#%AJm=c?U*3iU=tI|QA z2g7PG@HH3AYWwA;#hV*ht0oR#dFD?L2LHgG+qW84u!Xv9^yQtWFAvZ8D$Wi_Q-dya zE?>N7t7TW#oV&6WHzI<#;B+ii{~%|Jg$1ioIwF* zdvO7a&!02&<=qXPB5+xm?wA83%SLT;(9H1GAwU9&n9}k5IS7jOiGg@2aN}@V69!3w zGJ*JlDg`uo!V1~4wij%$tX-C%E1=ue{Gj(p zr3NYXr0T7AbCh}o&hz~}D1tHX?X_yipL)DEr}$jsDx7Y(?ZNSju~&;>tbS>8LP99Z z3r2<{Z>eyrb?;yLaaKSe7+yiGx8CML(=E>9%5A!HZq5%Eg=7^^i`!grneARZ!d<*U@jyVK5)7hLl}w# z)qI`paO9x3P4ORWl=tB`*7i*hh!FFyan%`Wg&M0sa@#9nY72zEZQx{Iohu$JFhR!Rzl|cOVw`EqFGnF&*wBV#jYGHAwH7 zyWd_9OzNrA)5c&tA=iHvlcYfqI&BKB-jNwuXr*L6CojlxO(GMoFdGhX<)gSyFkCe+ z2>8H^)9RY?I3bDpn9{6lg)(oMffKd|Y6e>neQ``ab=-hye*b*^3^|?X31yLx+^}3m z(ZJkv2DTAGz`Pu|nJUC3E2bNx#RYK%R|ihZ?SF$qqX5xp4ulKtLDe_Z#Mwz);1bB# zqlrQlf~`==3b&@rT!DTj@5;XNJDl_I+dr$QlKT!222XA}y6zw26gUlGxwJghirhLR zdO}^T^^br@41BJKc*MzvfRNOO*85NR^H&7pIwi}7aXBO!Nb&O4{`Ypkj~PzbhrbR! zUYVvBt#_xrBLAoBJC7{q`>5!v6wFUCnHK!}7RKb9Ly-M~fM3Kcpm}%np8QGp#jlUdZp-Y1Yu~d8t$Fzu6A>J)`GDpF1j^r2%-0dh!s} zA1*Ia7j8qN16Mkz54e(Ks>+{kmmR^C5?|da2?t!MUrP56r4Ai=G8|6K_n#%269(Uz zyxaRwp_344phG6r0~p6Fq~AG6QRPK%_LnT-KTv5s0+kxO-dGmYs-fGFOCTjz(LsY6 z(<*o%_kphQ9FUc=PC~(vH`SJ=mT%b4`qxt9Uk`(m5N?WIL37jyFeVo~Oxb=|K2QSS z0wSdMI%^hK<2Ep$n-vZ_F#qJWjCv=p^nM@W;Dcb!?Z74Mbd{a`AE zTTsKCaM=s4bOuP9ud#*ZrvUn#%k1l^Fi#tIZIcxBsAGk)S40q#i8;8y%T}fk3vD1S z&by`%1>03^e3}PAcUL^3*$&jFXV*ol_ItG_s^HcBT)VGtq+UaJec%`qyB2|RIBU!a zl6P7FqFW;lR2COg0Q)ln$vNX0yXqa68Awm+Pe3|gjp(D54?=xw1-L?ZcV+2*fUm+b zypyCsvil}Pgu&gDa;R%dkR_(AxZ2e<;gjE=S>p=3ZHr|*4ntED!55^a@4#Q;wkz_CT- zYPN24_njut0gItQrw=YxC}*qgoWwYXZvsb6(})a{Z$V6+-$Y<7kja^ib!^N96pM|I(;hoTpuWZ$rytr9*EH z@;5EL_ex129Ny=?TZAMX6*U)n2x(_&8T5$1gLKl1EVkMGV0U$JgAT5r>w8%6#Fy*% zkD~*luoUxysF=z|pdhGXEls#W;BKBJxqu+a2qy^)#|?{Zajh?s$u`_;u&5b!G0XNZ zST6+M(VGXyvztPO1v$fYA?1!0d+Z*wrx7Rt7qbdEVN!7)UZ-u{7!U~CL5MX0a-%-r z4uX3}6t@g8ORDTFR7(#=qtvXSQ#8+R_SOxWHQ>Wi z2(~+53_hi*he(`Yv=x(u8iXMi)NlYsuyuRe0ClYZBHK)JVt^pmbKlxx zZ^|=w=+0qV`b!-fSnm((h;LQzZOLyzh%>2#@NGrOSAl91np%hGWahq*T?R$qXPH>R z_@?tqPf+o4IN8WoxvCG=ZCP*$A#1Q%@*$boV86H~8%+?fn^jO#&}pj8k-y*Je&Q8` z6^9kqtm2oxTwNN%>jf5V{jBRJMfGbE?3K8JROKeQJaXnbjqD16 z%U>&N9xr-RsaGJnH4OyFi(ua;+?}aswX0~U49gaH4pA+Py6?z082b32Wi zqYt~c$+tJS8gh_u8sa(amuR#J>t572=5NXH@Oe=SYuy4+sIk}fug{oj ziX9>I=oE;~(tHg=hWi|_e&-PUyiPMT_2gkum2AnZlAn~4samSE>Ea*5*P10o(ai-K z2;%diOH3J5*l2qrfg9Y;?mo%2hN-NYfFI4B#|v#+c4WNyKs|_}686wJV-ZIn#2nZ0 z61jM>3VK%XCMyaRF5}Pq*%prIw+(o2*+}v{m6X-(Rg4#r?6(iF=`U#sTbu+F#ipoO zuQ(`ysGRO>)RJ*@-`HJzb?gXpy04<5KjW+GqDl0OhUCV>PZ(c=Y=CWeZ_UU3V$?4I zfIZ`P7|#~+q91DNO%h~x(ljrtM&FwF2DD&}NDex+owXR%&@5Ib zr3UC56b6*7^q%uy`G93@0X=0&O5U`&A@}`W)H>3=s+J2)XMq=$CR3oEi(zk-ux#hI zf_T~dnEwH}L>QnxUUwqoHs6(FKwQiqD1fGz6qMLspOIM~&`g#VD@%s(0{iszpt54MBs9n7p)r&2 zS@Yfm3?SJ6MwSWz+HDoYwc{_-dv~dvL@!iMfy&BdE9(c`dJMhBjt$~fX$yao2>RU& zphi zpPNSW-V&ojmUg1Qhv1F7=D#Kp0agAtlc{oGsX7tHw3&EyBdh_!P>0X%RDl`(Ts zt_<3PElBtYRC2WTnoU%pwHs!+0O35zJlbOZ* z_=PzDQOi(8svSmz0#px}pYSc34P=(Sp>q+A0{$*lx_3Wjtrt7VpY*%)b2RuW?qo)4 z#Q49h5lHJN*xe8NRR>qd;J~@wFJf>gooTF{|A|_0?6{_vDr>za+vJ)EcVLK%9>9k zyXWo4Sm68x@A*)+7I*J)!r+GvTR3Y_)xwaC!q7$`bU#vKc)xf=W`zY76t;N>L*dxBT_O$h(3<5vd zBa1ECKH*CkPrn5$*{YoJ*6#NkyFXper^$<9pB2~St0n)z>nwH#lKGJX@LR>Vu>TrydexTlN)y zRrYz;WDvf3Z(vS-JERZCmABzhhG&Oyn5F%XwM1VNkyTCcC0}s!Knx0!3PddjA*DR>iXeJ2V7CuWC0hY9x<9$BfH8Y z%ep}V8GCRdkLvk^jcbE%(o@yz#J17*H13{E=z;$8;4tKFC1hKMCycCQ?}+U@9lXHz zOPL^G6UkP+^_W0rC5Sx316@LYi6Fqv1h_to4hzFw`riAMQT15JclupStaW33xg<6f z+s5AmKq~vLlb^JbA|8j*p+wGcl0(tg)8P2A74wyxyXx{iba{g%C~?!SC+{QJnSh8q zQ)J*(T9if#JuQ;^hss--PzDJ`^)lF-F9&y;X}?Y?6MXk51jW?}#DIQX-RP5-La$q8 zoJ5s>+^;ne*$pM>BV6@OJ2nF4?nk8rgr|iTV0)Ig2o5Y?&#(p?(Ebm7r%mpk+)utY z5`4~sj~(W9B_O8$irXt-C!jDd69~K2tgB^Mt*mp=dA6H=KkA$x3~Hg(7Y-hDT_R`x zAawa3gIxc5ehStImFiw~JqimT1}5{}pTL^POt_8GZ*M$<=tWQ5h;O^KPY!^DDh2r1 zHrpsd@lo?M{*&|i-`@Heq5t!iRns=AFQ} zU+xG$Q%Hf^JTCMWy~d4J&pDVXMXsWO23!Lv#*uC~&^eH5GfDTb?S7~`9Z*S?-(8Jm zLLvh{l?=TCr-~n_)AT^Y7oj6q=z&B|Es%7duEvP$cL}*j`WmxyNU{(@N=#N#(& zi)ds6gi!=i=D=uaxRn~+PPEU9l~2PMuvl1;}#*V zAtagBIokfjkY$MIS+M}Hk+O&P3__BX2OwAZX65?N(CYvzyv7P1**A+3fj2u4DBA<* z;}=rKwBvLtLp^5kg^;=65QbBiv16FHZGSiAk&~m1?;-K_$d~_e*Sq|uIQliz2Nug0 z;N-Fa)jDsRpZj7KJ<$P7<*JD!Ya(yPo9w2fwvh%%@G0_ z4j>R0Xc>;a&pB7_4$if!AUJCPt&%x7ZXf3N>X_{FZ2%tck~$#dR&F`rMjk)VV(#lL zw6Xz&un5#61r732uEFUEN^Rz8u?`o5U4fH6*gxq9bg*tXov;93*j~Bob+15xx*H^x zWjv9d(PE+K66j3M%$q>VMY16ZbDpv&JsjvHR=tUEaC8VwgFlR<5tR9@t23d!L#S7y z9%x`}!U~@*|L!GXT2TUqu%~dlXc-CXZZrsCyM`)vVU4;#barGuwU86i^?Tq$o&#_X zX}MU}D!u3^3lGUYRq_>piyl&X{Oo`3%XNSAjH%HXv&Lf{V5N!*g9^Q1R`_KJas-6LwmRT}-!RES-vaezmnPY@5|XrQO#qQ@ z#69bicdE8%!@TK?el6$aZp)6ih%wS`x*%D2wrmHc4`S@5oL$MDc;(M?{7)VTrN1zwrK9_p{=k3g-l)>CA zu!vGqQtkj+clv+IJTV>}z)o8q50p7)p6$=Q9nuGB8g+DM27p*ubC$(FdiG1ueqMqw zT(v1UZh5JO&e7y4!;w}ZH(A}TWz`<9Et6y>TR?j!#5~vSt>7t2pCw_U6b0j6o3mz( z%SNATCDD_;g_$1wcq3oc3k6{1jm=M(3I;=qQIB)DH7Mf&+;`?a_3fpQ6{QkkS6Z{u zcgo8JL4xRJ^DqETN(J6B9Iyy{s49YZ7R1rW?01E?jE43I4jkCqdl7O_=iky#vp9;1 zhK}96UlGp*lBmCGA9qX{#gL~*o=D}leMY})`T-w9+`$#nKIsSmGWDMe>-AYULgajeT9 z0f>aF)_;;?PeW<(hKjIWx(0zgk(`CT1p-SJCLHfq>cb>B-UCfNz&H#7ebQ(#Q9N4*(Tc0%9$bnDzqa)nCQa@ix*tCEOg1QSGqgz@p%4Sbpio+)DOV;JB6saqU~|ezK_rZk00pI zAaIqW6n5^(aT~|y*YSHx@q67&H#~=nCR!NPqP{`(aoK3?T|XG`APtjX;Y;ATE^m&Q zcJzQm1=IAiy-QGv!>+Qq4`Y#TmJ!z<96SG@*@h-nC~4mrgGW3HzFfJV1nsdrHFPCh zUk}r?#=zLDclpc=z`$6D-f!mDfO`xi71R8YaG6Hnm#jQo6EeuF&#K;acb$i(b`b>W zkSyd}hBNNu9Bh&*+wqSCG@Kj(UeFv|?qj=Hy{Q@k- zakwT$(v$BRPSnt~M`_HvU`@(9rJW{+q|=S55t^}6$dO3Im%?ae0SJ~xxwk%E#cjdr zE)nu{`iU(b$OBqyaFzyKk#vG5S@q6pjJVxE|Clnl^R&+mv7T%VpBJ&@qUIzZP2?t>w}o0V8(5z6`kKVd1=1>2hJH%ETpzU;_DMd~$&qz)`f{z!2~aKxN9BPHN#0$A zQC=#$ttGpnt7A&Acag}3M9h2p0r1xlIJXvQeIU8g@2z7UEpt29^R5G2B zc{Ra2hI5Q-9ST$2bTIUS4dJ$IpcYsKV6DW8RowE9axk?CL$abqezSxUho&Huob8+j+g3aiE_TLq-UNVeO?(tOUZ? zPLxj`aj&?WXb3B3s<_Q)erZ3y_avAz`pB4EmG^GMki1?)VdJFS_JT6>2htJ3 zDIyI5cv=q3Z}!6Ih>2Vv3@bznJ^neWRrt?`uW*I}hBGlOKZ2_0&|gTL*dHlK5UW06 zzIk!`So(88y+$4rIXK_Blr%#7)z}Co^Aow@w`Fb#wuIDf=*X$#`(#20EJLRVf0&rz;9XPr z=Qy_H5ORw1`a#2>5239=-cWS=^TABL?6*kj_qF}PrvJauod4YNQJB{Ka^PXx6l5ss zgCY5FM+$iqFx*%J96B>FEOPZD$@bYa0eBqG_s_#Ik_?{BsGnlE854zQz0RvL`Y*9H z(D|_e?6foK0+kieT*qyHom3AU6hDGs4D%lx=1f zSgsl)8QturMb>ZT`b*owWmokD;m=zOHu?4Lg6qaaA#hxDwUDY7=OUl3X^^I%sPKsK4* z<;=PJyzQfUjg;HIkMMV0aqumCGTcEh){AN7ZMeQ=seTgA_ z#Eu3|N$Mr-?fAXz&%$MsNflBL4JHd0bpdg&$4QwtbG};Rrs}Z&Cr|7I3`Pc@IQpf3 z8syFTpH7sz86cxMfQr1-C5BdK!3!`M?6{AwLC$mtE{^h$R$GLyxxBt)yA3VM9&q_Z z2DxlAIeBJjM1Ult_3H=Z$lVb2$9P|hl+WfdykdgktGW|kzj-0icnchkOk$w?v9xTX zS34G!l(oPC>4dWl(rmaS{C??T^LdX|>ps9)z9s;QkR`lV`TL;nEfjQ`M20Oi;*c^~ z2D%PPpI63U8i?BF)u?>p*A)nSQp!9X!q6H%n+e&yuArI=eqe4BEAbW4YM+0D%mK0< z-aA`YZPgDBWy8BNV1FX;HLpKhdiveMrIE#$1Iotw>3<(}@q_Wln#dewrYFIN(d3`b zH9xN4S%AgR4J7Jk8Er>-+>lac7C0D=Yl!=~gu|$MTUxbwOe&o9X_R#QZ}7mbovIdV zz<;~BfYdkVs{vos+k0=2e>E-}fH&Fop#a-F*^aM!Y_EYl2H4q;@bio62y^9k-i)*c zNvO8h_(d*2b*>ZwmfE(VOdB4d>Z!Arw9%^77wpACXzq^D$OjFE4~A(2CnAb{OR}Ths6>r ze~;O8o^VLiawIDhM;=g42nqSblU@V#99yX1saG`Z@Oap>N#IX;1&{Q{!&oIHNQetq zYGan+a?50a`JA}9a-mCDAGDCbnNH5}k++ug)Crl5(Pzq^S1x3dx4&FSx<(bf+|{>d zIA#yE+-rYIcfmd2?uufcYCGITjayw%PWeeIicpexSUP1bLwF~zeMZJiVCHSLhKM#W z;{ihDu_VCP0Qxq@I}K|Qzlmq-ngGl2sA+v@9rjO?U>BP+{Gh<@9uDEKg-BbZCAU!z zvu7NxO_0vMfAH()?zGZi2fIjuBd|MSuAh1ixn|)diu?{+*@=wIEJ|FmNOZfN(%5f; z5)ylmu^SMzv@-PiNuoJlv7`yjK$FKFw|A6%h)l2I>A6)?40q^fCa(OmJ|;GTb0Ft4 z-vXAqhHjlJ$Z+M>9>-SerPu%bO{l2dEd7bBR9>;Oo>+k79O=1AY>b!O_TZCO% z@X6cR^b?N$9!Yz^=GH3)+u>#k0W5DK1hYc(5Cxgu(l`Pyj#p5K-=0)UQ!O1Y2Z`mo zZ+bt-)v#lUfV(85nU8nmB2X!O@diK%1(W^s+@!W`2KI%ok(>)UfZQ#1YPtcjF)~1Q z)aY7;BH@X)R!V(G*eHPIE7|UNu3S$;B$#!*7q=QJ*pajBvstQ$ziR z&(^c;mJT|Y8JC{S!sLXr45`F!*U7H1S2Tc5P`GB?kfXsk& z3LDh+5Z;yBz8X@UB-{wHLJ+dK<1ht|h z?Xzu-+ZkS2sLnNao=OAq+&tjzi6Yq;ueXXn_u{AfpeQ|OB~{9d5_4{rSUMhZWo*~0 z2YI-rS`rcw+F>>S!>#f^dEwYLLEsc%lfsr!m+vZOL@R7fv;7$$fuZ>)f~ZrOh|-O5 z|Nh7Kh;wL+8^VVJdfv9pOF(jc#%oUtd?S2h9T1fI^W>V$T=72Ia$LJ_>hcmU6K)?e zZxA|jk^4E7z}ctA-ypUhG~EzOHW?e37d=h1Ei9&OUghc04s!DfS3*ATX{c(8$CFvR z(@SV`)YabV-K7~R!uoZCw$OrtgM=SX5<(;keox0p7=qa%{$(l9*6d+gyS@NJsPf2C z3EZwzz*59`ez;m2tTcChJUe^*?(FH3yd%o#atDkX6vTSIgRaMo-dwGqP?MMD{?^xK z$2;3r&c5p|7FxD}+A^txiU-~_DrsC)WK=dC7lOlqWG38l^P=Pp1U0XwO#*dOVCbuw zS~64zd^_Z|$A+Y~9LkDR5WZ@TJt}OaAOhoodXL?tXlFsy%v>P3Bpb3kd8UMj63mVA z!ISTG@RCeW-@Xt)oi0L0O4HyA3B&Z)dP`-&$d>%!c$mOB=Q@2FOJgJ-G!8~@lqxyq z;c*~*>i|KbX>DR3zwYzc2pVPbOggeg{Ka%ZXmj*W_|j5OODpuYWX)=Odm2Tz_mUf@ zjDsxFPVZQa>Q9!f(29RPjQRRJ{=MFAl1$)AxIZ~{bsmP5m;uqpmY@_h7#M<9i10h- zc_PXHj_LSR!7zf?K&Z`B@MGdDxG~>uQhcSOcCC-!(EXd@_;jAChH*cXJ}Mzy?MA9U z>~X0HM?-0m^L_p+)vrG+EqOU4pRm=7*41y@%u67J&L4s=E}!%!kiG0npQ&=rO^#Hc z3-l8p;<%m;)BJpyB*ors3phaNg-$A!BoHaL!y&`0o7*?(xd=U<&)&QYFnZm*7!(}c zLq$md3$5xkuSh|Na2mMJd8C+EsL5H8mUHEPL2g_;z=7&r9}@p0a{o(${jbA|6o`|v zDUgPWfFYvl5VZ`8FcGD2k3;-X{elL*;%~g&9S5GLiZK5hfKaak=w$%F9Dq-m@DgVosD0Crq;kL|v}q+P=Aruu9+?ZrVvfdz zoizW_aRPEEz^?Bu)k$ytR>EkdK3Mr(%!Zu$VW1Cnbq>aYm;s5ZLd|2~d`iOIKF$N_ zy^S6Px0?+<=-Xy5HW5{ow(UATC}8vAZeO-2ye8R5db7zFCg8lrJhpTy!VL^KBx9N zz`^%Wg}=i;rym5VqDQue^Bf-1p;~~U28>AdALr>=T|tZ?)VYGR)SWgTd)$C55OC7b zJax#9;x!`L{JKa5Bo?~Bb!Mi%IFD;2r>74Fjz=$LE>kL>E`_1%nkOdF`Iv z*>NVf=JptShaR8X+_Cl-L2=Y1gQy++BHa$|-5*j(gk+K2vCqnvA>i>5KIg~)ZXR}x zyIJZd1W46Lw zeTxBEq5&b(q zhmr^sC4hcq@C~xbJV5-5TMm4`z4zwk{L>Zl3|=x~r`trmVzBnitoyw&#w4^c4dF}V zXSsg9(3S#bwZyY=t=GZNF7lqnkDhvY7h=rS)Y1+rgyLME>jaOt(CyGlxC(+UA zzKJ0ST((Yo2(JI$W5CqrzYK?Nh_eZ^j=Oq#u6nmHZFJ5Qx|* z1qBTMg>3AHucLG#xUhLQ9EXE-nwvxZZ=$|i7pkB;5BvAkb5{8GZBzVDfzuK28LMVJ zn7^`KmC|gv1B9o*Etepq#PX5Tdq)-5L)U`Od;Tx9|G9%-dzuZrs=Pe+XZ4)~h-T`o z=iYzmdawVaDDpt#3=aCS4-N*08zcW|0Q3kx(DsH%$aDDfp>F}ve?6JgXrV;XL_cxD zLV16P|F1hC0PK#m!I5TT(H`nJe@-E0k_^NvhEkL=;T-@BFLN4u%MM%2mivXatc75St2O z0ad7!#RSEJ8p=)!wG2mFGY|MxshLEOP%(;KK@`9EM`E=;^!!X;lM}NHEhi?SUk6}F z!AH))+sFeJb-=`7M(+5t*HjN?nl*ILWTbXz8g<_X);m(wWWaQh)?9NP@#*Trn!Odf zH$H7Q&)x8J1!U>od(jw^eko|+Ar4eAhEijG-~s=&G(8}7_<;S2#0T@xqk7lG?I-a6 z_(`_b!rArZX3u>9&7t!B&{YrBdM9uQ#v=z#kh@{K<5R@C&zyX|3O(0$gb@QSV$&7{ zQN#}F(@($Eqh}UY@#jF!*@Wy?&Owpc0pB=eRAXga0&Zv?!eTp=*xf&&pQH8c=fq|y7v^x9Qg2iUZC15V*AqtWmNN#yy94jg?k*1C_(pDou zZ@?M|ffh;MrDxus7zZ-C@4FKzoA3%2dxY^la%z$YA&_mNWM`CNX&{1PuS62g?x$vh zUdM^{S;v$D3WIn!P zTNQuPFKfP9#~ykM2%E|q+$VJXNlU6`m0%Qt{IJso<3-R7XVvk4t4_j)dWG5~l#F5@ z_n$Ni9#xjK1PQ>z52Tg~yCMw}kHIfiv=xTz<{JcRAIHwg3d-~Drag!f^X^)b%+sX& zh;z~nDy@kdP$75ukdV-Uqc|YfO`P5ptia30O{|`$yp}Z$s^3VJ(<0>0=iMsFil2W)FR)Q*CklTH?_F zm@dm*BGy>#Nj-H=e8*DuA-9FHK!> zItVi>52!DCU<62VV2)g82Xtk~Zhix(#?CU=JZ>iE9Ulc_TPPgRNgd%*8m|2SbJ#g8 z@`IcT?!=_yG53iYCkQ||Xtv#0GhJH-^=E-+K46(DjgJ(igJUj;5(g&~01PrggPTjZ zZ`+b6hOa8MKI0&N-#7Hg#eq9!TK9S`*Qe&0v~`ckYD=H2Lxwb+?!&O|O1m)^AVYr_ z&B9E_&SC+incK3H(ce3kVS*fkHAJXy9eft@>AiK0;$t-dA6Dq5wn z=&4E6a}ayJB(cW3V{UrV58Z5V;EkP`9ck9gxG|M?ZaT^t3ce1ofuc2(uk4-qTA#0H zQTT@BjICdw);;>nw`zAtKo4|_{msdqR;8X7H$Om`8=5FVT_k+s&6;pExz~GdtDPIR zkpBf#7nqk2wdq1`cz|ZVCq{$(3TMR>#K(5nEvNXRo#&rA4H{X7z*|`pJGf{)+o%wp zH~pP{jX0GfGgrPDvEOMv^L&a?(#t%nMr6d^rN!8P6#z7gUKhr;yps?ni#orULIyn# z_;q-X5KuK{#)0^@v;5?2C$lkfsp(uiz30>DJ?)cNmld$MD;{^?1D7;=Ba1xA;)&Qt zCjAd+jzrtkiB6ou1tsWH8a7sz^mOP@UjwKu4}kIfyY=n?I9wa%#>Z2@m|&?6eS%db$CgyjQuyW+TG>bapb79rTM(Om z0C#JUzavhuicYQ}e5R>> zDDx_KNWXl+(SEXhf`k!fa9l=I&V1er{q>Q%Q_l@KHTV#d_|bk=Om`673*nJg_v8zp zM>Y38nZBFC2--6zF6zgPYlcmZ=T29J^y#J_1>O9pHf0Ulvde*eEiZ3vO1%0IQEHWe zr06aX9V8_LsoWBFPwik3e4ajT)Widc+wpPpXzlxUah=ji$Qmra^sGa7$Knv2NYADS z+yajS2+(0L5j{**Zd6D|ivg5#k;&A^g})+(jsilD&C=4nwmqxjTsWQLxSP8s&j^-> zR9@IK&I7ybB_pmq;b_Vz2x~cpXNKN=r8&lX$mUuecaz=ej?<}7(OYCdlZ5HH68RAT zGvw3R1)opCYvHpaGlEM!&hrdr9A}ddK?SWg-wV-HJS+{Vnw76=H+63*SN;sFsJS84whRhN|9!OJiM#g8R21po=&*YWbTdH+r&C88V%pKy5zGF{fw_gz3 z$1xltE@L_6)H#cc`f#cVE!%YE{k0o^V9gH=6%K=<_Y6LwHCL<$n3DODA^Gkv_4)^l zj>fnK6KV43O2%5Lq@xZC&OU*~(|z{{9lxr_s@H7(=gf!#=y(~hT6d@8!Vuu0<4dD4 zrk_y@IpsecX=ivPX$8`uf_`_e5nuz`e4z&|GpU=OhzWWk8TL(*0L3-!JogVFK>DgSE;iTe`wO9H$d* z4MVo+wsq7g%8Q-|F30>NePwf{%lh3>@C&@X@Yp#aGh3fzZN;QDHEuy3YElR+!oH_oP%4_A`miin`Zx+%!-D+XGZ8q&iA;i zIp@EUCyS<29H)z*+m`7RnL!q&nr5E{~0s zEj1<7l`k3YdE!W*uw@k6{|Ix6jLppTW#?msPwgr<#z+`IXn)-?Uh)Jxj5)iIXMp=q zL*PMU5Div{j}*y#bFXRuiQYits*C##Tz+DohdV(noxk??JVp(RU74qA2 zCwVr98Mi4D4PmByrn$IG@f>ScBefwvd8l_k#t9^o5tsZ&fmUhzl9=7M)lRL};|ADZ z-IJI-=yKU=#qvx#<$zYn=cY92; zg15%mx3$WB=T43YyqXn3B~Y0&K5BbzJHxC*CR0OYna}(xGk6K;rS?%RFE9^rG}!4B zeS!MS?tXNs&1ya3b6b@Cyp~@Y;!Zp=v@kVM43-;RY-J0@;2UP~fMYUWs?@W&13XVA z18SiitsggxkgEuq4r}iCxR|@rWV07dBCm#hUZA(^WMgcueFQbvqH5J_v9>oh(ObDh z`%ESN<@rqlC+go&iHJTF69uH@AS7WT0*s7nBrDHbJy37lH(I@>j>i?~4R`bKjR`L} za$e|Ki&ap+%S*3sEHY`SDOTm(iI?|NPADM*e-Qzd<#enb53YYts>9Dc$90GL%G;ui zWYV|c?>?4(`Fu4=H}ATsGHGUJM6mE7jqgN+sL6ijNMx&!@~RVbn{-0;b*qB?bwy=> zOf*-ZiBc)m%c3Gi!G^HODJ(Tf^ z%+#c1m?PULJ9e#sq2&7;dIweCNXzWUF>PyU%(pZ`0{-rK5y#@La(TanhwpEHv2{K4 z7^hE0vSD4q~u5Ll2V6#-+_%Q1k7WXCGMfi-oZAqO68z3wuD4pDMXxgHb$__AzdE0dDl=r>eKfYYU6R} z9opiMGX-LN`s!Y`xlqUuCTKdq16|Prnr0iBmF{eiqbSA)xZ(iLcJ(+Nv|AB_a+Ld4 zeiGBwwoX>B$T$;j^*HhBTL$wQ#|Sq!^R`3B=2Sj-03?z9BYB2*A2OpD2tb6qRLx}F z?*ng8%Y?h`mb5ioFg-7QS7VXWO5NyJfCIYcPeJu&Ekle8I1e@uI*~+Y$sJO#?go3t z1J*+ys`4m~a8*#Ne4qFLc!J)cewCbT-P~H#q3>8#By{~gSf!9*2i2p6`Qag~18}!9 z0n6B({lK=NSm*0(esXy#INyZl={DJ^cC0Fk?x!_w?A4ce@b=}IhroA=YWnEAA(Z@g z&Ov?L4|^`R$vvYPd9?o|&zn+s5GgsRPKo!EGEyu+?AqqO1xh3%U3%d6s&z%HtI*B`AywSN#IGZ&=!mIV5-% zKPMGPu~6A-9;fTnYfkjZNRTk2rsoV_VI@G=Bhqw>QF?^iPqGx_7Q}Y@7Tc@ZNh7P> zT@q8S2#vA0Y&6Fm6O%u>1cV7_IePyfWk21jOrY{!^@+es5-wK5Cv`F^X}wUaB*|4R zifgD7oc$+*juu+g`jy4GW~X>rXi3+d`fNvKw5x|lkj{W zK3Wwbu>oJ|3>*&Mv_B-+$4^UPhh*Um(5Ld7&H6AL;eJthIRm4M068Gk?CYkPndvYb z1<1hqOV0U$F+?z^?0BlA&p5MP{m_OQ%@y+=zI5fom;(mqxEDOM`H-jWn-?M5SS6U1d?K=gBCjx!bpj>@yDd#&r)x*UHDTSFLaHc+U~OdWLId9i$OX|i0H-MuyMBJ7fS zM|r{$&7Y?~3TIL``p^s=RHvfd^w(AKns?dK{_Fyj+jj?w&f9}6y#{@(& z@Og;m?r*o-Skd1t?&+4!&@Xr$^AIwyN(RAfEd|#@*}ftx|7GXD3Mlh77qWIls5~lV z@n4cq8f`cBQy^v%}YSvK`6#{Q)c+T{au{^1=ZP8 zRu{pllQO{I-(4o*A+i<2&s|~e7g>NtSA<(C)5hHUf1gJRB3Lh1s z{qLWCw>Wb~iM*&=SwcYJw5T2tfF-8h;|5&lPY@VQ0dmcS7V$+m>i*H-581M= zm^x?&REv%!+@>M)N;s%3hP?SIRgA%COz7Hs24pxn-do-)nGA0T61cn_e|ml^OY%FQ z*woBz5}Lfg#Xj-T7I0l6wke>Nb%5~>5+T~H%(d-Exw=m{5xgsf%v+CuXfPUC>eK2Y zk_C8Tau0?VZtZPs=>bEQ^PL1p7}uc0dI4u}=Wt{Eo+Mf1O$}Zv^|=d4;TA}q#Cf*! zU%c-U&}w#g9#%(_V~8G{0bJIN0cEq70PT&9c?Hf&Uf*|sJ8jwl_##f=An+aH6R%yqVRN%ajHQVjq>N%PU z`#C|VUy&AGyts-14Y(YOAH^RGGCAgG6v)gXtK^5JHovm>(PWR|7S;5-$XYoMSQ=T0K_1YcR>G6Oe1Ry%38ZYU*ROP>!+2Xpa?bt zRf^Sul5PS zK(z#iw@~Q2en7d91KKS=?{~?IQ>Z*GGO3F&MJL}oo6Q{uc&V&ULnx>d;T%W(u?&nli>dVN-u5{Q8*;>ZdwJ*$Z4;|UTz$N6ujkPK-0uOCY#E60?6?zJ(QIO+lepnv> z?06b>ph!y9w{;6pFewhxL;Qm`0QQ}w;y)J(2ydcTfSwl+A9-jHzEQgYK4H) zj$D9%*EAPhH*HU{&i&~GgbOK{9*KToNWb_ZsnbX4*1yq*ejrTLh0-Q>2b@VE(f8mY zOmuKBmjDE4O;L~cz6=S5T}>3|$IXz~wbDGt<_7Sg=Mk|LshUpa_c*2-05;tY!tkw| zi~v5LNPzTy7cp#W2}e9w5YcF{K;%+jx>X73JI(WVASuKH4t@c)_cv(h`8uc^p|TtO zSaWA-TsTmoiYREy5|Fw=ye6PL#VYJZAj=B64+U5O^sW0LQL^pab9dq5&)tZSLj?oT z>w^y;GDLW@74N?DYw*UHkx=Y?*cP9%sbEFB6SeNCSU6`6!|t3JZW4ywnTFB+Mfn1I zqlD2WaKbpNcR2MSNHNbzuh=d~GOa--BK*+{^vi`Il;0hwZf@ziW9kqaf8W;xXL1Pp zjJje_ToUd@8wQA^LNG%>e8Bs##_YH6Rm}M?6`%#KaSiH_TnHktGv6^oyY|G8ks8b? zK67#OPZ#!2$lTh-BXA?8fe)AIMoc8c{-F~8CeViFmv(@l(j4(p(isK<`r7No00b!> zdaT!Vh=}sezOv1EgZ~q>Ic&O!n#~|%+DE=02!KjFh@Fjek{YuXa4euWz^h;I48&Ga zZ$wGR0G{~v2-jWI0;SAgnJ`%HU8|46Ar>MO0G%j!fc+8bS*8P@8JW`HYY#=qI~Rg1 zsrxX;xd<$9R3CjE{1;`-0BT3qRn!eZe7XGy_5;W<@w;Os;cHZ^ z(UZbV`?Y+3%Ponae>K_)w`PeN?0`DNKpciL#RSBv*vUY(dEdBV&Y~pV^Vp;|$O|VQ zNlL=|*+&88ku-7=Y*S-bhmM2o)BzQWtpVc_{3_dfHIf&x>ng4PoJr)J4>7=jg7el2 zP&#hAjxcQrpuf^De=qnsL1U2!Q8-|q+6?ggd2u$Scr5Mc!kyksk8gL79eHW+P?bVKW${ieD;P9Jb39`&pp^AJXZT|9j}bP;q}p?$ZG{9XWJ zLt{|yqjPi#TC%6mxs=)MywDxndwU~BLvsu=$7a0SE^G!-JN z9tzcBEg;&Zt(F4?Vx2__M;Tb3^QJi!ip&rp2N>S$k|sFKv0(p@gREJRVE`g>z|TjvsuQ2s{=T{}I zB3c9zX#nK=qRr6hs8EQ;M(qx@0J`4;{&MD2aK8tRb*!7@pm7X9G$)3cA*N_z5K>l^7*69O9qXef0KvN`c8Vj8_dk^0Yld^>p1&iBvHK%Cb9FsWj^|s{~4m@ zf*|X)OTYY1=~1Jyt~;wgP3)Z^=|}0l#aI}nW!+m6NGNiU{s6kkyEN7Mp8WI3YFr8s z%nZ5vH2YdhKx)v2Tw1}Rz4L3}wlOo3~=*dVKJy#6c9pt}{d|9q??05~X zI5>!zS-x6n=dF}{TB4ze-Huqh7&oG%!F89`aK*^>Qm6cM*|}xtm`*t6f)8^}0H3PW zHxN?^0qqdYmwM4Gf*4Kvu=1GG@-EW7w`Y7`=xAKO#SHvTyTy^@PIU#wkjC+2qEHfW zJUqW4#uGv*PCZ3P?l=Q<3};U)QggsD8g{S@+Isqfz0f5HeRv^y)f!QDYphj1De#0P zFo9?TNcP+y_^?kpF_q{P=Rr9CVz}fX_4YW4~$D*sTTK= zvo3#?UOPrYzbyaqF>o#}AWzADe4qsH{TWmfkZU-|*E0fdgrez6@aJ3b?$`~5=oIPY zegLY^@;Yv7I?!X3rju=fxIb(DOIa9CqJ0nmRISe8kl}^_ct@IU=MbDXD<;|(pnSR} z6{I9u`6tyK^t3{wdcl2RVOjBJ)%26M*MLf;{rs}LX81;)I_5Y+M&7D_cqz5pxLW2q z6DoT@9|AnKA7#Km#jQqZ1BW>0G*rr1o*!$ za7Vj37vMSKq4iNHW}D41p(@f(yad~z+c|)UQZwo7b2JufMmIB7Yr8JtchJ=rwJ@7K zAR--6`M9)=Qu%y_@k@w@-Q<*W3cNHQnf8@I4a~hL0EN2~k`x`wq-{(i%*0#(ZK5;K zJ+dZ|F)=bC;+|;sgO%?lA;9aNB1{0bPaBc|>)wsAvH9}eDt&iT*t50IL8|(FiZ>&H zdBEqIKu3Y*H(XnE!h)0qMb9F(tRX1z?OsN}jtp7fRz23emV4>0ISlP|WpkFQks&Tqog_0}rm-{aD{*v`X3c=#jdIky9$NzRuUnaj(eI;O>0DNYn>$5V7jhVp)p`%z zEtQzDeLVeyUPvGQ)$G(N)P#B9`PhJx5&KMzaXQ)M0(S8_(RwFfD+?ZARpM1)b=^Q7S*b?rv7n(BCBfAc$#>~}N>Wo>?pBi+NA6zKosBJp#< z?uP?>=!wiOp#y0b*^h0M{XxS_9@^|^mL6ZI8%N$sA`Cv9 z*ts;8UEVYPb5i=N^8&}uToTRlJ1Zrx5ff!bo79u)+LU}v(45h=Gf>rb+sX7>=8ug# zk}#e}0(HQtPp9#ifUZTGV_2@hcUl=69y6OaRQN6D-P!xuCqNKHPLg@MItAO}>CVcd zJ05e)`@GcZkAD_UmlM%1MoGJ@HeBsEJ_;wxO{IinmGEn|A-h$+FDA9{g?(1#t&$hK zdF_iX`;2ysG9hc`C$;0|IKM<=^&dPB-+!z+xp8IVP{te_K#moMjM>&0yBDo&AFS+a zq`92$-!&Q7v#i59gpz<7gUOPf)$-xE2VJV;GubPvhv{%F@kgCtriGvr=>23vBfxE! z&*;=JhNBF7(vwDb>4COV2{LOv!!$&o)a3SrJb5(D|P>MwNtKa4!UNo1e774-Ul-)UU;~@RD0|EqD=8!5R2&c>YMVPA}d0 z##Y5ztyn8fSDBZrE^9f<1Qr_)cp@|;Ic8fB*9V9jT!-bsA&uZ|5hV{uC{BBt@Q+?PkLGexo zTUD6A!u0OzU=oCzOsH%DQw=i7Q7}xiBMZ67l6i->{W~Zw`zOeD32=SNF>U4;1LDx! zM7Q|)?6r3g@V@3v)_f!Pg7H$U@=T;I2CI{kr3+D#vkkHn{yiNFi=*Wn%f;@z%5vlU zld@ode&WTWRA#c=l$H#~y(-j(G(f&&iG$vL!`5Vs3knJbMkeQ{*-XohQjgWJw+)sknfB{A=CRvl-2D(`i-C-Wn%(5GtC%*e>6Jl@P*VY}DUYYj^G~~Sz z+%vDxVKxd44_jXSvXyzge1pgK<$7OUuLnA7{p_aB9tFMc!$)m~MAgbXF3{mZ6UGBxgD=>`V1-wD+&bxq8TTq9HYq1hL`{^8br7trY zPjS|@YRh+oaqX4wR5Fb)gs2sY(Y?tdk}#flTod`?Pisg3Mb6@86&%$TwUamC5tw|L zKVme<{vr#=a_@Eo4EYr7{)3XP7h$B&puQp4b&gdK2qLTxX>e#u)2Jeb$=I@XUZBv^bfK=)eG{vviR#88QtC>QFFZ)u9GO_b6{*F6JodTxit5bB8%4He2 z+vl5}5qH#C;Wcl;~Px?~zUa0N!Sy@^My-=5b+Mrr9>-mxW zyx@7Xyc7P^vkHR#mlGX6H;0)O{~P@?v)rT zXKbT%JPnb19Jwe1j@zD~6r@q;G+sUW6@;^wm7iqB1h^|S2BXmg<7u|_@bpZ;(98SF zd`h-6q{7{4Ae2;Zw%P{K^nXPtn?I}%@%{`JAt07hE8G=A4YvFIeY*$}LcV?K9OZ1% zmgCjQvb8KUf3*srfPK(}p}&k$ASh9Vn$6sPvyGd&>!o!+fJ~|#Hs~acChtp22yC)i zTtA-$QjZe&gjpKmS?SeBF1~8G*BtkoG zm^S3vU=_&z|KTs0BI0Gpxm2C`*8^hNB9li?h>X|28+@dsKq1i3DyUndR%{2QGcNon z@Rn6v&54|*`d(_o;rm1knPLHPV1i~j?Xt?O`8!sX4Bnqp>#UZpN5P*jwwZ^slVE}) zF38_vur0S1;!=#Mu>l1i1fbzh5u!F{l@da~Gih zWff|OsQ50cOS1-q+bz$eAw9>OCNKAutYvEQvXq3-(ANgk@h-qO93YZV{+Q|6O}p`B z*oP|P!IUq?(SX6Q2>BtfbJ`zsgotur5ljvY%7|1nmLBv3G7DnWd|F6WAvIk^lCsK1 z$M{}eN1HM*=diHWFQkDiVi2^XwkyyY?>?{qtf4Flk>MxW#&{qS2D9kuk)+CzL%?z; z3sY>fJ7own2_Kr?b)`879$uYRz_GkV?um8cWRIBVm@l=%zB1qy{wpYdLE!F9T4@V2>VdEI$A1$@Z+8As}O3 z03XSC$1FGmwe_*=?(VdWv~zl$@}}0^$GS48ZMC6Hr0t}aPjdmM zraF~$Mi?F6w`?0-W|G9!>z?PXA*uU;#bxDduMqc%xhr4yOBO>rfsgs#H@bsOcIx{d zK*4@B*=%BC1DNPABn<+x0Z(=Ux#r2>>Ga?C#Ij0Mn;e^2gg+UogJhZ@!OmX@Qr)=3 zv1o~Br-tqff)aI=q2UkeM4IJleF+p3yZCn81#UEnEMN*AoyNKwu}e7wIg%gYQ$c;X zTr!0XRnY&P5^g1kqs;%%`rs1u*dG;~-$;)6zgR_l0n%aD9h|$vPQ%pd)Axn8fcL)v zndhjmcWRcSSZk5_%PV~?@oBdY}Z|N6k+_D+ka$Ek7S-yGf656|io@bA;_ z)vA)?K`S_@ydf_A^;Izquugzr5cNnQttd+v!0rEf=}IMdf)U0u%DL;dSIrxj`wz$o zMMfgrNHEi~j|TjFu(AGs-S8HxnSZ@1faVhbDpVV+dAf)JRg(FX*k50M!&kk6zTo3e z1vTJ^)2B4`3t_`tCN0?nDUP1*g$;`|X6Arc=7RO<=u+XK86s%v_M7mDnIJ=S zRy2MEnFxVP((zF*+i#y5RUFI*3gL?Cz4bev?m^H69ei#+aT z2DwZQ%8j*7g4)V$C(HzHv7*|z*P_7rN7cRl2!f$$4ha7urTd%1`dj--HSg*HLGw+> zN0IjpkxbZdHdy8rmn#OaqL^{EEhL0u63*0cn6nL_jSthpUmxzD4@t}C%_8}^=N^}O=m|xTxSQEnfJ}jzZVqa>Q)Z+9qo*Tnx}42=Tz3k7e;uQ%8j z!GtR)oWz3TWoK8ONC$_)8Xcd$i0q;6a)r-w2{m1sV;t1Wh;`gdQ-=#-(c} zKQeWSdjEM{Cj))ZI^^$w3{7!blFEFU#AwP3z6HFP*~8AIA6C9z0#$L_Dm0WY0NB|* zr*P0pPB-845$~aCnDO$D%kuYoHRl%oh7swC_%ivS)oxYax&k7(g7sAIbM5FESc0aa zqwlI(dV23H9kneFl!U)Li~ytl;Ct)Z+p~o{AMLZTUFX1DXOsOGH767bR_-5o zTWE}{c@L{duP?2&GG@;bIE5ZX_IR{&j+ju8kuEx<-6VFmEY8iAS@998#r9{9rX8f0>^ny)Ui zb7*(3T0>E#3mNM2z3Tu3@sS<}RVZ!MoU9v-NTH!Mujb8S;j+pvbr=SHkjO2OTAnR2;u)4-QCZO7?*RByy~D zwK`e6gf;JIlyOquj%s;5DouF)HfXAwXF;FyWB4~-P>;P2YDxi6HhW*`7 zE%p*_ARY|x!kb-Irep+!>;&e^V!v7nuZf^*`vTb{WNL^2IED&<2^G6c@+V*u4Xu^; zrSiSS_LiZfA|c=VIt#f}H0T;Kc>pm0;$!jWmw?z&mUpAZEo4}Q;yuqU z$>v+j>}d;|Y8xdaIg00r0m!Hoh$rV4#$2T<1g=z5YwA&eReKMYjufHF=X7TBKm@YI zis8*<2zQjap(iB%HNr+;O~x|M1>pY)sg{|KnyQ6mcP*BCLy^-FSiUkXi~%AklneHm z<}H=bJ2pd3(|~{8n?CSkGPDs1j(Vcn66V1U_AAHd7NguVZu^|iA?`2qipo!R0{Eao z{gyZ9=SXt2zUy0Q)2tbC8Z6!Ya;VkoILqrdYSPcKZC~5QMZ2tb!>8eP%r2Xi} zr0=X`2Z5|z_uRsBu+?s(T`4tt^HAHkT0i~9`QOe-kxNV?%s~A*FY;Gn5&zIkEUc0nl@G>09-JBuO_0NSK_nVWB@9uz>)FPc5r%78MXYA&_ zot*Y;l!WMO1ygq;J>ij~Yg3v2NM#uGz57>mX4a6>p z9s5+F*}22RwP=|VR%vDyte=c!O|ttiS2Xfh99b6m4mF+>V! zlI!?P%^z~5YaI?QenJ)g>Q4B(fq5+&>H@ErgMDl*!O|(CXbm=^1zjDG(2h#P4CS8D zGcX-;Cprr>ikn;nUm_Qz$ToRA`oBO2V5|5@)MF^O^31&P3f7Klx&zt5i@&=TpS1`r zPc1+M%Y%c%ivcg`&*7i@<~``;7{w;mtlO`K7G`>}k}!aS9&59moQ}cGkh$T;*Dm2p zS($+_NO7_(S@`}WE+By-H<4We}c@|848E7!Rfke#rFUoaZ=ZD>yRq#xcAzw@qp;isU?7UY}1vS%x%_phSSP< zJ#u=!h%}|1g0V>z=f-(OC<86h#zZz`iiMmIEf&574b%Yd9jT$%^&f7R-9ysh685XJ z2i+^I`x5kC@{n3{V&v#Dbm@|xuoxBFWrknTvDSBaWrSmo@7gYwWD`(}kjtJ~03f*B zp6j%MTfd6vK~_2vrr>uhC*Vt;n1wiV)y&$E_b~p{DPFqf4wK&ADA4UcU3Kv+=jwIs zvC}brYjh=r#iIw`HtL7>Av&mQ6}$TL0SyNjrB&kUHFK^gt)&*+Uf}3C5$+-5!b{%3 z^)t_>%TM&nlLl?Yu!zvi+TYB|2`Ak(aNVj-E6zBnUAspE>TZ149x=lhjGGz(x2^w% zi6?064KTo@zcWX5gLMQ&!?s^_+hyK{-=@xheYz9FU@Ajw+$SdufDDm!tlihr7}q+K zN7CMIxKbKgUr}7O^wDs+BS;z{-97wB+j`Nlb3gYQuu@R8l=_jM`MraBWCqj#&j7!X z>~5hCn0R1&_I?C%I180q1n;GjDy~jLpd5J)8>?>V=_qhrX|X@R?_7l}Q7cpjf7ef& zpi;b=TE$g{Fcs!p6@~C2M3Um1>Gc&}zGXeOH(;FfQ*KPkc34d_&ia*=}mbojG>1+u0P?zRnb z3JdHp3lE>lF@8y;>5uvmeK=7~7<%umSHmR`lhB~+M$Kfb=G-GBk6in^frTd)9JdTO z9V8j__D5R5WlpEb^94usN%aYrZPN0GbAHIC3*jAQuY!RCU-_wP>4D+eWGQQa8Ri0D zc5S}(hyguXCl5qdI0sEvC&=@XaA?;FTE(6G0{=o-qipAypAx zc!CF+=cqe0l8ek=ZKFgsl%-Z#!t=;HH?C%ttXq-L3#=DGTQPLIq4lJ)-8X(iYD^U% z*J{1FHv>3kAPY6`@Zo-Z6=1(u&rcvniU23u!)c?;4t<19poc?4f2?mY#TALxK8Pn1 z_@P5s0$x(7d6pX1H-@67rcc0@?;~Nu=V0{oubKo(N!sHS5;LC%3(IxhxkVVmRd_1Y z`~g31ZisHkUTu|fgQlPonYb)ppOO0jrFEr1vl4nE-44>IWf7?0Vc<+#a3#=2nC-}- z=6)b|;3voaxjy~5CMn@f$7ybO`)YoogGPTlSb_vPY4)CZlF>!kamo~`n=D~yc|(G0 zf9v3Rzm8b8+8$;1?6Sq$VCGX~9$M)3Bb6I6#vg!V?`YnkroED@ab%_{4ywRd!Nq@$ zmS`2t)w!Pq{#UeS`4c)(?lAG~9>+U6F4A35!#f=f>>K6j+n-l49dOKu$TgGe+>Y$m zk&S%L-f8)`$BVInPYFD%g|KhDCQN%u z3eix+B&}ls%68r0h44??>6J)i{7v$yWPa?{qTYFo%0F2x!lvxZZ2&+dVE*cMvTPBO zqPo2LD&eHB?Md07tmH_$FeeZFLINOuTt~A{^{&QD_7iUJhHY|?o>a~Ml+xod7_vjO z7cLx6cjQ6?%;nWD5E$62RAkgSj-}B}1d)zKcm(ojfEw!(lvg)#$XI@m#`sg2b1|ey zWX^Odv%FSTKt?oZxB?BkEPgTiRl6dNBBX4Kw6@GNKUD$~6#0~1Xe(gjbgx#p62j@< z@SQXIb`$Ox+YE3)i`Hm88;DoIZ7cCi24vSsIES2>)8*-09xib}ndaelxm)&b)M#xn zw37!5-eP>oUU}qAqqM)$FZyqd_9XZc*N4;YT>gV0--^cI9{!^VADB| zxB70(bR=ED+t@PW`U16O9prDFpv{Q;tKxUXEJMj(Sudpe5e$V?DNjVM_YtdQ2vt1C zaE>^u1mQ2GakvMoE0Zq8bmWdf;+X^vdu-1I>71=PE?eO0bRmI+pnpO`THlbn0Am7;loZ2PSnln+*uV&XR?f#?dkT z1+*GMF>^m#cp93s%!voLgM`~IU4FR@YrO(BoULVB=&}nM+|tsF2DhZD#|EF4500(& zH9r^U&89gT7^_cb&CYh0O;$N6xQQ$Hy{DQN*ZKXst+jZra0Naem@HkjAMag2F0@Y3 zk`a<6t%I>I7VKTBzS>7K=}u1SMyF|cFeiS#Spt&^skm64f*RN{F}&|lj1Ox zW^dJg0qoV5R}EM{VAgcevZbU}6r7g-@i?Wpx4z`ojDAB5=1>W;mg%;k`=mWgmpW1$ z=k!^@3`_ffn;0F1j`?i3|sJJSy%s#cvr{pv7HHLh>!-v-bl^wIw{Oa~ObZPRRJN=!MT_J!eZ z(Ce=c#C#!xZ`>nUlXe0woYwiK=Dz@FB{bxH|J6Ga-mZtFC&hLC3(=+)m||2!LkSN_ z3H_HKD+eu#xuwCi2oXZrYh63)wrYWXnOQB&>AftHBB|Jwx`FD?;w1NVqpcSC$59CD-UMd>47DXcn_rhI7Aev_4`2hch0sB7sr4s(QCl> z!eJk{b=rec>)%x|3~6J&q2Wdl_}jr9Cn(RzZmS(0JIui3DrD4KJ&LKQXj}h07Dgh= z(z(az_?%EXaqayx(7q%OK0CN|)C*8!1ms@!$Nzp7JJ*9tCCOuOIvVB2sv;! zu|8Pc5@P8yFw#$rRY++4k$P(y!!e8;J@d7ooBAyw=$wzuu8ghih#D9-r&JQ}*A$$zg*PsNL=262L$W#wdJxr_ffJ066@SKG zz}oLuvj%2*Dn7mvHE|Cz085Eb6oKIDps^5;b>;!cstbkDIKKJZ3r4$7v9xubvRmSS zD}>D-Ol)YzA~o}Yb-=%pD~7cmq-!NeH9{phs|KS{EEPTf9C{c2wPe?w{nb# zyd(-6^*P{9)oO{5KRXyb6ulS**ba`ttl)a@*IP6RFqX8}%@fVQ9{A^<^)1dof}HQ6 zFB-151W0}^tjC)I_Vg{0ACm^ZrNJJ~xdd~^gARPSitZ}$2sI_c?+t!*=)}O(mdyum zqCLwYc&R;qd|HngET`Q7rqu-`u)Bkp@>tySEqBO`w%oBBS(8y9Hk=e_Lp`@EUKP-? z{|0JMJI)iJ6$0Ii#<(1^Nxn9;_`z8f@1LF+2fv<8TQ*o<07u$j7~&O3EJ%+Il5F0nq`}a# zk{xOPS{VSNuLp#zcf&))oF$uati_MDd@FUxRGB zi7A!buLy5hlV1T0^B5hv?K|J$n_)%q;;(-Go$3DG?d!ig0zpdA&!&#)uInKa%cJyL zUy5IskfVcOR{Q$i8~9*a&dRU~;7@?vheqA2=O11= z=jD26X=0zrRu%BCOR&kpE3wb#R>>}SCCYy4i*0$P>$mnf7apu(?`kDK>?|wUe+lHj zKJH39{G3ovE~S_W44y687qOup{p%_DqXS>?^4Eb_QU>eqS=K85b;sXfN!}cIewr43 zo=fER)}!m!FMbA2mn>Cpm#sdG7ZwZtm-FJ+#rupj91~BZ7uh3!Doy4=o9D7)Hao`sw|tJ&Sq@N$GV^NqOeV0s4riIq2RWtU9*bVHkh&lq`# z40b#Y`G@`q%xpz0ehUvo#0K3)`6uCPDu3SD^%s}GEf~T_LWD^EF1S?ZLTEaYKUr(R z?h>E)rl~4<6&SC{THyXnJKC`6ksLn*KlNflp*30@?d2-`qZcC6{~vYV8P#MKtu08=fD|b*DAH7#AZh>&(xqzX z(xj=VbPx%>BcdoM>R5twq!UB|Dbg+2=uJ9;0tro}*KZ%xnQ`viweH{V$E@XO2+8}N z_nf_-{S;L9Htn7QqGShHFpa|u+9R0>nM-31OagNWiPyLJasxJ<2Z8M^D4GlQr>9~} z&+FxvIzZ=sCbJ3!mv_N z=Mz||UKW6s_ag}SW6L5=Qx-kDoMdDn?Ij0Dc`u#f?$mGQx>a4P{o9ofz5`!7<+`+j z$MMRWymJq-&}D5Bp8}Y%6RZ*K!2HLpN^$;cD}Nud#08qAQ;bvL=CzJ8<14PfEGTj1 zFRBJq(*dxfXTaNhEiRE+`!pmBgsw%B0!3vJD!i_hRMM{fmFcQ+74x4M01Ua^W!SvD z3?_R>F7N<15t;*{36NhE^$X0IDZK!CuQLc2_D($@tpHs47!v#**IFxARe~(h;-;SU z;9A+?p_?jWFkFe6jy@@U_AR@Nl-_(XS%s$pSPv8PsuO&gyd%BG0pA3BUsTd6I1%5Pm;a`M$?bkLjfCq&b~-f{6d<-Idlt+j$i)4rYL4?7-X}2Rb6sjEBp0;{UxGufXk37n5oQKu)B4TAmyoA03~_td zmXZ4;h|arq`i>10!a#n!XB87$*~bt<6^h{y+Y3bF(CxvAl*TJGu{Wr10abyc<0aI2 zV+iy>r`3qs7F(KXfOJj+chjxC7gPw_A{G)){ri)Z@+ z1DkE>{;wB~l@TV)`2a-s5N?IXPlLtqIVcRvPG-+wllVHOTS`MVhB1)46-E+5m3bjy zi9*_F@mlv9yQJ;(C0vu#9AKb*lc}8FWE*a;mG`@5Q-!8tGeH5{1F_Z;BU4LF>2zTX z$g#$1DD_MUq*Gd4NzlV^i?cjbwnMIuFuX6CAxLmXvN$3qA3WIPM3QuSLZ(LVz=f9a zbi%j_6rlDCY`V-heTS!M+o8g?HCRE8PzwMl=cz`FkkfzHH=ICV5B~ueW*}^tFn;W?DE>e0*D8-Bcvj?ksD=vQ$ z2mous(@(+7pHv>id5NA8v2kO3G~?|=A3 zfmR{2I5A-e9^E{spQ|D*8#I{yPj~UKAXoxe$yn&lH;?<2SSE&cqNWkNE5+SEpyBcs zFx3@jX68aV#q9@duK2pG0cn!(@2@iS?v-D zL+uC{6##alOxmCephQ| zgTFy#!ee1C|K0K%w*RZq*<}GsZ8T+}K!y79a!H@LI4rfB+QD7Ur8$aU&u|Vqa>FT13$As2`bPoChJ zjZWR9KTg-`s>{I4<@Xq-1HShocBtFK37o%$2Z#L&gwDwMlAL zM{)5Q@8CAmCJxufPp&rm_8Cqu!jUD0Rjv*s#S`t3prjDwTpxj1;ey%eXYh6OnnX!$ z1^$f=tp)`3cqU6#r&Vdaq53HDTOAmr*bS@i!tFdIUAR-}RSu}42)5Y_fc{IY+%4RF zseOSdsoE3h)9F?wFntBhLyJ>VkfM^3*U87$!84E$f^G~u-N;pMS~iTZfRsOJ<}|E2 zhsp$pwt_6XOaVOp&h^yM6f8Hgm?s70&t^n36D>vW&Z5!+S}P}Tshx$-UqUhR4@VH~ z-4Dl}N9{XT1}99hNQTyPLFwNMB^C{c;ZxBv`F=hP`kafo#p^~k7Sv=$1)#s1=UGJ_ zZJ?l_;tEqBj`#Sj3>fUnP|QpHswbAI`-F@`Q9RDEQ$bZa1}P%J*dF~9ZFdD9fse3d z`yo4e*<1%w@hfe}_MO9-27-Zn9e&HB#Vv?nxU$r@7Uj?miF!l}I8B{n;Awl!1pRYS z;SJBTJ=H8nDAu-r?st%yk6i{nBx%qpUP#uu zVLu{C!2$aOCW#**RJv#Xa^CH)-vN&}$nm~Sn3+R2D$O61nssVj*CEgYG(hoQ(l>m2 zz&@f>ZyT(J<~(qz{AZKH2@5`7a(F@snw+^_x3ln%igp-th~Ov$W|DD&X)`OZ|76^8 zqVm}SFMKdorES_%OkMZj z*gaEU0Gx9VE8NVrRnf-aw2 z=%z9ap(AS#avybqO2z{wmt6pC=pP7C8ctzRRZVFfuqt#k^;{*}fcC%4A9ge(DYui7 z;kZLO*Z~IQ_5i)*b&+6fDDklI@IKQgyA0DI8Bj+W|DC4*{S`+hIrhhe9rvZ4m@*sjk5O%hs`lpbcMv&qG znwDS%h_N;}U*Y28Rt{=N(nY@~@AOiBc>#dAJNQ{#zaq$$zY4HOH`^S@Jwh0Ef>8*;hvk5X=d6sXp=+_FgKT8fAqaW5P-I&zeox1|(-G=X&t~DUKoYd!YEZ}4 zC}_R$rPaVFW4C@rCNfY=rVbq%`&ZyYf(_i^-51Yfq5XU6#5!W5@hB*Drm^`u+0l5| zEtGDHBjjRTqueC6Y3NKlyiG)&{H}a)Jn3JmAw$s-$RCAZ;lg=eS~zayj=P1+V~8-y zGRaFq>8?<5Ta0--LJn-PUA_u*Ll5H%n<*wlvbZfx_-t|`I}kJC`Bt* z4xLwBYxUIR!av492*J_C!IynB7pN_PZ;yZ4pqz#ZTj}PycSYO zP-4r-VPr)23q1PgpL8?PWq2FELN8=pyXsrZ@t?1PpWF@KSokV;7eYvt*`NRY$$$UT zHw3}vI(vTGcQ=TCA$9C`W!~Sft)+uI=U8;?55FiH#y|Wn9+LWPv-yEJtPflMW83)) zPW=028-lChi-h4#wuZw6+F_FYKTY0#eC;9N+p943yl*OEr@q{zJAD72SK}X7ND-2e zCGV`t)shdwttNN9e)IEED_&+m-VlWWD?VM&*C7gdA=D~pjC620`>@?585tvL67Z1BSQeWOt zbk&^t$8FT3f%d`%9!EC^cNCP*a; ztHG4a4mQ(wHxCYCe}BI<7(>o0Fj)Sn2sjvx?a!%&A}4Gqcj`WrK!3QNM2nPPuv3}i zgsSv@+iQbQ!vc$-`ZNe0B#e#z^FQ{eV8?B65knA;7JIaJCb1xD2So9$6pZbq2Qlg;~4lyCs0xGKy5diHLoG+(-~%v!uh$#c`E=s8I|7wo!!(% zJP64nq#Zk~VNG4^g30^4!XA&4D6`1vS&zp-i`QtvgQglAnGRKQh)cK!Rcv#F;Yj3t z6npOvo-{@v1?U1XW{y%QUFzVr_H`4LU>hl?3(OoM84pO1VxY;uWag;*SvtU;S zm2Arcm>ujU?;lDfv<^LkF0QyeV;*Kpzc9C7kJ~LYFmh}>(#1=q64&D@vEI1xeWr%- zc>#BmX z0?R8K1}wC9*MRHBwbtdc{YoraUvmyEt}|3*5(BIS**TySnQ9fVn5 zLqH6tg!xERFZci&u;?0or>a5z8MtNWlPGG6Bcm%|ztS9O(~usDobV#=Y?@F{tO2%9 zw*aAmG8$N5LQR(g^A_MfO06rTkA{#2U?Dw087g{=+_4FI9QD9PGh!|PCRk}B19x7+ zxRjPPEDq1aD(EgOOcL~VKqDvWHmxXWT?A`$96AF}L9zUL+i zPveJAhCiMk81 zWl!&)dvQY4m-m*KJ`_b8wxZD{nvIu1X?hZ>Zp_1HxYw-%(7h;>W&}ah=o9MrB^i0^ zh9x8h!ItT2nmwmdf&R?me&U&oFUk-$+H(pOdtCtk^*DrW%%mMqp?@ZMS>gEyNIN(K zA2_l|Rnl5_SDRz~G!~=r6Dmoi(@*nD zsrwwfk-nrJ!HLFwd`)2sK}v!&Er)mJSgNFquRQVEco}|MSF3-+EC`tP1A2*~PsVZb=1e1}hjN1zO40Md#i7a+l<&<&vSVX^zX%cDjw!0LHF{IDk z*A$@j%>??zaSf z0Vs8CB1erK*3!<^JI3ppCumb8Y;|gq0$Jjs$?*+@10@Mb*UCyjurH${lpL_(ovHX3 z^Qtef?R3J{_~~xg8Y?3gDg)?w+;!(gRm%gRDh1sf+o)LI5#W8I{=zFD!S?j(oN!8XbLhcYv~!Cj+Wl$RU^?6cA|15Xn15gh+a9fEezfP*W(C8q zbkdnaUD z>2pi^K?UN`W_rHZj2YtwTdOs~J`0?>+5k4$KANxp7O%Lq>b|IcxZaMn#XF9uFC?a!O&c%Fe_vxFgp zP6~GG;A2xBCxRMjAnng5bIAM`qOxJCb^JchKU*K@#W!)?O1%Gi35xZ>nEFTS|Cn-= zk4ti_XfTR20&!%KJ$cx(QE^G_Y%|16^{^`i+9~M%fLEQ0Y7RZH4q({x*s1X2D+?m| zAOcDN);N!%G_=$uM}m+(M>fuLrg`_m+~~Y!eW#7@iNUTU z^4US{&S{Ags`*z} zw-*5>x3>S8kp_=WhUew)>s-59qhK^Ph2td~@MRC=?L#?h)8kz+-E?dg5c`wR`{cmG zZv=){*`;(phy%a65SITh$*2Eh5B=!3`GSI=XYRjt6Co4IevbbemB$8=yxV$9-XFR^ zeffP6^TYqikNN=~+;oOJ>wayx<14_@W0&0y|N1@u`rV4xp;_6loM#3p372an_Wo}m zmKz#YwNJW684cq{x3ok5tJOm>>XK&OmzF`7)FVC| z@*4v1k7F11oyu+e|K!NQ&2JKRMXeg5#{fq0lui2(KS{72A~?{Q1+$GZ6qkCz>D}8= z)_DMGoB*d-=NJS9_8hQJIzWPS4)H!<&prve z^=X_;POd}yna`!;aUz;vu3XP&%UNqWw(ldr7xtj-+4uM@7}nW<`DGzE5j8`f z5KbNc=+g%Tzyo`J79Ql19xIg8TkgMfpK0d(!TS5FDC@}yK3Squ%c%gQ;(TI&MHdFg0N(&1)S4qON%BxSGRiZqrmHx@0cL#*=Y7Ew3h2^y>ocfgx6h8?bGe_# z9@H=Ee!yTQJO;IiXGKiO@S+^ZW(JcdRFs-f35AR>W0%cL2ee>~mM%`|HX-M^}C+SMl@)8pf*& zc~UP2yS!{JYYL8+69maLF zvYv!ECn&hP%uQI!lK~a`*z#r~MtO4%uX!pH1u?dc>bzQ7QCnJoqOaJ&_`LUH3!l+P zh)f_>l-}TAimW?lL0lguFJ@K#oZ%=?Wk&9zTuoBVk^Jg4%aMy=TyVKB9>dzJ2yTE< zQTBXVkouDThCC>4!(HO0mf(gr0`FwM@3%KXPB5NMTp7I&Rl%mRedMriDBUO_v^mL= zs_jYIev#JeHtHIWG`bw}Lki(nd-l9887`SyEeEbhuk)Q-%BeQe{`K{ThaXaxwxrXV zX4Uk`&>q9BX^1yo)M=4xI-K`cRSa8}?7z1xJ2(+E1U;^Y>pzyXZ%J>c-AFj+P?7|$ z3U4A9xLWr2Ah07X0~ZF&wAqGyMeb;%9X$!o=oH~V7|)w~u^bVnWh9$V0F#J;ujLJ? z&dx~|Fi4paB}%*xIRmjlXk_qj9U@6nvE7}g5ak8dzUxxdZfo75Dd?g~XQV#gqrM7V zWwS-70I=-~7%=(@3b^FiFF_B#gfkh}4#jMVIUZUSRl ziemc}+5$kOVsPJq)-gVD;sRA@2+fLwm}1j{h_!xY!ep?e1I=}k!~E1h8&F=A&u2Gi z3Cg#$MCVQhS7*TE`r7||%hlXyMhK#ENpxZ}?caDA!E~`}z*ZSfebOW^Rq&_UfGzfN zC%{+PAPJiwOx-wIC#N^p?>)u+YxDchBO5x{U4RE`P3bXZ>Gq>&4d_kZAz%YJ`Nt47 zV)Kw!bPoUps?IAYo77cV>^iSPd4r(_F@6;(5o5=EPM3jg813u~JcFeyDv8Qo%?6+E znY&%3IJRH8^5Ee4J^q=y{CS~RqSPrRZ#G;~jP0?%XW{XHLB6{FU4`-aMHF&N!Y_>i zpNL{O7r$-pDU8rk^%#j5JAg^TjF2;=#Rpb@uwUKR0f7tVwz0P)rkW$|w2}}Fo1&YL z9L<$?-MXP{CkhiZraJN1BSeil{Z&LYLzo0cCj|da=kRCtCD6i;Az`VA1 z1wtlyv+ak-3EAO@tg0!{Ulc8jov=3MNhdy0)ls8tJ}Y-2 zhv^;Ef7^VBy;e6!Ru@Md{9CUzEc)QAc&75OvCj%uph@pB_=wzCbi5}4D|zXmNa+wg zmou2TAt%-4BTRY6p`|?jaqUKifj2aj7f*#$$m0dsj#VbqogpkcnC)tHzS4pUN}12v zDNJ1&6#9GkSe%q$!%3b_*dAP_1}|A<8CVF?FPEL5cL(MbCQ6J(H)n%fWNs&Io;2+~ z@+D(~*f2OQpEaa%udH+aK67t&ZBU};FiT5enC3B1FU2j+EaiAWoBxVka-@%*yWkt# zmvwX%f;}99n;Yg7N%jXCYyX5Q?sA*nhb_G6!WvVvW=hHOSjac6?+~5dU+LJBY6mu~$Be`VILIvVNIQohYkjk{h>ZdHzjQUQAX_k2izIt(M=p zd`%;Mx36h7l?rrf$AjyT*$pmTFjjp^a~T=1lguzaZhfBC4hqDkJ%5VF1u5yQI%x5S zom(WmYzCRdX;6*06T~E*PbnL3!uk2~rrRxmOE+1$aEfqiK_0-23c+&4(o`9Y_F76G zRoHIKw`tE{Vt^1`uGf?3o#C*zLa_hx3h7ZHVha0a8~^I6`s&uMkWN+D`) zz*EaOG-uKix-GYnw`w$o{j@#%*1w(yW4Q2vlm7aohe7-z*T-mnJ}0Z3BfVv%+shJI z8AM50X>&8~*>N6ix5-4EaQrX4so=KhT@^TXPrw~zo+ui;bEmY4 zw`h(Ia7ftp`hKXe%rTRad8;VM^`$=E1&K0aBSE8h<*;=_`Sgp&xCufXP#waBuqBE* zRuoMKIq%7sx(k(k-$_e@lv50mAye(7g{jYpX{4HXBja###oCGsc%2t-Cm?=SY4vlm zhEYONar=w`PbPOXOK*!_PMr^7hy9&e*cFGXnN3FzMpoW@30jzH8T^|ilZ|v0mMKCX zSFVZ}>bX8j4XHj5S+Kw~4AbnAI!pg;1|Lsv;hJWzz_7)8X8-XEV5tmb~mJLn#6yJ;SX1gZNav zm4Wzg?FDwd3sc%&A66u`6Nb`~7y1*5xEafDn+r0yZ;2+_9|FSTwev(li>DJ;QzLNX z^kj3YUX3N4FHhih_%r*-ZML|rc20P?(SH^njEG|vuIwUQdbO<;fq^pAL%eJA;aSG6 z0ArK{>GaiuPfkr3UX(7!?v;Me>G2UJZMGB#Bd@g7>W0M$ius9BMYv)659qq~cOgO| z_h^F96#X*KNQTIjW(}su9ZlXNleYjLDy|<&a6Q0-A4p#F#V6}yal1QyT>W|&f&FBF z!P5X;+Qz=ne+q@*FR!R58qC{bcDJ%|$$B^ji?58($_1}MIkN5k;!!cWcpG3>hVb~3 z-A_<;TQ}EkrllvAh``g_<=_)*g8MvksjNrv z*(NmgL?ipYuhVc*EMO3YnD!Qg4BkChTt z_ab2NV(cu87+vS~9C5#TmiH@(4cKRPiP%p^@jB0!M6Lrt%UY%hg@`$)T$eZQNQs)$ zzz1LIo?bCX%X3*=waw%wc)XM55pRo{u#Tj)@-wTrCmNNlw}Wk!gimDMAv%@)InypN zBh0V4MR(DkiPLK~P-eb?-^913ebd*jG;*3UQ)^Ab2qsdrang5w@`7lcoY7oAfepbC zzu1GI8teDHc~dcoss^6A?iShsp$h;-mZn8bV-vs3Fcv~N2C)ktLazPwBi?-dva8sV zN`*fs_MN0X1IAufBUjI^6{l+92CpCN?wW!H?k2?(6}K1wCQA%>rIbi^&UBT7aK)RC zWYj6UMtKHG3@Efd$Qr#D5*s%_NxyBbBkADmC6}1P%2G}nPi`aZ0Bifz}0%Ev(CY{*w2e$y)0JuS=XxF|6q`whDG zlPQx)<-?fdY5!Z%)nbvWjg#?Yrjd*Q!Y+#MBOiebXV}oi^1;^Pjw}x?Ri<8&NaM7e zvHw=yCnLlYD!Z0<7D9sC3TZ(y7jeS1wOog89YH2`QD0xM=^VOeXj!2aEzF{Sjnnqg zr|vTZozF8*U4GP|EVTguo{Uw5Kk}iyO2@buj!bSWM!2yjg3SOXR$kMc5*xi*nRMA_ zi7@|*%JfkvA?h^2E90pJUZ*9ixzDpCtJ&~-eU^dLJWURUYiZ%Fe`A-1ac)!#g7Sf; z>iwlaK`!ISz$72PzCrjHxDTCS;)3ZsH}Tb;rq$&GALw)IEDC^X`VyvUlM15W(s2F2 zsj%w5$Z@AFbbCoT>|HvoLAw4JQ_fawd>PL9gbl6(h+X5UF?!?lecs!bk8tD;Zsuy) zOv2IlWcJYOtv+PW9}yw6>gyV$6|X8hNl&e_|InTrWk<{Eb3opYNK7ikzxrmf@pAv1 zMQq)(ZntAEYL-d_FhuqwnDsP!Y8&*7_`1VWymUiZVFp`aA8kt$MP^O6br(IE&C?@V z?gz~CVgtR7gh00J<vYPK;>L4xp+o@)622GHzQW{~;iS zCnN_6_|b&o_O@QgDDILvdpzY!{DCL}jY^6@PV{V6BYoy%f>F!JHH|J+v()Mr7;db9 z()TF{f)>puRx`*A@QB;o`~aX&PxBf#Rl;03k9&hsY6(r=@r9vhBBS+Q)O3N2VH=4R zmIn9?uUUn)1)Vv=B_xcfO_-Us2}oJwTs+>#@4tq%R}3DQ>svLY0wpsb@FESk|ke?f#f!Y4$yWthOCJ7C&2?Oi2C>s|E)cl^+VoJlTEL4=_A#0oE~m7cf=!->I_1x7;mT(Yv*mW$Iv%%}p@GC%26?CZmhV{m zOj5Y!>q8X$c{Z-}j`XVAbMGHi-!XbIvQm#H)C;ZPD(ZIJWpdugPWn(me=Die>Q0qG zR1A^D zTWW$ZJ%dBTCtWdok?%9WrXIvM1_ggi`y0|1Va{Z2Jfh$1sq9gn(J=|Z2`gRq17CGE z=J;m%X0YhslW$;o^dB!&>NcOuSXG;vJ8WW=2m>Ao6Gl!tW0NGNz*gC-oV_Ey$ulAN zWL9_Qmr{7zENhje23zr!9=3Oe=5KIw{R=P2JG<3#PaIkXmJ>$2Z6?L{h0aL-FEV7X zK5|)@IeD`OQOhc-TEH@Xc;tf)S0yr4c!){nN9N;*6g8pHgfKl3Mud)pa z<5%0ZFmoAp7{y*Cn={7it5O{5d|F)^hBG#CVRsJ!m^B!&KkJN{j<(QKq?;lMd*s)R z*uMULu|nOaQ?}D%_sU+lx|r!+01YG#-O9pH(Z{ImOs~yN)zcR$t-c3FtTe_~M+smy z0_H{T7w0Ixt00zqpe90da!NMGhoMBf&u}eUCtiNSNiX&jv}H`K5?4I>nt3EgQlzSn z&KVT2x{q^N2x(`wcP8LXf3pAstBt9^}>}WEi!Go(ttlTl(who00&b5Ah_m7Wh#0MA z-Zz~xtrH_%&vLT{64RPm8!hkPH8;{lwr!H9%2jR>&7Zh2T(3HZGOt#1mNJs+zBT&0 zbmnJJQrcUNF3L4clFFaji@ptL(NiyOuTro{4pIxO80lQuv}xQpP^MO0HAiY|QhF-k z6HgVN3%)01vef>)$o#e0mI|`+rEun}alQf*N(|JO6XnbJ+6|^p-Y2yh+4%ink%E0qfAmd~);h2aZ zrQs}*TkIhtejL|F>_8QktR2uw*ML^rra ziATu|(=X4=94(51Jgg5sPpqh}5m)1n58sPO&B(%r8C<~gl#s2rNb?@Ii})iFexv#CnvszWDv|VJnNltHtiSU>rn>86k zeYnp%x4Lz)4CB&i)Vz08_ED4vhoNzJp_=^2+{tlcC|4Crm}npPWv4Slf|=t)Z&$v#X(mWr9v-3p z>7N#SeQN{T3*v#JIz3CNOa_F9_J*Nq0wdow1i6+MQTUb}ZkJr%s?roQhSQ_g%1N2V7k-(aU$1X&Ma9W>c}^Ziu48@ z+RcmQAL11%8qR0xBy_T`&A(Q__;Z@;no)(;DaCe*nyi3k?UJ@;@*%^6yY$nynvG6w z!)(HG+#>aai>yv^uf&DlAZ~KbYJbEbIe+HfboXsmN#UV}J`v2B7Qj+FRQ_k{1&%8i zLD^pyH7F=GvJoo|>T%Bj<&?CEjal1#GSZ&3nv#S*N=5LS3>7rIW#vrY2-o6lYMqvx z(vFN!T=hB4lPTZZuV4t=ln$RHGukWHF6!c`itX-P4xz(eOU^LCjvMU7f3JRL*(KJX zE0k5(PC4$p8jzK28XE_)5uNB$T6?V21%^{ywN8bWZ_GTC)VL!cBJa~|)@12Ksan18 z{YJTcqSr;8tsZ?X4yfn2JKret^k5Nlr*?8FeySDBPL9_y{r;2J;U~?J+1GGJ zMiH2OJ-n`PUYq4-&9A=?PH&&Vhw{L6(C)L8VEWYy{2Ure_S@S* zF{cMFJWBiB&lh-rYt*g_|2^No`3$D)-oBLE7YAV4e!=E9H`jkE9SWf+wCUn`_xL+V zVIFU<9{pW|@b|mhA%h<_chXKU9WkEV+m2!y|Le6!p$@t-QIqx(hA-?JU%dX$7Xd9c z3b~z(MB>}eg4@Y4;^2S17y7#g$nC^*PLNUuznJ3uhtU5MeYK*bW#M#oHck{`r1);wpjHZoRL3 zJ_+JyKRUw%SpRS|B5b47ttIf{$wt{KP$nSK?y=A2P5uqw1vYj6L@^^&!e?L-CI07k;ha!sNN6qxR|U`dnX($n6W3r!oz?JdiWZ`nuiBMOjVF~MGwpHs&$GQ8 z^o_T}T##US^x?kJu>)NopjiGytzhN-nWJJH8@- z97ma(fO*Ih=vjJfdcf*l7B;YP0C<>5Z~uN=g4tnVrLf5Gdf+Q>GJ8I7_$iYO{zRiC zW^GdJ_DFQDb`W z!Ma1q=u-5QdV0q84!mRYUW1|iN1$hzT5m&qejqixnZ{NSLoUO6_5xC8VJ%mtN57Jw z6p9gNwt{K6umi|>=TEQ4si*&`%uBaRsbiqcjo!rCCB%$lca#)8;T6%merO84DLM8L*0t|NA);L4$aH zXZbN=5I^t4f%f&x0a)fQH{bE71k(=sBB5t9DgLk$dPW04lj7VG95-bIo)bYp8hl&E zv^ubnZp9JU1XIZk6d3H4h}=_VSe+B-_}C2?d>0Irs*Nv9LZ1 zG{S(CQ5?;P$QsFP#5fi^Je!bZHL2)RgmSz? zm2{Wm8JNaL%$o`@Z~#+z1ULXZep6M>_PYq#4p>C$Gxthb`9%X@#~H3)74vOLjndqY z5?C|~OE_s6krk^iWQ#fu%lpl{I>1OJ(c%2xvRy?tAn@IyJn-}tw5}~ZSx5Uz)kPEB z1SKhZ>6dupN|p?}fB=H>8dOit>w{&p4?s9JchgL4WC=53I>|ET7yvVFLG9h_g_=#h z_C&tOHr-*j6krrR*L}T4yUpBsZFR1KA^Xclx({7zfCq8R@4YKietQ+vgksoR0(ZyR zOox#&9eMl6xnp*`Ql0V?_F4uMqrv zYs2kYlygyf4%8^4I>5yLg3Fq5FT`mofMm(oK~eP%&^Dck7$JQ$g75AgBh#FyI>WJy zcvU^k(-GCkz2 zr?aTu>6!En`{#Qw<1i1;21r$N&iWnTPF`D7%Z!AcrXI&ZG3NwUue3(*z62#!h8^`f zNFW=Q4#)X+3z4s*+#QDOKXa%;0|IgGBi5jXc*FxvNFG3L<}4zu>tp&Glp}H8z#%!F z>;hW*eL!brThs`AHZ>W=LjRXZQ}BJb{ijn;ztlh-h~X98i|J(Eb!$|2+q*yaSjDJK z>9%9*BnLH}E**$aa6c=`m))S$JUNfH^ycUDqUR_vs}%!?g#_LLVPE>@;z!ePtq@sl z58FvVG=DIe#a26DTu?vDtRQpr>S+Ik6`w|GI$B{A>VU*osoKZ!l;p<(7Wnp*I(IzB z9T%z^AY4tPwp_)&<-51>GUx;OTNZZO*=QEhF|L7Y?)dZXbr&menNJfs1}fKy;a!oo(QN;GX5ejMa=qhVq6<@bw?7e$>C;ALu#l@C1FCD3fm| zP?n6kRV2!9TQ(bjX*;=f!p_^`8Ci*4>g^scrVJlB2tx7w^5DFA@cA$;?yGE$S0DP? z^Zyd3$MVfu+}n z5YWDr)@kG&sHVn1ua==OUhW%DRv@Dn;5-g1X=jye*_n#s~F z5*5pC#yez|=jE+8S&`;2s=#A73w(m>(|Iv!TCo&WsW4??lBSYsNf#&|Ca5|5UEBlR zC91vv_Wq>bA?&zlueqUazwBse*L=I^4)Hn2%-BZmo};9Y)5<-0WIfysF7bdD38}$z zK5y&cIqOQ6a;q|(&vMMYPaz)f62`Os{{EVk-U*P`O-xd)@FXeft-^tM!=0#B$r2qF z_Um~1FKZ1bs)etD4$TV)f)?kW&nC0dW`-vmZlBrpgqZqA3GgqD^IT0&skX(E$q)L&sU9O9}Jf@al$D$r^gYD~ffp zgxeoxZ_MY@wXNj7@{E>%O;JloTxTDw8uOy$>P8=dzGq0XDEG%i-%@<}Q`47sXNCe{ z^^C*nb+3aFdg__X)hdLnSD3yHBq0xsN6Fr^^*Bm4=!*J-{m&QF6@$_+m78ZV-Xh2P zmluEpgxn81vtMpIQ6zcc)6wQ>lYtMOP3^!`>^b>iA-7RtG3t%wctR+X+ngo8dI_=I zf$V3T!;Bw20UAB!aP6V)W8dTG9roIC3-=uCIfKtZL1ZzKr$V+L9&~Vd2&v!`lh>3t z1nz^NP9gDHn~v!U6^5Wzv`3wnf%`9{Fx&kw#l}Q&_wEQlJ5JMeU@nX z<%(d`rU3IXigo1_5I9THR%g}@gW9k^2^0t~Cj>u=jTB+Dr?D$AlDxKe?+R4MC3S04 zom(L=h@ewJS!-qAYCC-;b#=2eVZvUnwZ7?sU-K2_Fjbf!$l%!?-TVyvl_*@#tv>0- zc;bW>RTBU@BXO?AiU}Fds$M7lMytJrgwT>xXdaF>aQ=q%yK_8~Me zArGoT=}S)!nvoLTv~z7H-HT}d<$UYhzF7XusZ09PDMO926jWyVy|}`f*tZ0gdJnd& z6&%=35li-Rg)DS#U$lfcwsF=i({oX35(}x5>D2sxyDusF!O{EGJI~`j%&|lF;kXLB z(p`XG+1KzqQ_pxv<>&pV#lU_m2`b+PgIS`bhRz>WZf|y{HqzUpj4z$fSv9?$8|e3a zgK{trnH;t5Xb1>IW#Mb0hbB*7G+7dGt4K%P;SAi{f;vzujHRB}*U&ZR0U6SWW&nU3 zbq)ndadFJCh7p$O7p;=%T9OFZZJu6{e51f7z9^QNEY~T|Uf2zgzw@8&?)em|KdCm- z-A{e5r~By4J$Iiyz-Ad|k_t1$6r6Ti+?mlo1rk$=n$qzYY4JAvvFE+;6gVO>V2n{V zkp5^f$*-R_AFY@Bb8Z=cIXBu~f*f~MLbUYal2S!7=9XVAp-EGyI2wEP(2Fy#O8(ja zEuX~9wd^5Ele1!Lzk@K%3%uvmuVYz7gw{rq*+ycVR-cqyE3X|c`_t^8g3eI4fp-sKAg>6}s2~JIE zs=eH=!M;*XKEi%nG$`R8U7t2|eS|{qyy2r8FDKo^J~Y+gf?cK+nQFAy@BPId-@&4x zR@u+67@-noA?3z*gmEfZRgWsP@I83eM@8jAAvz}V&RACLjq`%h9=k=AX_0zi?t< zBfdZ28w5$o>3f|&Gu2N_UICXnaW@(jSBo_>0z11U^2u`6(=*t)5R?c>e$F;waS83y zhk(l%CnoP(%OBoh;o0+94Lk2Iw3MdinJyoOGdVG2B$abZ&%C4lLN1Pu=u>-R)76<} z$aNgSsAbhYWdz2lEGP(sr=nA` zfvQwibx~~#!{*7NfOh|84Su}UqeiXrjM>X-+cVx&07kGX81T2JSPIhT(55fs9|OCI zk}h+xADBP}s|MD3llB|^7DH)rrBT&MLb>|(Dwa`9D{H3RcxvK>ovP;5}8CgmNhtOr9@Y=qt&B{YU%SL+0(_;;ZM)W|Bn+F}$ zr|+l7CE+-fWa<5R>7Wt;vIW@$D2xSJxxgY-M6sDb+pmm02})q;5~$P>c#>*odYSPL z{SoeK7_R(JK${pZ9*(=nvx*S{_4Ar?m(UaB89pK65xJp3V{@#P*OshX6KhbBFyNoE zJGpDKIR z6ZUJmLIgjO_p}>Vk6@+ls~xh{lAv{hZM<|Xy`df%k%lwzD8Ji|wPnFvQfBb}Tg0fF z4RBZ9(QF7!3gRa+#sBJu_M(e~yBs%US>&1+BdV&iyB(QYjX?a*8$!t%7z#~@%xO^7 z0H?CMc@3p>fgr*;(W$lZIV97`OqQxCu%EylHUrwSH6g%(I|hU@otHMVVUCY(#hGlj zOuw0*8ro=hF!SUizFnQmOVF>1vdE9T3B+qAH}Viqzt#!NhluIs+6@GA2MjO1G&#ez znt>zh;2hL_1f3*$+5T4VY>FZM<2al#l_i03X(imsUX%JVRMK6@VvCF)iBl8%k~K(I z!N&bH@lzM5b2BMdn6&eNR>r;FWiGGcbmUrlq2i`aTZX>Bw7R`>71-DL2hP4Ns-N+1 zoYSREJ>h494@=`%W^etpg=^>|#52Z#@`Pg3o*vs@5XP%Mcig~p;qFMW5G4*~oHr@3 zNGJjKK=V%ycs9e+Cj1A!>Ji1j;Bnfds$OJJqVOMg|I)C2MT7a_mz}59`_gXHHAPvl zuDU(TJoVUM7`X!?jMCro1=F%EoCK}iU&$$LY;A~WtQ2%ts58Vs^5v6#c;064 zglxzJaH#+=z~Z?~&xD(bI%9$0)j_H;;!Xd){A#;PKI9%0&4dKnMrUCYg6QN|M_uu{>uuN8}AF=OFwm)ubz*2y5B)1@*&j}^+G)A<&h^JBo%eg-6Y z+5EkY7j@d?&?Jn(8*1vF{1c1*?Q;e*;@A^+99sp@CK0DH-UQ?FRtvi^~_%ZEl1ZWHp^ zQH>C!Wqf+R-lLh6uKOgemsy%1K}n>SEB=4&U3ox^YuhJHY7C0fsHlia)M%j;4Uv!} zTPWI2LP}a~ZH}Qm$(p4IS)wd$qDHA~iJXvVwH4Y>D)s&D3eC*(edm4u|IR-g^E~%+ z-Pe8H*S=UklWVz4W0ame>xrD(QgjdAC^KoF(*kXqBGCb!y2P&AZ8m4rdlH0<37$Jv zevHoa=^EbU$+A{+U64kQ5tE{_s&dVy{a^fN($aKF?e9g6Q~xSe8Wx&E4fC`i~$^IUn^S-_W93@oRE3>P`8wP8(!%1A>$gw8cR6ezdG>c7!N);|kBHb}#W(E0t3eh*4Fr%eq_4C9o$%zR`*Xf;kPdy&Ve2%Lt zDHy!)%9)MNqb-iSfkkPW@&4#&)6>!(<);=(N%x4Z=18rmHA^%(8$AOfvio6bWHjqMhugs0dw0<2I zUx+0#4G&gvw%!_u#%;HMS{YD3SCfp#MwfRuSWWA1q$&B5w`;_oH6wT8IA3}{)~pQ` zV`|oVZPw)5z_0(s=ogIfF+LtM5Yu!XwclU%=d5`5{;N^{V)zSBH8m*qz~?r|8Ge3v zOdUxJqTb;#n~;DQw%xF|tojdv*%$Dx#iV1^?P#smDEshj_qXD$E09Zn9sP)OJ*;R9 zw7E-yTXpL7P=Uei4uRPG__Ey-X8=hPZ*M&|jR1jh2k0SEc*3Vj>{XiE=}9ZE=5_~( zP7nz{3N?=-w-z3g@ax!zMW6h)$A^r{it5G zB++qG;@~a!Z2#<;LYPS$ zhFY^cv|yKmm)E5X1(gG>tHp$bMadKW`gi}u{E&ZOocfPhh09oy!{T+wPYNpo;2qRQ zi@16|~0woBsAOKg93v#=!N(Sse9Q(0gHHhrCLD&mytXbMwQTlx{uWF2X{-zKOuf@7)c3@TwZkC=KDp1+~ z5x$`pN08pMI?ij?uEn_V$r0Rz^LPm7?jRLra75azK@*szb#-65(GZ)OI(6H&ZFUX% z(&UaS^uZ0G{*nD@Mw*Lj^!5fSJ}xs|NS6B{`bmSCar34<4ErAp7YiO_P#!7zsM}0j zoiZ^me3b02EcJUsd5%EbWDclw{;(s3pi*sJqyf^RXz3bJu>tP`~e57&LubjKt zbJr1U&quIn2;0NMBNxr~>@oIma_fu#V53)s(0VI`%o`+??Z=NFPpn_VH1yqZwOJ;V zhe(d9;cB{k&$*f&Xlu!Q4JC>P@ja+{DW<}_8Zt34K#H;ct*s2j6T+fP$Hm$t%+Dxt zmt^b~**J;v898G%cQaE#Lw*(hbdtZqgZW=yj$I1kIDc>X^+SPiW1RB)@XGd;9uRHcrl8NA&OkUP6qm#KCd=`h|P#q~$!J zZ-auv`#|@?O_JuUnj@<PI$A?MtQc*7g%&$XQeDHadbu2LMXP#MK;{1goe|9k7mRxerX*|uy*mmRr z{BT6fxh!q+jK-ivvsbKG;ofv0RQrLcees%5AB2vCh`%mVcKX;GrlSh1Eq7HyIsjQ`<@={I#Y_p-v1l?&(hc?l2ErNDD#oR@7>WnPH#B9i4O_Uq); znZiSU0opW4#`vbIs-IAWp^RM45u{|Lq@9V$RDEBKhTv9Fyes2v&U&`D-iZ*4X$2f^zKqUo z@u*eL!`vAX#|lFGk~mv>2_LO}gam(jZ_I;vl8lvkj^uR*wFbB)^3gWY9^u%=o8>>% zjYF9dsDui+efzevx27)7_r(h!1tT|Z33`}lW1=K#4`PY!mgO4{3_|!J2#$_CjKyB{ zc9yrdH>mJZf1%|{eb2GK(0cH$r}xL+TrbIZImgka2ZmeqJ2gh5{o{uZAG&!v1}Tj| zz}YILoq3EG12yWgHU-nUN8hhtJ(KgV2J(u;1GpMnJFBF#m>3N1d(5+BrQ36BZyg8s zjlBFUzypW;(Q*G>2Rdh>ou(2wWN9B*($$FQZTL)7kTf*nyjG5U2OdtK;0Ol=9@vIb* z@nXK0$`!PL7RP`yQ!WQ8-kAN+h?kl4EEuo>tmq$I>FvRRaW9-E@ha`T;072$q71oL zeK!ZxK18_&Ge>x#=|)L3(Mq+R-%o*7YW!J&@);$Fagzz*9h}9innOo|czIASVp(!P zN~O7T!*of;;34I;RNvBuh%frk8sWPYf>kzS0PnT#<+WRgU_HEQmX;cG7(GXYY8~+e zb1-m4ub{cA%=xDOm{C5Xo9Q1|*T86sbWQ2=IJ9F2I?M;y!}tfM{leafcuHcqmMvJht# z3IVtgY9uiYw7wTzJTHH1jSVrt<@>eYp1&lR0L2m>=kryV^B0z^5f+V~(D2U{Umah_ zlw1rpvqM|H^Wp2&`3NSqKaeHzcUhs76yx(VPgndbH<8t9C{0Q|Fim6Tj`mmOGg^fn z3+#CUtjeXr*0q!A9E<%o&|UmIeIh1~V{p$AB9qEc8}y%kFV;r)MXnYfRj{W6vTbD{ zdds-xrqLr5(Zo04CoSg}j~Ks1mQN`WS6K`c*j={Cat=yqi$a!=coN0GASQm3bn?}Bg z=X;aA7yzECy5u{OX7ufynG!qpr4X`Oz0l5eED6FPYxBK5H;~qNZ;`JinK$B?^MX$_ ziziqCWWB8`2Tow#zh68>ShPkl30-tsKQ8ir0$OMs(&+Tta0dGWOL3?&-if4 z;2>)p@7XIv-trGrY!|Jw#%foxip9j8&Ss-EL4NC#2wzDIdYIMmJvA!~<8pF8JUMNT zQC5?YBpeO#yRQJTe%B1D#{CDpwjHgMpc6x zGFl$nBSST@-d6YBVf!X#Sv2p9{%kj(zG_UOmm1UXS3)dA45sfH8?$7A#!)Gn@R4lCq^<&MjWEG=}^{=3caCy_u9>$J)s@enrnP8 zr5Vk%UA4PkfD#QY(j|ZX{Q2bN%a?6hTbpV~|J|r-GME+3^I4~ZK-J2vL)%m699v~i zBc30BF?I*Y{em%PJ@zbR#m9u*6ZkyAWsw=kNZ(U-vn$PLz^s%pyr1b^X~rxzw?RVX z#I!BMd|RC!#RpB#W8-k>^XFgVSW7Z=V)dz?5yOs$i7LLAkYwncTjxay_KqF+N`7i{ zVHVD32ZI`HQ-H1IE}xPp#mF)KNNsHv%*WX*v-&vrqK%2h@ZtROqMMXr=~zhWKJ8?j zjf$?-MapL?#BpJaDttaR;LjY{bog^A03Qcv=bPTRb6k=kWv9=7U_B@j1B!;x$L24_ z_Rl&x3jGlKRC+@##pSh(^0CdcJUl(;K#PZ~qb7B)pyENp%XIp+@MR$Q1pWPRjv`N4 z4w27kNyKnEqp?%!#Qwx#eV3Kq8AyByljg$T z{N~M@40|x6W?2MWlje2XjV(At+*Vz#7vJiNPw!? zcd>_H?gD)?uKB7{-xa~)5jmAbaktapo9MfnhOEhEK?dJ1AP`KEwtHp%1UhHhv*Yvp zv(fp{4w5SwZoI=R+gTIWWa^GzbV3djA^#Rsxy|7OAO7Due?dU(Ib`>- z3#J2Q8?JsI6Zzjce+kkfv5{C-o#h;^`JN0dv2Kz2_=uMB<@9$l6w0;~IaCpi&$=|D z^+Bb3*rSEe_1vcnr9X+b?QLy#81E+FYbSut1fYR;F4;@bj7HTKLYMhJeZK@%I^csF z*cu;U)y-R9x*J*(f(Ku|e8Jq0WixigMDuePft~oEZowYagOj~JyRptkgy$w zbu=PL{Vw7TqmaO?EFs8UWI%5^v4=e31LNYgKhILI4nUf5E+$CXHPnN*SR&hg;|ug; zS43`elgGfRBl$@^)&^{tTe&_)8Q|?v@eqg1h$4MoFp;$NR^EqRB`RNUaf(@rNs%>aSBlSuJ znI9oBBRJw1%N~A{hpDk+Z;qh=3nMTUF@bmcQ!bBBfmx3JSrUc@UAI(quFYlA}t-QwoK zcr#jQV<}c2o@pm`*aEJC0m;Ufb&4 zY?3q9h?qvcd}qU+*7~l_`WM&MEh6f^8=9ieL1b$DYJMj$4l-64xEE6`N!t||XS`$X z)HM}`UCoBotIOM#Kd}AL^ma04p5(>!>p@*#q$dzl;kf5MWmRTy=sy-mM2Qlio>mc9 zavk?`9qBuK#MH%9@R|<8H60gkSv`c#k!c*Y5MJl^$K1^_A$r}A{CPL4<3Scn@Pa9r z9|6uZYc+>ju%eG#Ol*=M_mRP1`}ONlgw4z0_+Ngp z+bsBICeXI^?SZoEbWY8f$>ur2s7IGaYmM+*+gtL`(s|^HwL3jAX>$3KqNK+Go&prh ztLBee9f0R`NZk6x)xQ>GLWU=9sjNq-g&hvvt@ivm$D4<^0*eSg#pQ`VzNo2K74F9Z z|H0zSi6cn#9P_l?J1U3zIsF{UK|RQf&Y$I7)6MkWMvI7A?&G_q!1oZ~dsHp$_<0)@ z71N6jsts$qzO8KxbKP-Tr@caYx`t(v0?O3(zg6e-1gZPtzW`D7$Q5huErdd?K5T%F zsZG}*gD!k;XGgwY$6Pt@GPl9Qlhg&62-_M0GNWdY-U_a{Nn}aE@`|bujc|m%_0jXT z!}2O>qqg(AopC`F3<0a}k#Rc7fr{sK8O3bUF+UG+=!vVYtEi*vhzQ-1gkSoCNKH}9 zj?tV2>gh_arZW&Y;d>+UB=~#Q!>FT{+{mSJob|EU5RZ%e z>;%BJ?CI_kr)^ZUEjRw9n1oD-!&5e`+E{{G+DTNVDn5IGxP8W1f6$|IX6?GMe1s5j zQ#?GbpQ=+wW+-8Lw($seSwYh&mVvL0)GJBZ4KsY(z^O|s0AdJov&WK7;y##bRfUn$ z!G5iK{PrS>po@mvvKQ<&@nHtm@-&dLXM(iHS)vyuM(xf<5wJYcpmkYwX>Qe3NHYs1 zBe4D;jV)nGUWM&d3553PR7k6QT$~4{5->-#fEn=5GSVQ5=YPjsj?cc zd)?ktZpJP0vK#ovH0Zd)9X*?d?o zNT*mZdo9?`43W8T=ITzE;Y#@oI|XFve0qWXW}1dk+ftG7GBaG!hAC*_t9Dky_V zXbSTR#jUNa36I5ppQk_TNy6Z}POZ?>D~;qjCnNBkV}94lP)-PytKrCB9hLUaznQiG zyOf0RuedgPuOR6jQG;$H-8&hj$uBS+=xa+$K1$k4jy5CI=3;t8bKJcngXak1BUT%f zw?1fjW<+3|-RAsJ|AlF*z_w`xDsx;*6Z9uAWu&~XK6rzmP9r8t=3^Y01Zw>JsH{z> z67z7BQBN<~O4E!6e+V})u^}P=9f0!4ZNyE||KPcZ>Y}hZ2n|f#^lX$ABP>||Q6oBoSN))!bLXj7c@ha%SjP4to?wp!s14TOYpNlKr zYo<_9r2}HT1=DV~?Lm<6WPsSIZyWcypf&u6yXg5@jj@c}S%Mh%XU70*n?%%qey4Mu z4llINLUPHJ5fd$oWW1i7n&bBI%%OLa(^M($fWt)MZOfE2Ucriw3>=9`dD2Mf4JXMW zNJqEB6v@fNb*8sPNsa;w!lf{AoQ69uak*&YH2>+xdcFVJx`k}wiCZ1jfBaviHuYSb zO^^oH#ZpvLm$9_ReZ1aMhD7v-M|FDqLB~BTCSvk&p+WOQ#Ar>nZ!V_rO%+%|AiMdf zhF(UO0Gig0h6N``bHC?S?t>*McMilkX>IPL|sfWu#w)PmOu|pV+r>lwX6qfB$vZVQX$ATh#d9Qk!~sRRSAV zq5qb9bKwFroBH}S%x($D&Ar^L_V#vr;wiRuO{?Uj!4FnEs?33cC)07-l9G<2E)t)w z_dAk?hdj1{3e%=dvqSbtGTQGkcYLA}Fah5ogGybkzKX$;uU_btPLy5LUR0qOX(%!d zOT0Bmfac{^zI?`RAYy0ZDhHikp0+}1wl%uJfr|Oh9#Tt-)35^N zZrPr$2hKe@4)SDk^oovH5?~bBV<>k~jma^3GM&=o<#e6zp&8#ga-zQ1UOz! z5!5A!gs+4yvuAiynjZaze`!btTIE9?#So(VzTjDN3z|9GA^h5i zE(y7$q*|s5e+xxT&U3BEB@{PV+$j|H;^f7t>lV|Dwp$q%TGwaPUG~9HD0@WrlF_0r z!hKLZ<+*1|;G^M(@9&m}-qxyeVB3lIyBfX{P;~9<8jv56hhbi|BXiGFAYW7)+G)|= z!>>}|gxZ;6bj!Ur$Emz!|H%#|GxRl%dvoU-)tlnFb~s##CFu>P$==UcJa$K|PcV{Y zQ-{>|@Wm3Xz0_Mpygg20a;ob*no+y+o^9*8^%vx;2q;t8PvB|_H-5a`h#OhBr(zc^ zC&I6zy7k$)83zhCkEg;$tS%_UZQt^nk%4im>Wz+*VUYPKgZd|x2$^CV|+hml*XTz> zKJ9amLnbreD3#hBFa}V}$+avWMsiOKYime3)BW8fxdshM>`^P5xFzo9O?_nWe_!m{ zC?|kzg8vzakyY9!Z!Pu(E_{QuJ3HUB+?F0X{i``iCe7U1Ty^znyA zcw^Llb-5(#Y1;Vrr~CCA5GrIeyPq1rvuHo@gS8J20uIFf;b7E7Pa4{gW9c?xdy%ko*yif!%qSxmEg7GiTmLWAQI{q_nYFaNV z2pEcmW_+q#YeWoXiHC0~S%eB|7~qZZOpLQhSnwvD@|lDcc;<@V_j79SsqP-1%F?xr!(^lg3nPs}!XD(_ z5kwIF<+r0I9{%>o7UCM}&Yutwse&ZlIK8u?ZZwtp0Hvw{Qi_wGoa{X>(T2&Wy14e| zhK_ervx3kEAr~F!WMjhk(xH2q&+j~fddWc?ZdZB|7(6`EgQ{MYcX|!5NTSxxeut=3 zM=%CStA}Fd@c6TszKqzk`{FkTsidMmdjjygG^)U32+^ZP@+V~Um{xO<=%+hB`)t~dN|F?`MtMo_ISJDBO}D&#hL}&PLk|#FVr7W$ag+(0rs!xvuQHsNrV2M}5uXI)}naCWW zZpB1vThqFmBQOf^VB0=Z0UUR0;lHyQRizol=N3h9yB<|g*=N`qXDyVTjJo}U6ov;Uu6&wcFp=6LcmXG{Y@YNsGraWt_V*h;jd!K1aaH$nuX6cHTzbeF z90F++wyg_gJ@cQ@IV9K1?cTUUxyXi)Mi-ti+*0icL#d;WzdhFbXK@?QyC)BtR5cnO z29dg)(a1W?bif4W)53fY3eZvYKxz;%Uq1axV4UL2)zlHnF2n*Vy9P8qj)T17ynDNW z5~k=eh>?%Gcl0~ZAzW`s`OGu8S`zg9%OX~=YEH!dpp-5RjYLj8esr^Q5u00anwkn7 zkymu|NPE&IFytxor&8L&?B(Ezm#XHwTGEWR9XY(0@(L^iYrkNw-pU}6_Epqc;~wPD z$_eE!*h2*8n*u3HObVuo{-Vx5nxzR6XClp+df}&R3MT7lQA(SN4NA_oGLaLRsNq|<$+ww$2ig0G30`*p z0OipGpV?g`v>^El68^^m6!AXC^xa_oAASKy9S80;znDnCvMq3ULy0Z20zNJB|DW!Q d9w5BK@QHieOZ7(~UH$Oiyg6pGFVC_G{2v9FiYWj9 literal 0 HcmV?d00001 diff --git a/docs/images/nso-05.png b/docs/images/nso-05.png new file mode 100644 index 0000000000000000000000000000000000000000..b1df3575e9a15edaba415228b8642906c185737c GIT binary patch literal 67750 zcmeFZWmuHm7dJXIC?yC;mw*UE3P=k`w;-L;F@SWZh)64)(xP<3(1!*!hx=i_HbjSKpxSL^zovY`K4aGTXdp!fE4h z{kWOKWxk31GnrSmem?Ip7Q~V0qn%lI+~eF1qI+8jdXjbe;8z99>D~G_H!C+cqBn?x z%k&c`-<1Z$iQB-1$lw|Bi;qh=Igi^2K#%uE(0uKb!lQq2pxfPxMnc0!!hZaGrt+b* zp`pG159$Tch1n3B7pZo$N?My@|H=krQE+|||3(O)c z`C}S$1XU&olbz&kA3@miFkM38$x#wWl(%gPG}lcLNrMi0Bl60^)X@Z=@(sA{r?&wG z^}HY^%*lkmONao+_$nvI^g#vwc;sb@QlIEE`kT>3hd0-Yxo&4QN%WD*dcBe*gEIHzTBxU2IaELZ^BXKJN?43a~&~++~%0pG0(>Iw6F;g@#Fy;+H>#3bM7# z33|&zEo9vmWVRNVo=4`{M72yG+!$$R%+Jeb5e4v=$rM1jK8!t8)v8KC5V zrH97XO7jQ_ujP3nGJ6Y!I|eZ=W}Dc<5BIvodZN*DFp|U-x~Loj8fZnIJpAbYhDIb7 z3G%L5Oj3ne9g8w}J##1X;1|QHz%$g@AjU7Gt2~Dfq*_fA(OKG(OCR*TqcmoJ4l+RL zY$I3W}|-X|0=G| z{|$ZY-TI58OuOu#suf@HELoF3nt#FhRc-0!Op_d@Bxx^2lFc&2^s8vq;1F_%>WO=W zCeixD=#Yc=5uO4jBl_oH=9XBKbq;VMOX7pRhs%`2VYwz%r5ajpwoiDeph&vm!XF?% zT}?ttKTmp4;4+1bv`@`@J5cBe6ocGAZUk-*_`*}#8aqGl_PDDxu!vv}cCO6#?%|xW zU2!5PD{*|&VW|raT9Hf z%(urj!%tsPFej*s2`JV}CDZuO$j7*J+d4ky4{8YWPMuL~lJ=FzRC&hCD))#Xtvu|N za-D*Qf(N@45%kZ*nBlE<4+4w#l+PD!L2cq ztf~xe4c;icG5GY9IEJ6pe?zqs~31T;?UZj?X;_0*o%&)}KCReN&xMXLBL1 ziuVi_kZd2Ww4|zZ*Lkq@5aQ3v1ZIG+Q9e!s>ofR>d8S5Y*$fM>h8_}}lb%1h$_~#8 z&sK=-Q%Yh?GEPF9GAn1DdNL(GWj^&_D#{U?pQH}8PS_FR7_~UGU%&r-v0@Rg+b||W zUrN^;8V)UVm`XA`Au>YKM-vUkx!3vdoM@RS?&0i1wTF053^Y<-XR(yU{*LR3t&cU2 zE$BJ!dD~;wLlT$4okJQK{!$7pJApGl>&x%rPnnMDW-rWCU(55T@F-VlAH|TVMidYi zY2=M(^X3;9Hi`RWduE^e-~^(p(QBAAOJ)2F%!@ZKUB>O_?Y9DJgYk+eilmA{rXNBu zw$!)Cwgd&VDD#v82gK6E^tC3$`7~h1}92}sJUs#pOcxA zJtI?iG>p@TbAS!QHY6(`4<_B>T<1Q2V{4phsb_Q9^0Md0$m7AB_Qk4#V&;j;p2JAe zj=nM5Fm31*i<9udlLLumH}F?t7FJiSLoM&>%JPR=yxId=1-g=2uXQ6htrQH+IS-O~ zeol9LhPmV)VUWwGIHz#)HcyjHGEVYNDzQ)KP*pX!p5>%{qwL)NI$JB;F4A`W;i@+1 zBT8rH&v`8Qhz^snvUL9S=RXD0oxRsgHy=A#ztu5A%)D(IeMinPHvbt#yH#%rwrN)JAzc@pKSg7hV=B65{hX_Kaz~Y<$|7?!Mu9zd=x= zg+)knQ-9AP_ov)-4=?rH!hFTVN=!+-{kI*w@1@_pHD4Ebu3P-B87djfSZ^L^ZoSd> zS9>Ab67*uLCA=k_X79`Hm-8>dMk{l}b9?yN(TcQu5=#;b;;?oHV=-eFgTAmAok}W~VR}UOK##_`wv3m;auddhLNWC4Z-x(}|Pe zu2usVTp?Cp-D<*yuF_f56ok6voZS zwZ;9N3t@p~mewENw`_4zGNIq>bX7qyk-EeCh0lTS&{ln_)@9)bW2d4tpF|2h--)d% z>{GMZ(+Tj&4~^gB?}|j1Nmt^Q8)u0dis%hFMfv<3p|Inh$Ysc4t&_Mg%8+I;Kf;s# z7Nv?b3|C*~MI!hUF1Dxa=jwgnroE!>8Y09!H_08cCuOYsmE_QrW-sTc_H@GBPr3ZL zpS?6UAz+hOqWH$y8au?1> zJTOA=%5ZroHH7q>PZwfp>D{90DIrBeh0LPwh2uRotsp88gj?Uv`o`kM$8{0v6>4hH zdAF<@__wAevCPbz2X=jysr;nAj=Ql31;>m*dD;Dk%UL6H&Og^y5YpbFoPy*8v^$YUI-pX6* zANLKrj;99u+LD%1ST>rueE0d~S!!Z=rZQ35zMBghs40Q()jBzuE_MB~oLikO+b!FJ zHb6&C2zDClGd%qE#I_~++S{ZFqI#%Vgo@8(SMrzN_U_#$93Z?>zRVCxTvTd0<=R_@JU7X6;Vo3@?$HjUJ~>HKUoES4m!0D8Bk;R6Wjy2;P2smPY{CbP+^>>z|Qa*7B`ySGk_Gk=9nD$Wz^oGk5~nPr|H12?c7WVD??AYz8wHUz$L`Y*_g&1Vr%Cl;4Vz}uNnft_3dqT zI+}k~akder(^6ESk+63(qv2)aVB??@xkp1oBjjjmF7WE5)PEiaehJfAIy*ZEu(P|l zxv{x%v)MaZuygYB^Rshsv2$^Off`^Z4?AaLcd(rk{l6ReZ#yr|oJ<_89GtD}?PzY> zHGX67;w(%@ciYkbUjH7anY-2h>B-LNKhpvx$bMVG&dJ8X{=c??M}=CJjuz$$@}M{e-!=w(brC9juQ3|pigI!|Fd5I zdHB!5|2!zfemnI)Nbzqv|LZP5XpwtD?EhOdk$YFKw{(GZq_BFatPXqwTz30HG66oG z{QLX%+K$-N^4J&zdI6GsDW>j@v^k5`KqPt7xks%(Jp18|kgM?}m6-sjH^S%%-$2q(N~iB#-4b^V7(M+YuaUvsj-=%ptTN>?BlCq-`k!;a z?@E24fuT{%tL-x5jA5irs$#ZOMuDC2&qhJWb?niv=i>}y&7+9iKpGY1iu_BlYKtG} zBcsdBdgTI;(Hspwk=?N-n2(EE5Pmmc-D=yI48LpbrptYK?JDcn?~8egL4_U%%Z|%Q z7Urv{oA3UyoWL+%XkfBxm%m&d%*fc5ki==J4ExP9p+|qTK30LjrkeHcA-jRz$A`?~ z_e-7CDp3AGIiLYg)Jn9;bYZW>LD8GoG(op%{RFTs<7XyiCC!?y4@imc4Z%849HNoo%jfHzK`$UOcU6`8$8~I7+E26@NxJQ=~U%N zM^RM=zW%0OR@79UQ%!;T51s*7C;%JN60_QFRsgzky0>7q)D!0_Fivwui+kM7bU>Q)M?z`PFc^9~ zjB2zU5shjzG^rJG2XjX2B42|PHs1PES8Gx4Ynw^=DIbMIcQ(Tf?)B>$OVn(e%(&D%rro?Pf4+y-gdrRaPWR4<>T6|W+ zi{mZ4cTh~^QirFk5_eFu3ld-nP!s$Jpw!Ya<-+A%)LbL@K;*yHdP(~TNvqy{>d_tS zM^l4_+2VMC>)?CG@&?!veP9BO+^f|vss#0p!&+PKB1E|k4IHE}`2DsQ4Fpo;os=y? zMm3u1>AkZ7M_n3WU@kni_e)VQaJw2$;5H?>u3OV}K8mT-cZ?Z?q}+mLC_bkNfAM|+Vd zc?Z|XVBT_#2FK(*R%#?I@fp6S0e7{Q4?@yPRk3}4M_DuJf|rrD5(BeWiv65_svo3 z4&FpU9cG_HF1^0G2yu47rs{SH!iJ%J0o-B{a<8Z;`=l7qY+!_uP#4F{n331WJF06*Gkb%T-P2 zgnS2;0%ji4fO-{u1|sg7(iSo)Zp-B?bya*gQvBA*N5VS?{DMXgn0V+jTrCkkbbtxb zE2r*c)XrN?lA20*mzi430mi6g?ZkH17%51AF}`(F`f%46KLd(`zo5VFE>?2Xqme+; zasYW3@z@9S?Rj-#-KC#?<9~SQzg9dCN3}xSu389d${q9Me^UB(fw4d((>p#*^&kWA zZe;2lm&!L2>s)A%OJ_c4nU|zZ&&?JW>5B42GWdc zSTzb0)eF^CdlJ~$(e6FOgyP%>CKQlLP@B1;xZlr*@XSvU@%g4+qB@&mf&3@md{UlU z$?%ImfqNM$n49&=GNnDqPxq92&psM#*qd3dGouBa!p$cUwHR;4n5MTHo8)?l{$b~g_~n#_(8d0e$I%Ijl;*G28O z8Qq`4*L!n)BI;pv-AnaV(6%#jE7vQ^&MyAe`=`+bn7%wNA?OdmjQ)lEK!StN-^!*` zhQaf6Y_jt5DW%nfP(|v$Xo205C&aCdE83uxEPS#fN`rzi!wf7#OpOvo#<(|pr_6JbFh-w|7yNDT>);(>WWu-C-_P;3 z6zykfWt&ca-?uklVym6=W`30;)5XP?ZMPkk)tf~L+alaj!+4@+hfb(o0kBsW<49ns z-jw6AV%E}T<1Y)^adOEcvUqkww&u%nabNB0u!m3eWFntu6`!qOUT8PC?^(Vs-Jla@ zfmK5)>>pen!*)y;en!07>7s`;u8)1UNMBH)$MNywnb_^GLG-wpUjzo+-Wj!SaKQ-a5nChfk6%ZrVQi@i?_t}(s{ zfc`@ERn-JzHfPrtJ4-c)@oAIsLhbhB4&}k`?@qR7Swxdp_Ao|%A9mh=KM$M9rR?l- zI&S(!?it9=Kqnx}XV=4mCzWf1I(YU0_HPhPKKt_+)JZ$ba@x(lL931ICXw2$m(Z_r zOFfQKS0hEu_9Tpds#6*~%$L}$eJQjq4&Iu!r)EEKN4BnV6VDX0O?=mOf=rpW-F$AY zuSWD<)uz%S%o6mE2jzM2ASL=poe|^~B$hHUwhVxqXW*4GuG#e-hg|qQ6Jz*i6UEg9 zc6wd`rRd>ZpHne6$>XCs5B35`rT9Qc+k)1d0>~N+Rj++bwVX5=y}-a zI6h_3!&1T;d+{@z=&FpoSZ}yAV8(d_=hXnJA}M$ze=z!Ol&G=W#GLWwB&X~7T7E_h z^D;F_&zd;SvQ#*Q`NRe_ju71EL|FTB-DZEUQ=V>It)@t~rr3GIH!am^U`k*kuFfeV zA%x2NM~Xe7DebT!6Uw)f;eI@|ve=D9cop{8b*5r}X4Go`2cfbj?3C#ljXKlG)7iM@;@Bpii>a2b=CqXY z^OMHLDE03eW8iydhoanMAC))|pItV_QviO@je?f*_o*u5pgSNs-Jvs*m`ibax^oYcDCETaZ2JfBAVz>r(2Wm zY7n%eN!(-_w1YwAF0^sQHh#T0UbiW}cNS&pAh`S&PTNDh zRds2u-%{OwV=cSITAdMbURtL*-*C^M83}tGho6!UQNMfOpJXBMibUq5*5*D31Z%lx zM2&H3?q~mog%YY!T0fo*nC$e&(~uNmL1p11)4q7=n8*b@?n(yO%!7IBnVfj{+DBEYRZBjNep$;{&XSI{4Dm7CtSZ9uby=O+8u-Ek`?F#b{*r;wE zIAt5^R|x@6)F_L>-gN1bnrC?)S?_O-G8-5zA%5KSt%lK2`CUG!I~ZuCoiFqA;`6yi zTj`Fb4O$8)!|M)2V~2J;5WPSQDFcdcxOAhcN)sB3Yh^$};c8M*s#jNjd_i4&0~H00 zT!r8@OD_-l$%>pUj>v=@#Mf}p>Su`5c-{)4(GHo=XgL3=w8QJJhWEAS%Ts3uB<{WK zXhzE688m~!e6ujd@gF~A2^YU+uXjv`AN^s@X`+pghr~IykO*wga+}ZCAaB}AT6Ts| zp@rD5nbH9tcT>F7o0*x}O2>Z<9q{?jjiCiop^wi$rxP1Z@5}4@*JU}Buo)!gZD;|j zO7_rd<0<&O{p!)k>u(xcI^~cJ-m`uAk^bEigg(#K3OMgbCZ{-*mi&FvUI=NuPJ2!W zmFMFevq;~VXDaKSvsJ&__}!jBXq^D>Y*KqmqyR~yD49nQQ+?c-^g_|V-8g+Ms|pUW zgSG);yclg4MrLYx!Ugu+Vh6jc%Ehy;ZDkXZ(LA%69(H=mQq`M^j@Fu`-(4x6!~%E; zRYl1&-VGUUxD>Vq3>Us#%Vg>lE~Bc|OS3vo?7q)tr>pI6+N)7Vi36^)?9v2Wv8*7u z;POb`S>&j1ZaEOu*EqCw0{( zyb)HdBLH{i8)J*o=^Ttms8-)6!4c#+#EzfiUReK9lvOFX7?ZcLG>|5^IHD|yS9jt` z;ghc4RX9s`bC6+@`zlwi+;L3qY_&Z~V!H&re8fV5NZ78H%Xw9Jf0^8V%4SHzCWP8R z+IsvOL$G34p_%B_WA>)qtch>0PMT|5C9}YXfeerQ>o$hAfEb%FA&pgyc;iF{>)8)I zSO%Qd8OFpENwQ^5#=7pgM6|Wl%R3`5Yp^p^wp?Fze|0dgZok}2v~G+xqZP!erMzY5 zwOw~(v626NL*YuJScgGg!A8M{s;YO#gfTVe56{j21^nTMhkWrWS{P9=o|a z=yUZ!L9BWtGL0f6-gPz%AZ~&o9epOEt)*QI@_t!9cA_i*bh;* zSl7=D7u#NoK__@)uc1d)Cr#n8Mv3#0nX_k}$D6d%Kg#9eda7A+TsyEMYjX83(v$WJ zpYh5%73uKIZo~86qv;D65)BK;_{DBSIcZWoy7+?AGt=N&F}fXpowZ2&e2y;GHfA|=DLEOHSnUQVibYNc`yCSCBMv;$%I0vLEZ=o}o z<(wJ?Vmy{3n_X(pJJj-3I*Pn;!Ai4Z!oY9rQE;Rr33mLU9vRzOqa8woVbL&edVg~q zUX#Sx>wEBR^xNzEbz{!@IPoOueyWw^xh$U7v=SKk9=KKHD_18GI9MCb8Ac#pr)67@ z&7scO`5eWR@!{_${qTmAUn{D*tW@UpqvxH6P8(-`Mi&Db=Ab-t`RSS?n6!64TpR5AJ46s*bb2DY@Hm*8D5BUJf}Bo~Ol779^v4-!H8^NOaQ{6(A3AfH1=5k{T*MZ8Zet$lTE@Cr@YZnu-O zKwzxMTJKAas7gB#PIG0IN>0GoEw$eUJ9}r!bRZxqHA8zv&Z*xI@W@#%6j94B>W0>Y*gJ+>6L-!|d^g;n)3Gk&Sv`bat z3+4;n9PbUE$km_I8;Y0S-ip8W7f0!lENQZZx*zTEwb&UHYH`BazN=&g&8|J8Ab)NY zEg0+3j&M1S@PP+DXKcDU7F@HcAFRuo-K~sM^OV~yiko&+gg%vGY31ys^4Xk!W^Bp< z^0J$*a4r1i(20XC*ILR^JNQ~tpQV}grbG9#EzBv$`)nWHpoE%{B+q6=$9YtGd=OX3B8)=rwE`yV<%L+E7IImd^E|amT zd52+gP+RMX{=-;RdNs58Hc2?!p0oA{XLcn^4$D0J-6QN4Vm2N8y@;5DmBz=@_j=;A z?7`Ts7vW4G=)ZSqA#LJrY$sFYk}1&vbB3uW4V2i3q7y&s3Ioch!8joO$fAjk?Oc-wv!zFy@G)&{|YPpFKR-d`=Y(12H`2~ zt6#^JlXX7KzQylIV_MKfYLRMZC`YW7`mo|wcl`u(m;LiXTl5WAvyY^1(telqjuZNf z&YUQN(kyE@ErDWkIi)Ss)|M>!d~l)X@Ygx@sD7*#uR*Rsq%w_Zq^E-EStSOPoNr=1 zHfESqB|_%PfatzJDWYmZZv`@4xwbT1;%6v`Xw+3cyUw^6t=iym92?W$+_y8YgZfbl zRDPxshQgLKUFxKK&&-0;#x+dIe%BV4xEfRVU1p}(6`T02Ju+Hj=1bD>l=mq*tR&BK z?F`olEcz+nvTdnbdUhf^SV4f@Qm;3rUCeEN5U$Qe;NM|wOoH74_g#sIZau$p3FQM_ zY(sa<`c^N*brjB`2(1LtL7U;{`6+xUk)h6*P$3Oao(X(y(ydqzl0IeAUqN1kdNT{; z)JLwG&z5!T+|;dq+}u~Mwj~wxZ}tuOt64ZfwLLwm#%lJ(!D)83OlMq1b57y4t27Bj zlPEoBM3w(ZV*J3rV-FhxrPQdV4G4E-tQxJIJ6JKR<%KJx2{5cbS8k;)h(UkoHg-P} zMyL$ZXlrOx)IEC1GDYNXB~MjkQkbRR=Q->6o$prz>{|4OUjuLs`Zok?3ZTgDQ|jxGOuWZno8#ix(UrLjzx2{M~Dq* z@=F58ILn811I5%kl_+z(PBund9#LNEV+6QKLR+jfYb_-aj|%J~oh1hgR*p&hK*Sr` zSm;J%RMsCJ6_`E-g&p~1`I~7?p zD!=+bSG{%`cX%rnF3=F@WVT4IfYZxFFO73@jK%kW1$19TRKMQ&(?;Z3`4bm!^a@1;1+Gb&=e z@mHqerFebzh+j4%^InINR^94AjI%bS44Fgtoh#FDbW5C8fUGA1%y_0!Z!-1O-{R*lLD0EHQ1FN79Vz`CO9OXk;ow(4Zu1Y3rW#yAe}TR^q{YEJ{uo?Q;xMX~r^@#Mry-Xn?s znYW~Qw!b7EZ=?M5ih7|He^Y@l@QNu^97uCV!>D{2fgP+aw#(`-*~=o?pCS$!t2B=D zJ&oB?y+CB@Py?sI$zRr(+~c4%^g+9H_xBR2^?^iIa7$p&xb*#G^JMB3+Mu}*QWS+* zxc35>RN#;*$^i&g?axb7_X2UDEiRn$L!si;=Q4`y_QstkBW7fFmYT98&)0QDS5j)8 z1h*%Aua@k*k zaYQowj9rrh&eIYinU?+Z9fb60D(FBXW!=xdI!SiskGx&aikrKS`5UKYhVy8wOCn^3 zep-AWZW){`i)gB;`y0i?(11u_y>PMC12SKt@!jul=?he750^~0x#->-S&WlFSfjCn zfv`99kus1&@>t77GZ)IdXr$KwVpiCJ!u*>rhFeu6I**3-eA?n>p>FaU8k$`I9;jig zo4{XxdeMt7E$JR1ORXap7@HoLgBvwih3!|_s2grFEfc>m=uJMi z{H4FYEx0pvB%n0Ghw$BKq~CZOlu(8Y*zH(>+c${n#;B3(@IPKeESAg>-zn(-e!IfV5*Xw8;_%{#=gBaTQ0Qn zrLxzdENRF}E7Yxl>&B}gB{pGZDQ>Vd9;`Q}3R}EaFVq^+UC#I=P%XcP&sFQ=iNYbA z&KtDtxs_R5FHQMcnNcZuPLycmFP^m#@;PiN%?*C^v)pxT1Zjsn1)Y!Rsk%d0o9{Yo zu}b>G1$d2DV59KdakI=r6qO$2MWOp7)s?AWm%Q?gN7e(FkRTzqkzrA0Qs9(UErw2#FXmKDS8D!i3 zKEjodveH1JEIj`D3cX7@4=tHxI?i@-*DFUQa~CNdJw18AW^!IGN8;|H z`w;QNYXV#2%ni1>oPfios)W@?uXT9sW*&3r4aNeYI+({z20+h1ljt=V&JG#ZlbqnN z>ORlaOlbw0s#ay1A>`6-W#KKH#1efH{fSYNNd9SfR5VIb62i~WLicQSe>hh@tSM=j z2yzvd#F%l;*bR7`>s2x%3sm;?;>W8)it9-$;=1M#z^~FsiPse{PmDa_vDmg{R?VvY z9_W2KFa4YPvx25&?R341e8H>SkHW`2ao9S=xz-yJ+cm*y+NoY5{4+c0 zsPUqm{c5)1GQm(>sSw;u#$)$r|3bht2$Q=xaiPH^lEfCvwHm9nEnh zd!bmn+%xa8-W5!uKWBb0!*rV}Wo<-Ctma++RaP;vE~A{epi*UzU|Y1EUYCKcL*Nbk zrXCKv%vz|S6pQ1e=`ygzIeluP}ZtbK19zy2u z3Dd9018?DZ-UK*Y7%}(_#*c}By(`Ji+~j9#%t@jNRP%H z^t)@N3AmJ+Xhu+Yl=yscxiP)h@{D4bPe{ZBISa@Jc?g|%d{fP?-^$Ac*Bo}9wgrdT zV&;)c0v_yDG_6~&u6wQn>v^Cvps3~9K&Y8%P`Zq7QvkE+z5$y zGjl1#J$~Oy)H5KzC9ZQ?XJY*;KR{mXKsiUlLjDFi>a6V58flZ~T5M@k-V?{t8_JYU z!#6Y8zCpDzjv;!pg_P)N%X1U5h~*?ooP48VX}SI}vQ;Br2~x+kbPx7gCE=pk@0QwU zJkNa`+g^Gc^w-!X=46ZASi2IMA zq9(ure+rqd4)rPo)v*5sh8iu1JWa5v$Xz&4ke~L(kK9}m{OsAe)zn}XjuYKg{J_V9 z#UGrv`Fs9IC(8}0E6#fJelq4azTO*?D(Cc<2=zmZ3mxv~XVxYv)wbFN`q21?%> zVe#6->6(kRXuT9aB|%128ro7uTv@|LhPH@CYd6^w+u*Ky(Wp+&{j`KK^ev{~gP%y5a=T7jHmiWOq%& z{yqS3*t(G3x{CsD0Q5r#=ncIY3Pbu~eb+P^zyK(#W{0}! zF4Xh~+7}>Vln-NfP2>MAp6eXl&en25!M@X%i^J zze{+;0I4H5{HX%|XB(h^!UuqWkV!}02{8Tw$TF6v$yegLL~9%nJF^ISX|X$0gp3NH zK2RGu)$iXmAR9o^%YVjX|LLUsR}(z`3TUiA_@i&Z|Go1^t!N%#K-vpks()ys|EW9z z_5UpiG+y>I<5UNLPr|K9z7unax%koleoMXU7TNJ7uw%ckogM{Z{SicZ7l}|wWZXdU zpFR;(qiI=Ne`{3N@n<-t%=i4K^tUuC01JI}af0Wy1Z1cIP`b;TJ3;Az_W*e5YDA{a zKidEyYtsX&hbNNaPSoW8m&Mek^523tGKsOrS^w4e{CgCaj4**zJE(H1xaPw~iFwb3B^V10|Qx6gu+!nHDmJT#CL_k8i zo2?iS*4nW<&xO38(Yyt{2B&?#6NVl8q8_C*Ha4~t-116I4U%Ss6t7kjdGLoy{vW{n z2cWfxqX=Mkl`U!m=0M16j}>b)mrICqt$69ML_q9*d=9cl#g-(9|9gH$-J zWbDt@AUrHYv#;0S&j>M1b6Wt|+hQ+!(>|_8TPTyvP?jWsyyjvm^*b=1I=R?6ra6<3 z`xMAyZMyBh`8Q`ZnhhAP^V?9%Cr2>*=I-rTXzrVid#{?j(U{f08VN)ZAeL_~5K)d- zF0+jh2;UXO?hMfkzCl!EZH7`Gn5)%vWw2YV)ksDh85Y6tCc^IpmHV8S_BkSV_^YbK z+GIhH=3oO?*~*Br*~Mq&>2+e^9UMx89FJv!beN|q^k9u=rD{}G%lY4uoy^5qx;_P{of5M2YM%c&3tyT z{U{jIHczH%u)ZAokj2Z#ot$N0h2&sr_zz z(pU|fW^9OfT{j=`UxgQv=d;A1l-?w7Tk;`Bd+S-XIF#k$*p^6hE#91L3lBGF%foV= zCwHMsf%gZL2e)OLi>keciB*bVm7m~^_TAMRii;ox_Vb_<(byX{{ih_Ue(4l$mv5(* zqlqv?jDD)YDojHkid?&Q8`f6}=di)t+i_g$ol6W}oz@0TI2i31OkFHQeYz=a&oSDX z)_&_5`Io#eCJnw6u)^3Mbt_#qGzbSO9V;AXkMwhWE?ljCUY^f~+;js;i5ND00gJUq z`k@s55sf!u9(x@g5~3vsu{XQ9mE=$xrXOQSVbM?{2~3-fJmL0Tu{F%_U0GN z(~f)kTD*E}Ts%!cpMebD+QWMPC4XO~(c4^wq~W|U9aTQ^JvD@oyYx)}0P)Y5hMXTa zDz0Z}BVbLnRuGb6v!w4U^)4HxjijH8ei$?4d@C?HA{)zfm~Vq$w}t|z9aA{g{8t+f zp_gZXsyJIQocywu^I0jD%S^m8Vc4fKY+2`EKL|M3844E^)(jJ@LIBmnCy;xa{#JCw@7_u=(@~Nz}OQGuL2c;xL=vb=Lf=W?!E+*R*gx z&`7*^!AWG9*r&+uC3dpanYYrS*GZ%H7NpA9*YmS zOwJXOI8E|=$ju!D`TRQleI2LF66&W)GfJ9|-z%g(?`}|af=nLOm&$&Y;@TZRf}aDS z)$T0Gk{%%Oc2J+@$--t&${nHpRI~VT z#Y$gzr9i(U&K#onPrMgG{+qOvcIv68!z4et(x9uSd}wy8_4` znhzv10vWL?C~&}AoRBs07&l@%VgLjJkKg_mK(?`Jqo;IF4Z_z#H_U^j@7;R?GW@(q zs--I5-qpqljgaYc4jow_>qk4&g5)M8yu6fP_>|hG^2d8IPq+h;mQ*?qq$t7B%xh?G zzw#DZza?dBf$Ya9dQ_>9F4Vy`M(jGGfSG@T{BgzWi$QxxL@WeWjTY%?SsiJ$b=+5> zOs!*-$K|LswD#CcJejxhpE>z$Zg`uMnH7aPRnvC) zNO|Zdaukwg&j%QJue*exssg6;%%>6ns z-conFQS&&-t{Y9E^c%R@)$g)wk=tGoYy-bn(EAS=We2?6_S5er*DO94hxe_D)HB6B zM*556&SGZu%^?qQy1U*wVFHPtD1MtHie$39!&J!?nW+RmMA(hEImze!>qOtyQc zJk`(hgY@P{?X#d=grk%Fkj*d0Dl4-*q$HLM-~FV+H796FoLCTs9DsRf^x(@3Dz*8# z`0@QiGL71D04%CXIpaDnqFZIV5wY{k`&8Hw!0`ve`gHSXsh`EitbxX`N zYR5gzWesiSGRwP2DJ zxjIL)*==5j?!Lwelv$?}2anlzIXcsoR^UcYgl+!Ffi(1ot0iJ8(m3xT&9SGOYq@DO zx@>r~(qb^hbg6`;Q3Am2^a0#NN*=1GOW$~WPRDNh@u=PK#L0z>(=jpC4PIvz zS+X+WY01A;skRh=fmek}=DY$R2cQ_bA1M7U-|nB*N^iNAT`!u0h>Ps_67g5aM?B?v zfxoF>n9%d8N&`3w_?HQtX}LncZMSpj%J&1Ehq2YGY&WeKJz7S5H47Wh>zyNpu4aZ% zm(G9E&6x5k>FoXpKt(#NG?g`hJWyF_;8Jb^aaZC{NP2`3D1OSKNV5cH>n0&=&+%c* zEK2yiwl9@mmnqlxihHr?0?$P_;z+pmvV7TqMVzvC({n_JJ^j;^%}19=;XJe7$8Q%l z&Cl=z6?&5FexLQZd0+epEnoQ@q^}p2?o%Dxu&nZgawD{chGi`>efnjq(2Z-Z9=E=bvPl zJkMRPHs`#I(Zo2hv2SwS_hxvG9LL>j7kqs}dybLC{-kX9>&=g*hD);yfx6XGNsa!3 zdI2IZAK}@)Y+hS;9)4Xoa^Aq{bSZGV-win!)N5Io~L#z&<;mw)zHc-;Xp6sDE$mQl1`|%H)#zl0JTan!t8FMKnHpCRryYpYh7C zf!7`gy!vcPCa?{F2{v}u4b8deb8^W?!O+@9nU}XWVEf2y z{K7EIu*ZwRuC^cU@n59TFWZdx4Trapzwy3Zzg>&(1o49mRx`iP*U{&AVp&u zGtB^B(Im0mtQ82;(A3XOgLv_Kv*+WF3W*e+r0Loe!8!wBrzI#ZRrFxwtzauts+h)n z=7NE{QB7Es3H@9`;_)8siiC6$y7))84JDogghnwy12?G6lKqF)4c7144OZ4{ZGJmt z*?d30^!-4rG>5QEBB%nYVNFRfJW42xyzT z17bf(cKc_~ncG$sQ2{p00>?9Dhn2@xa=-cLlWGmgp9rC+A75XSCS2 z;;R%pE1@wDsaHLnDjHzwPBtTJPq=eS>$VIMOHYDttvvG%AU5lm9?odRaPlOI+RWED zuKzVjW8Mk{<2PuT8tknOwiKynvBA4F*4z&rqG$OvFx1o68A7Sp?I-lg&F*`XVAy?> z!iVl+yGSo`onI0x*WQD3$>sDiu=FOo?tFY0fAYA>j(x|KCD&TtEl1z*fP=l1pt)~s z^jFgmfTxme9%U1;`H?^fk?#?6>HG7oj?lX|rnuAhi1XN$ST2)S=WR|`IJbX^hIAe& z$kUYZj z;XE?KNIthM6NV&!v=i!4iH}fMtK8@pvz>Q42e)33a3IUaKd#vZCgPqQ(Qns7ncdzr zDm=k$x?7ZY`;duUxr;J!H~f)9(KLT=BlV&A{Jq_S{_;CIU%>dG97Dfkg03BxIJuTT z9>XaOH^-j2zvkWAL@ppb;y441EOqgH3zjxGL=BDy-eWDZ4^^pDPBkL3TdnoSwKVQ@ z<1TkToKe$_@`bnu1+W*&q{sFH)Nw|?9dts4fZKcIMp_Ftt6xIkrmECss-ljeZzpUP ziU3XQ;o}szw_>u`_7V=ITdV`SE%9bBFHuy9q@%7|&^hiat)@d^b_h=aMEQ5#BnAYP z+lG4vo0wyzQ?EPe5W>TqF5)?+#*X?7us4gP2#En5_t8pqWwd}fY;Mh(5Xx&uS zgZ&f1DCn2{Ij3Mifj;XEUF9A(yaauHlkRf$2j`a6wc*K_+^9cB83LuBqz*|qZ&Uep zt~VTXYd>#d_Z)@$NpQlTZ*k-PaFI~20;7@UuCK3?`*RIyipTwYxZJ-(*@KLgk0f`$ z0B1eLa_hUe`b2lZgdSk*dO2CFdsetnuQP;js?(Mynws1MK_&v#E?I|^)U{kjb6EX+ zrBP|!``q_)TQu93v{0(LkL?FVPOSsA=E$`|Z+(!oOPjSss|P;Gr#&D`>bBa{?>D#h zCf3ibecBF%eH*QHvXWEvum3aQ(G{1{<@<4Mi5);*$|mM4u@T4k?C`~)NZ4KBs9!2Y z=TtzxxAmu(JVW<*~>2fK7{^Nx&db>~u8; ziz2oUQ$7Mhxq(fh>rH1ifpUz4{}kZ~0kX5+-{Te4LU{$?%N>_-ghp-6_5>ftQK4rU zWXpdBM;!0Cv1@Lsqpdp1MSXdl9n9&8!Cp&Vmt-w1ky zP!~Xw9>0C}BQX>Ia$|R0;z0g{=0SS8>-??pAEijH!wgG+w=0&ks zyUcQHQ1<)YGKQHh2VPeRb6*ZXJ6bB2avrieuFsBZ1#C|QdhG4*kfIP5B)TbR!Sclc zGQ_Z$cEI5d^V&vVnMJ36(Kux9=)(h_WTKU6z-nG=t^OIlV(P`BN)4v7ghw=bI5Vg6t> zuV*TnlHf2purgnQN-F;u1Q?$W+?~C7C5VY0!BSuTytK>p8Owy>JJxNWdub&0<=8g( z+JET$AlQ+v)xHN*3-T}QSow+4DRjKQWuE@>t1HoaCcl0esbxt-6OV=rojTs4h(k(- z!ejQ%N+)*gdN}k~7s~nydSIdh?h9A_ZMpCGCm0t2P6Ycm%=5g+Y`i{mW96e`^0W@F z2e^!kJt>mG;qcuCyV<-g<#q$qN(=2z;JM+su4Gg+Qtz@41Pw%Aoleim>C}53n9NtQ zdnvH;r`9cU^hIj# zJ0-c}Kq5_nh_ox@G2DzZys#<65=8m&;*lD=BqEV0joe|D|1d<1VV88@q?+7v+Riw- z#C;6d zxHhB~4ie>vsmC*XX}L(7UPhQ7xWYCa{D4}^5A?-8hcf)R9t|7u`^MI zvsF$2nE3l9e$N^mf~O4b*G~@IaSCYI&Zf2QKk!a?Mh`k`I{Tob#WMiC^(a+zm0=t6)UY7BQ6`r*o&KKZYAf@X zw^^ZRE!$UxlZrcX^bTQAptUecOa+oFh{+%u&mJHzH(G3cOgOUIyyS-29G0*y5#ORx zrK{anL*54-e4gA(4-c^|nHjduwtQuE9IN{(`2#X1T0+(x%L;c8*Sq)%t zm)%$72zWYxJ9<6)48ZmipZw{|SM?)hf5YMz#L?wdiaVErY?vk4C9MgKm?iD5)UE6T zm3&BNAWHb>2ojpQq*HkRiFQAuX1m2>r`~Tb@JOhrbss#GH6Z?$*3kYoRt=iW&uR%1 zg&`5CzBv<5k}ECp-g}2WYmjgMV{h;^a~>=Pfa|ycT>BMk<*WzhsIfczcAknJ0J(>k zO$u1#T8l|Jyvy0sg&Qdef1_cd;~px*k{pDy%%O(u-$j$tuq!|3OW-vp<`<-qU)?`S z&3vfJ18}$TtQrp1!|_0Z9$Vck4ZG=l*2^{@9K{W=(>;k}w@Ny3=Z{3kebfhTXU)qk{mq}kwg%6qXQG!%2g4l)f-?D@%@B;_5c5-@M$n^n8DaJ4H%B-*QY^l>?E zLweE2!A1-^|Na%O^1n2R{<74rikG#>^ngr~11%TK=NN544%C$D-+d5Spinr?dA%%! zm}$V_vrV@5Jm`@kmgrH7AH~8Q2MV)Jvq}l{<@5X!wE{ULqjNxCE&l{&LEH>(c$Q3$ z4}V`Rb&6bK6AMzB!;|y4Q_xFy{KrG5fZ|eZX#E1){Tl1-yellf#AX2Ha!&a&(9>M~ z(V7boe&d5@g1j%N{B$8>f2o2JK{g)%-x8?dJbrU`+FCH8%wA|x*#_GVtjGqudWq3t zF;x~#`KxgR+C42NUx-7v_16R>Pu8Q(kqg{twz_lDZ*R%-j^FkpeRGqWXJCK}t!03) zwHfCd{%S{e(ZP4c8#jcX{s;U{69E3KvixG^|N8S< z4fvWS!Gw?gAHEg@d2RI%P$AjNMIg-@ySwS?^6Oh1|0ac*)QNxkT#5HB5yEr*`jo8r zyMN`!mqsUas{ZMH!4^0MIWc;u{i9Hu7I?

s{Wzc#8kpj`F}=)E&Ni>%Z;ZU(h63 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 literal 0 HcmV?d00001 diff --git a/docs/images/nso-06.png b/docs/images/nso-06.png new file mode 100644 index 0000000000000000000000000000000000000000..3223c94fe2d1f97a4196d74c40894adac9070e91 GIT binary patch literal 208288 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 K8p4cShdA3<+2>AdLqRY!s11ZS$1(IHcWy&Jg@Z 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Ð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 literal 0 HcmV?d00001 diff --git a/docs/images/nso-07.png b/docs/images/nso-07.png new file mode 100644 index 0000000000000000000000000000000000000000..b208713c6068cb07b69dc3732dee395b1f7c4e00 GIT binary patch literal 122015 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 T-RRvj;OB|FsvJt@`J4X*+9QC} literal 0 HcmV?d00001 diff --git a/docs/images/nso-08.png b/docs/images/nso-08.png new file mode 100644 index 0000000000000000000000000000000000000000..4617a203cf5bf7ea4c51b06fbf9b19da1f58def1 GIT binary patch literal 83881 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 literal 0 HcmV?d00001 diff --git a/docs/images/nso-09.png b/docs/images/nso-09.png new file mode 100644 index 0000000000000000000000000000000000000000..0786d0f51d9f49faad09f32d12ea0b2faa4c0bf6 GIT binary patch literal 226249 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

4j+?Va&yXs%Q`Of8W5*y7Fd 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 literal 0 HcmV?d00001 diff --git a/docs/images/nso-10.png b/docs/images/nso-10.png new file mode 100644 index 0000000000000000000000000000000000000000..0c367d9671da00c1b1ca7028a13db6db0491ba0b GIT binary patch literal 69588 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�jrf$b3)a=`b*1AeS4*M+M*7p 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 W@xG6xeL=SSfDL}Z>^#{B6Y+0e>bo-l literal 0 HcmV?d00001 diff --git a/docs/images/nso-11.png b/docs/images/nso-11.png new file mode 100644 index 0000000000000000000000000000000000000000..67b15b302a169d292634b7cb5702c90e201a9b45 GIT binary patch literal 180411 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 z�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 literal 0 HcmV?d00001 diff --git a/docs/user/nso_commands.md b/docs/user/integrations/nso.md similarity index 77% rename from docs/user/nso_commands.md rename to docs/user/integrations/nso.md index 2457ba9f..8f14c963 100644 --- a/docs/user/nso_commands.md +++ b/docs/user/integrations/nso.md @@ -17,15 +17,15 @@ Interact with Cisco NSO by utilizing the following sub-commands: ## Screenshots -![Commands list](../images/nso-01.png) +![Commands list](../../images/nso-01.png) -![Ping command](../images/nso-02.png) +![Ping command](../../images/nso-02.png) -![Check-sync command](../images/nso-03.png) +![Check-sync command](../../images/nso-03.png) -![Check-sync command, compare config](../images/nso-04.png) +![Check-sync command, compare config](../../images/nso-04.png) -![Run remote commands](../images/nso-05.png) +![Run remote commands](../../images/nso-05.png) -![Run remote commands result](../images/nso-06.png) +![Run remote commands result](../../images/nso-06.png) From 651da3731f5679192173165b236dc7c0c5b11c29 Mon Sep 17 00:00:00 2001 From: Sergey Romanyuk Date: Mon, 4 Mar 2024 15:33:40 -0500 Subject: [PATCH 71/93] Update poetry.lock --- poetry.lock | 33 +++++++++++++++++++++++++++++++-- 1 file changed, 31 insertions(+), 2 deletions(-) diff --git a/poetry.lock b/poetry.lock index 88348e98..1911428f 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 1.7.1 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.5.1 and should not be changed by hand. [[package]] name = "aiodns" @@ -3792,6 +3792,7 @@ files = [ {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69b023b2b4daa7548bcfbd4aa3da05b3a74b772db9e23b982788168117739938"}, {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:81e0b275a9ecc9c0c0c07b4b90ba548307583c125f54d5b6946cfee6360c733d"}, {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba336e390cd8e4d1739f42dfe9bb83a3cc2e80f567d8805e11b46f4a943f5515"}, + {file = "PyYAML-6.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:326c013efe8048858a6d312ddd31d56e468118ad4cdeda36c719bf5bb6192290"}, {file = "PyYAML-6.0.1-cp310-cp310-win32.whl", hash = "sha256:bd4af7373a854424dabd882decdc5579653d7868b8fb26dc7d0e99f823aa5924"}, {file = "PyYAML-6.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:fd1592b3fdf65fff2ad0004b5e363300ef59ced41c2e6b3a99d4089fa8c5435d"}, {file = "PyYAML-6.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6965a7bc3cf88e5a1c3bd2e0b5c22f8d677dc88a455344035f03399034eb3007"}, @@ -3799,8 +3800,15 @@ files = [ {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42f8152b8dbc4fe7d96729ec2b99c7097d656dc1213a3229ca5383f973a5ed6d"}, {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:062582fca9fabdd2c8b54a3ef1c978d786e0f6b3a1510e0ac93ef59e0ddae2bc"}, {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d2b04aac4d386b172d5b9692e2d2da8de7bfb6c387fa4f801fbf6fb2e6ba4673"}, + {file = "PyYAML-6.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e7d73685e87afe9f3b36c799222440d6cf362062f78be1013661b00c5c6f678b"}, {file = "PyYAML-6.0.1-cp311-cp311-win32.whl", hash = "sha256:1635fd110e8d85d55237ab316b5b011de701ea0f29d07611174a1b42f1444741"}, {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"}, + {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"}, + {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"}, + {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"}, + {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"}, + {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"}, + {file = "PyYAML-6.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:0d3304d8c0adc42be59c5f8a4d9e3d7379e6955ad754aa9d6ab7a398b59dd1df"}, {file = "PyYAML-6.0.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:50550eb667afee136e9a77d6dc71ae76a44df8b3e51e41b77f6de2932bfe0f47"}, {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1fe35611261b29bd1de0070f0b2f47cb6ff71fa6595c077e42bd0c419fa27b98"}, {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:704219a11b772aea0d8ecd7058d0082713c3562b4e271b849ad7dc4a5c90c13c"}, @@ -3817,6 +3825,7 @@ files = [ {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a0cd17c15d3bb3fa06978b4e8958dcdc6e0174ccea823003a106c7d4d7899ac5"}, {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:28c119d996beec18c05208a8bd78cbe4007878c6dd15091efb73a30e90539696"}, {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7e07cbde391ba96ab58e532ff4803f79c4129397514e1413a7dc761ccd755735"}, + {file = "PyYAML-6.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:49a183be227561de579b4a36efbb21b3eab9651dd81b1858589f796549873dd6"}, {file = "PyYAML-6.0.1-cp38-cp38-win32.whl", hash = "sha256:184c5108a2aca3c5b3d3bf9395d50893a7ab82a38004c8f61c258d4428e80206"}, {file = "PyYAML-6.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:1e2722cc9fbb45d9b87631ac70924c11d3a401b2d7f410cc0e3bbf249f2dca62"}, {file = "PyYAML-6.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9eb6caa9a297fc2c2fb8862bc5370d0303ddba53ba97e71f08023b6cd73d16a8"}, @@ -3824,6 +3833,7 @@ files = [ {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5773183b6446b2c99bb77e77595dd486303b4faab2b086e7b17bc6bef28865f6"}, {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b786eecbdf8499b9ca1d697215862083bd6d2a99965554781d0d8d1ad31e13a0"}, {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc1bf2925a1ecd43da378f4db9e4f799775d6367bdb94671027b73b393a7c42c"}, + {file = "PyYAML-6.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04ac92ad1925b2cff1db0cfebffb6ffc43457495c9b3c39d3fcae417d7125dc5"}, {file = "PyYAML-6.0.1-cp39-cp39-win32.whl", hash = "sha256:faca3bdcf85b2fc05d06ff3fbc1f83e1391b3e724afa3feba7d13eeab355484c"}, {file = "PyYAML-6.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:510c9deebc5c0225e8c96813043e62b680ba2f9c50a08d3724c7f28a747d1486"}, {file = "PyYAML-6.0.1.tar.gz", hash = "sha256:bfdf460b1736c775f2ba9f6a92bca30bc2095067b8a9d77876d1fad6cc3b4a43"}, @@ -4031,6 +4041,25 @@ files = [ [package.dependencies] requests = ">=2.0.1,<3.0.0" +[[package]] +name = "responses" +version = "0.24.1" +description = "A utility library for mocking out the `requests` Python library." +optional = false +python-versions = ">=3.8" +files = [ + {file = "responses-0.24.1-py3-none-any.whl", hash = "sha256:a2b43f4c08bfb9c9bd242568328c65a34b318741d3fab884ac843c5ceeb543f9"}, + {file = "responses-0.24.1.tar.gz", hash = "sha256:b127c6ca3f8df0eb9cc82fd93109a3007a86acb24871834c47b77765152ecf8c"}, +] + +[package.dependencies] +pyyaml = "*" +requests = ">=2.30.0,<3.0" +urllib3 = ">=1.25.10,<3.0" + +[package.extras] +tests = ["coverage (>=6.0.0)", "flake8", "mypy", "pytest (>=7.0.0)", "pytest-asyncio", "pytest-cov", "pytest-httpserver", "tomli", "tomli-w", "types-PyYAML", "types-requests"] + [[package]] name = "rfc3339-validator" version = "0.1.4" @@ -4980,4 +5009,4 @@ panorama = ["defusedxml", "ipaddr", "netmiko", "netutils", "pan-os-python"] [metadata] lock-version = "2.0" python-versions = ">=3.8,<3.12" -content-hash = "9edc678921261739f715585db93b205eb9d4e92b525c11a27d87dbe7625d1196" +content-hash = "ccebc37946e274c97420bedc97c5a79713fd11d88bbb73f00ede9b75a5508087" From 346a8d5235e79c79324846665b08436341f25285 Mon Sep 17 00:00:00 2001 From: Sergey Romanyuk Date: Mon, 4 Mar 2024 15:34:15 -0500 Subject: [PATCH 72/93] Add NSO integration commandfilter.html template --- .../nautobot_chatops_nso/commandfilter.html | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 nautobot_chatops/templates/nautobot_chatops_nso/commandfilter.html diff --git a/nautobot_chatops/templates/nautobot_chatops_nso/commandfilter.html b/nautobot_chatops/templates/nautobot_chatops_nso/commandfilter.html new file mode 100644 index 00000000..844551fe --- /dev/null +++ b/nautobot_chatops/templates/nautobot_chatops_nso/commandfilter.html @@ -0,0 +1,38 @@ +{% extends 'generic/object_retrieve.html' %} +{% load helpers %} + +{% block content_left_page %} +

+
+ Command Filter +
+ + + + + + + + + + + + + +
Command + {{ object.command }} +
Role{{ object.role|hyperlinked_object }}
Platform{{ object.platform|hyperlinked_object }}
+
+
+
+ Comments +
+
+ {% if object.comments %} + {{ object.comments|render_markdown }} + {% else %} + None + {% endif %} +
+
+{% endblock content_left_page %} \ No newline at end of file From fbdceab26d3c87b90b50a1873d013ba3ddfe25d9 Mon Sep 17 00:00:00 2001 From: Sergey Romanyuk Date: Mon, 4 Mar 2024 16:20:17 -0500 Subject: [PATCH 73/93] NSO integration - fix formatting --- docs/admin/integrations/nso.md | 4 ++-- nautobot_chatops/integrations/nso/__init__.py | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/admin/integrations/nso.md b/docs/admin/integrations/nso.md index fce841d6..f0c33787 100644 --- a/docs/admin/integrations/nso.md +++ b/docs/admin/integrations/nso.md @@ -10,12 +10,12 @@ Before configuring the integration, please ensure the following: ```shell pip install nautobot-chatops ``` -- `nautobot-chatops` App is set up with at least one [enabled chat platform](./index.md#chat-platforms-configuration) and [tested](./index.md#test-your-chatbot). +- `nautobot-chatops` App is set up with at least one [enabled chat platform](../install.md#chat-platforms-configuration) and [tested](./../install.md#test-your-chatbot). - [Cisco NSO](https://developer.cisco.com/docs/nso-guides-6.2/#!installation/installation) application installed and configured. ## Command Setup -Create a top-level command named `nso` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](./index.md#chat-platforms-configuration). +Create a top-level command named `nso` in your enabled chat platform. For detailed instructions related to your specific chat platform, refer to the [platform specific set up](../install.md#chat-platforms-configuration). ## Configuration diff --git a/nautobot_chatops/integrations/nso/__init__.py b/nautobot_chatops/integrations/nso/__init__.py index e69de29b..d5aa34f2 100644 --- a/nautobot_chatops/integrations/nso/__init__.py +++ b/nautobot_chatops/integrations/nso/__init__.py @@ -0,0 +1 @@ +"""Nautobot ChatOps NSO Integration.""" From 853147f14d9e8bd5c71124241911bbac69356a5a Mon Sep 17 00:00:00 2001 From: Sergey Romanyuk Date: Mon, 4 Mar 2024 17:28:56 -0500 Subject: [PATCH 74/93] NSO integration - rename CommandFilter to NSOCommandFilter --- nautobot_chatops/integrations/nso/forms.py | 6 +-- nautobot_chatops/integrations/nso/models.py | 6 +-- .../integrations/nso/navigation.py | 8 ++-- nautobot_chatops/integrations/nso/tables.py | 8 ++-- nautobot_chatops/integrations/nso/urls.py | 26 ++++++------ nautobot_chatops/integrations/nso/views.py | 40 +++++++++---------- nautobot_chatops/integrations/nso/worker.py | 4 +- ...231228_2231.py => 0008_nso_integration.py} | 6 +-- nautobot_chatops/models.py | 2 +- ...mmandfilter.html => nsocommandfilter.html} | 0 10 files changed, 53 insertions(+), 53 deletions(-) rename nautobot_chatops/migrations/{0008_auto_20231228_2231.py => 0008_nso_integration.py} (93%) rename nautobot_chatops/templates/nautobot_chatops_nso/{commandfilter.html => nsocommandfilter.html} (100%) diff --git a/nautobot_chatops/integrations/nso/forms.py b/nautobot_chatops/integrations/nso/forms.py index 721198dc..4b762f8a 100644 --- a/nautobot_chatops/integrations/nso/forms.py +++ b/nautobot_chatops/integrations/nso/forms.py @@ -4,10 +4,10 @@ from nautobot.core.forms import BootstrapMixin, DynamicModelChoiceField from nautobot.dcim.models.devices import Platform from nautobot.extras.models import Role -from nautobot_chatops.integrations.nso.models import CommandFilter +from nautobot_chatops.integrations.nso.models import NSOCommandFilter -class CommandFilterForm(BootstrapMixin, ModelForm): +class NSOCommandFilterForm(BootstrapMixin, ModelForm): """Form for editing command filters.""" command = CharField( @@ -21,6 +21,6 @@ class CommandFilterForm(BootstrapMixin, ModelForm): class Meta: """Metaclass attributes of the command filters form.""" - model = CommandFilter + model = NSOCommandFilter fields = ("command", "role", "platform") diff --git a/nautobot_chatops/integrations/nso/models.py b/nautobot_chatops/integrations/nso/models.py index 89a49e67..9596f047 100644 --- a/nautobot_chatops/integrations/nso/models.py +++ b/nautobot_chatops/integrations/nso/models.py @@ -3,7 +3,7 @@ from nautobot.core.models.generics import PrimaryModel -class CommandFilter(PrimaryModel): +class NSOCommandFilter(PrimaryModel): """An allowed command tied to a given object.""" command = models.CharField(max_length=200, help_text="Standard regex supported.") @@ -11,11 +11,11 @@ class CommandFilter(PrimaryModel): platform = models.ForeignKey(to="dcim.Platform", on_delete=models.CASCADE) def __str__(self): - """String representation of an CommandFilter.""" + """String representation of an NSOCommandFilter.""" return f'cmd: "{self.command}; on: {self.role}:{self.platform}' class Meta: - """Meta-attributes of an CommandFilter.""" + """Meta-attributes of an NSOCommandFilter.""" ordering = ["command", "role", "platform"] constraints = [models.UniqueConstraint(fields=["command", "role", "platform"], name="unique command filter")] diff --git a/nautobot_chatops/integrations/nso/navigation.py b/nautobot_chatops/integrations/nso/navigation.py index dc84a3d4..05ae16cc 100644 --- a/nautobot_chatops/integrations/nso/navigation.py +++ b/nautobot_chatops/integrations/nso/navigation.py @@ -3,13 +3,13 @@ items = [ NavMenuItem( - link="plugins:nautobot_chatops:commandfilter_list", - permissions=["nautobot_chatops.view_commandfilter"], + link="plugins:nautobot_chatops:nsocommandfilter_list", + permissions=["nautobot_chatops.view_nsocommandfilter"], name="NSO Command Filter", buttons=( NavMenuAddButton( - link="plugins:nautobot_chatops:commandfilter_add", - permissions=["nautobot_chatops.add_commandfilter"], + link="plugins:nautobot_chatops:nsocommandfilter_add", + permissions=["nautobot_chatops.add_nsocommandfilter"], ), ), ), diff --git a/nautobot_chatops/integrations/nso/tables.py b/nautobot_chatops/integrations/nso/tables.py index ecaf466b..7b5363ef 100644 --- a/nautobot_chatops/integrations/nso/tables.py +++ b/nautobot_chatops/integrations/nso/tables.py @@ -2,7 +2,7 @@ import django_tables2 as tables from django_tables2 import TemplateColumn from nautobot.core.tables import BaseTable, ColoredLabelColumn -from nautobot_chatops.integrations.nso.models import CommandFilter +from nautobot_chatops.integrations.nso.models import NSOCommandFilter def _action_template(view: str) -> str: @@ -23,7 +23,7 @@ def _action_template(view: str) -> str:
""" -class CommandFilterTable(BaseTable): +class NSOCommandFilterTable(BaseTable): """Table for rendering filter commands.""" command = TemplateColumn( @@ -37,7 +37,7 @@ class CommandFilterTable(BaseTable): platform = tables.Column(linkify=True, verbose_name="Platform") actions = TemplateColumn( - template_code=_action_template("commandfilter"), + template_code=_action_template("nsocommandfilter"), attrs={"td": {"class": "text-right noprint"}}, verbose_name="", ) @@ -45,5 +45,5 @@ class CommandFilterTable(BaseTable): class Meta(BaseTable.Meta): # pylint: disable=too-few-public-methods """Meta for class PanelViewTable.""" - model = CommandFilter + model = NSOCommandFilter fields = ("command", "role", "platform") diff --git a/nautobot_chatops/integrations/nso/urls.py b/nautobot_chatops/integrations/nso/urls.py index 257e50b8..e5b63070 100644 --- a/nautobot_chatops/integrations/nso/urls.py +++ b/nautobot_chatops/integrations/nso/urls.py @@ -1,25 +1,25 @@ """Django urlpatterns declaration for nautobot_chatops.integrations.nso plugin.""" from django.urls import path from nautobot.extras.views import ObjectChangeLogView -from nautobot_chatops.integrations.nso.models import CommandFilter +from nautobot_chatops.integrations.nso.models import NSOCommandFilter from nautobot_chatops.integrations.nso.views import ( - CommandFilterView, - CommandFilterListView, - CommandFiltersCreateView, - CommandFiltersUpdateView, - CommandFiltersDeleteView, + NSOCommandFilterView, + NSOCommandFilterListView, + NSOCommandFiltersCreateView, + NSOCommandFiltersUpdateView, + NSOCommandFiltersDeleteView, ) urlpatterns = [ - path("command-filter/", CommandFilterListView.as_view(), name="commandfilter_list"), + path("command-filter/", NSOCommandFilterListView.as_view(), name="nsocommandfilter_list"), path( "command-filter//changelog/", ObjectChangeLogView.as_view(), - name="commandfilter_changelog", - kwargs={"model": CommandFilter}, + name="nsocommandfilter_changelog", + kwargs={"model": NSOCommandFilter}, ), - path("command-filter/add/", CommandFiltersCreateView.as_view(), name="commandfilter_add"), - path("command-filter//edit/", CommandFiltersUpdateView.as_view(), name="commandfilter_update"), - path("command-filter//delete/", CommandFiltersDeleteView.as_view(), name="commandfilter_delete"), - path("command-filter//", CommandFilterView.as_view(), name="commandfilter"), + path("command-filter/add/", NSOCommandFiltersCreateView.as_view(), name="nsocommandfilter_add"), + path("command-filter//edit/", NSOCommandFiltersUpdateView.as_view(), name="nsocommandfilter_update"), + path("command-filter//delete/", NSOCommandFiltersDeleteView.as_view(), name="nsocommandfilter_delete"), + path("command-filter//", NSOCommandFilterView.as_view(), name="nsocommandfilter"), ] diff --git a/nautobot_chatops/integrations/nso/views.py b/nautobot_chatops/integrations/nso/views.py index 5e58afee..8f031f81 100644 --- a/nautobot_chatops/integrations/nso/views.py +++ b/nautobot_chatops/integrations/nso/views.py @@ -6,44 +6,44 @@ from django.contrib.auth.mixins import PermissionRequiredMixin from nautobot.core.views.generic import ObjectListView, ObjectEditView, ObjectDeleteView, ObjectView -from nautobot_chatops.integrations.nso.tables import CommandFilterTable -from nautobot_chatops.integrations.nso.models import CommandFilter -from nautobot_chatops.integrations.nso.forms import CommandFilterForm +from nautobot_chatops.integrations.nso.tables import NSOCommandFilterTable +from nautobot_chatops.integrations.nso.models import NSOCommandFilter +from nautobot_chatops.integrations.nso.forms import NSOCommandFilterForm -class CommandFilterListView(ObjectListView): +class NSOCommandFilterListView(ObjectListView): """View for command filters list.""" - queryset = CommandFilter.objects.all() - table = CommandFilterTable + queryset = NSOCommandFilter.objects.all() + table = NSOCommandFilterTable action_buttons = ("add", "export") -class CommandFilterView(ObjectView): +class NSOCommandFilterView(ObjectView): """View for command filter details.""" - queryset = CommandFilter.objects.all() - template_name = "nautobot_chatops_nso/commandfilter.html" + queryset = NSOCommandFilter.objects.all() + template_name = "nautobot_chatops_nso/nsocommandfilter.html" -class CommandFiltersCreateView(PermissionRequiredMixin, ObjectEditView): +class NSOCommandFiltersCreateView(PermissionRequiredMixin, ObjectEditView): """View for creating a new command filter.""" - permission_required = "nautobot_chatops.add_commandfilter" - model = CommandFilter - queryset = CommandFilter.objects.all() - model_form = CommandFilterForm + permission_required = "nautobot_chatops.add_nsocommandfilter" + model = NSOCommandFilter + queryset = NSOCommandFilter.objects.all() + model_form = NSOCommandFilterForm -class CommandFiltersUpdateView(CommandFiltersCreateView): +class NSOCommandFiltersUpdateView(NSOCommandFiltersCreateView): """View for editing an existing command filter.""" - permission_required = "nautobot_chatops.change_commandfilter" + permission_required = "nautobot_chatops.change_nsocommandfilter" -class CommandFiltersDeleteView(PermissionRequiredMixin, ObjectDeleteView): +class NSOCommandFiltersDeleteView(PermissionRequiredMixin, ObjectDeleteView): """View for deleting a single command filter record.""" - queryset = CommandFilter.objects.all() - permission_required = "nautobot_chatops.delete_commandfilter" - default_return_url = "plugins:nautobot_chatops:commandfilter_list" + queryset = NSOCommandFilter.objects.all() + permission_required = "nautobot_chatops.delete_nsocommandfilter" + default_return_url = "plugins:nautobot_chatops:nsocommandfilter_list" diff --git a/nautobot_chatops/integrations/nso/worker.py b/nautobot_chatops/integrations/nso/worker.py index 4f2d8af7..dc4d4065 100644 --- a/nautobot_chatops/integrations/nso/worker.py +++ b/nautobot_chatops/integrations/nso/worker.py @@ -8,7 +8,7 @@ from nautobot_chatops.choices import CommandStatusChoices from nautobot_chatops.workers import handle_subcommands, subcommand_of from nautobot_chatops.integrations.nso.nso import NSOClient, REQUEST_TIMEOUT_SEC, SLASH_COMMAND -from nautobot_chatops.integrations.nso.models import CommandFilter +from nautobot_chatops.integrations.nso.models import NSOCommandFilter def nso_logo(dispatcher): @@ -134,7 +134,7 @@ def _allowed_command(device: Device, command: str): raise ValueError( f"{device.name} NSO Command Filter can not be determined! Be sure to assign a role and platform to the device." ) - filters = CommandFilter.objects.filter(device_role=device.device_role, platform=device.platform) + filters = NSOCommandFilter.objects.filter(device_role=device.device_role, platform=device.platform) if not filters: raise ValueError( f"No filters defined for {device.device_role.slug}:{device.platform.slug}!\nGo to Nautobot->NSO->Command Filters to define one." diff --git a/nautobot_chatops/migrations/0008_auto_20231228_2231.py b/nautobot_chatops/migrations/0008_nso_integration.py similarity index 93% rename from nautobot_chatops/migrations/0008_auto_20231228_2231.py rename to nautobot_chatops/migrations/0008_nso_integration.py index 77d144b0..c6e049c2 100644 --- a/nautobot_chatops/migrations/0008_auto_20231228_2231.py +++ b/nautobot_chatops/migrations/0008_nso_integration.py @@ -1,4 +1,4 @@ -# Generated by Django 3.2.21 on 2023-12-28 22:31 +# Generated by Django 3.2.21 on 2024-03-04 21:58 import django.core.serializers.json from django.db import migrations, models @@ -17,7 +17,7 @@ class Migration(migrations.Migration): operations = [ migrations.CreateModel( - name="CommandFilter", + name="NSOCommandFilter", fields=[ ( "id", @@ -46,7 +46,7 @@ class Migration(migrations.Migration): ), ), migrations.AddConstraint( - model_name="commandfilter", + model_name="nsocommandfilter", constraint=models.UniqueConstraint(fields=("command", "role", "platform"), name="unique command filter"), ), ] diff --git a/nautobot_chatops/models.py b/nautobot_chatops/models.py index d8d44181..8561fcdc 100644 --- a/nautobot_chatops/models.py +++ b/nautobot_chatops/models.py @@ -13,7 +13,7 @@ from .integrations.grafana.models import Panel as GrafanaPanel from .integrations.grafana.models import PanelVariable as GrafanaPanelVariable -from .integrations.nso.models import CommandFilter as NSOCommandFilter +from .integrations.nso.models import NSOCommandFilter from .constants import ( COMMAND_LOG_USER_NAME_HELP_TEXT, diff --git a/nautobot_chatops/templates/nautobot_chatops_nso/commandfilter.html b/nautobot_chatops/templates/nautobot_chatops_nso/nsocommandfilter.html similarity index 100% rename from nautobot_chatops/templates/nautobot_chatops_nso/commandfilter.html rename to nautobot_chatops/templates/nautobot_chatops_nso/nsocommandfilter.html From 0fbb2911e8055342754a66b34b3b6006f6207d51 Mon Sep 17 00:00:00 2001 From: Sergey Romanyuk Date: Tue, 5 Mar 2024 12:22:42 -0500 Subject: [PATCH 75/93] NSO integration - Add newsfragment --- changes/288.added | 1 + 1 file changed, 1 insertion(+) create mode 100644 changes/288.added diff --git a/changes/288.added b/changes/288.added new file mode 100644 index 00000000..80ad085b --- /dev/null +++ b/changes/288.added @@ -0,0 +1 @@ +Added Cisco NSO integration From 4eca999da4328746582c261219636b7da6c5bb38 Mon Sep 17 00:00:00 2001 From: bakebot Date: Wed, 6 Mar 2024 13:14:07 +0000 Subject: [PATCH 76/93] Cookie updated by NetworkToCode Cookie Drift Manager Tool Template: ``` { "template": "https://github.com/nautobot/cookiecutter-nautobot-app.git", "dir": "nautobot-app", "ref": "refs/tags/nautobot-app-v2.2.0", "path": null } ``` Cookie: ``` { "remote": "https://github.com/nautobot/nautobot-app-chatops.git", "path": "/tmp/tmptn61c5i5/nautobot-app-chatops", "repository_path": "/tmp/tmptn61c5i5/nautobot-app-chatops", "dir": "", "branch_prefix": "drift-manager", "context": { "codeowner_github_usernames": "@glennmatthews @jvanderaa @smk4664 @whitej6", "full_name": "Network to Code, LLC", "email": "opensource@networktocode.com", "github_org": "nautobot", "app_name": "nautobot_chatops", "verbose_name": "Nautobot ChatOps App", "app_slug": "nautobot-chatops", "project_slug": "nautobot-app-chatops", "repo_url": "https://github.com/nautobot/nautobot-app-chatops/", "base_url": "chatops", "min_nautobot_version": "2.0.0", "max_nautobot_version": "2.9999", "camel_name": "NautobotChatOpsApp", "project_short_description": "Nautobot ChatOps App", "model_class_name": "None", "open_source_license": "Apache-2.0", "docs_base_url": "https://docs.nautobot.com", "docs_app_url": "https://docs.nautobot.com/projects/chatops/en/latest", "_template": "https://github.com/nautobot/cookiecutter-nautobot-app.git", "_output_dir": "/tmp/tmptn61c5i5", "_repo_dir": "/github/home/.cookiecutters/cookiecutter-nautobot-app/nautobot-app", "_checkout": "refs/tags/nautobot-app-v2.2.0" }, "base_branch": "develop", "remote_name": "origin", "pull_request_strategy": "PullRequestStrategy.CREATE", "post_actions": [ "PostAction.BLACK" ], "baked_commit_ref": "4b6c888ec08af5233332d01d66b9f71c2f9368a8", "draft": true } ``` CLI Arguments: ``` { "cookie_dir": "", "input": false, "json_filename": "", "output_dir": "", "push": true, "template": "", "template_dir": "", "template_ref": "refs/tags/nautobot-app-v2.2.0", "pull_request": null, "post_action": [], "disable_post_actions": false, "draft": null } ``` --- .cookiecutter.json | 4 +- .../pull_request_template.md | 1 - .github/workflows/ci.yml | 72 ++++----------- README.md | 4 +- development/Dockerfile | 2 +- development/app_config_schema.py | 64 +++++++++++++ development/nautobot_config.py | 4 +- development/towncrier_template.j2 | 2 +- docs/admin/install.md | 10 ++- docs/dev/contributing.md | 37 ++++---- docs/dev/dev_environment.md | 20 ++++- docs/user/app_overview.md | 2 +- mkdocs.yml | 6 +- nautobot_chatops/app-config-schema.json | 1 + pyproject.toml | 6 +- tasks.py | 89 +++++++++---------- 16 files changed, 185 insertions(+), 139 deletions(-) create mode 100644 development/app_config_schema.py create mode 100644 nautobot_chatops/app-config-schema.json diff --git a/.cookiecutter.json b/.cookiecutter.json index 6e537e17..f8d8c592 100644 --- a/.cookiecutter.json +++ b/.cookiecutter.json @@ -21,7 +21,7 @@ "_drift_manager": { "template": "https://github.com/nautobot/cookiecutter-nautobot-app.git", "template_dir": "nautobot-app", - "template_ref": "refs/tags/nautobot-app-v2.1.0", + "template_ref": "refs/tags/nautobot-app-v2.2.0", "cookie_dir": "", "branch_prefix": "drift-manager", "pull_request_strategy": "create", @@ -29,7 +29,7 @@ "black" ], "draft": true, - "baked_commit_ref": "4b6c888ec08af5233332d01d66b9f71c2f9368a8" + "baked_commit_ref": "b221d6a21e9b9a07df4b85782af19053e5c6c624" } } } diff --git a/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md b/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md index 31b4e282..cdba2d2a 100644 --- a/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md +++ b/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md @@ -31,5 +31,4 @@ - [ ] Attached Screenshots, Payload Example - [ ] Unit, Integration Tests - [ ] Documentation Updates (when adding/changing features) -- [ ] Example App Updates (when adding/changing features) - [ ] Outline Remaining Work, Constraints from Design diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 66358568..17bd2cfa 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -24,7 +24,7 @@ jobs: - name: "Check out repository code" uses: "actions/checkout@v4" - name: "Setup environment" - uses: "networktocode/gh-action-setup-poetry-environment@v4" + uses: "networktocode/gh-action-setup-poetry-environment@v6" - name: "Linting: black" run: "poetry run invoke black" bandit: @@ -35,7 +35,7 @@ jobs: - name: "Check out repository code" uses: "actions/checkout@v4" - name: "Setup environment" - uses: "networktocode/gh-action-setup-poetry-environment@v4" + uses: "networktocode/gh-action-setup-poetry-environment@v6" - name: "Linting: bandit" run: "poetry run invoke bandit" ruff: @@ -46,7 +46,7 @@ jobs: - name: "Check out repository code" uses: "actions/checkout@v4" - name: "Setup environment" - uses: "networktocode/gh-action-setup-poetry-environment@v4" + uses: "networktocode/gh-action-setup-poetry-environment@v6" - name: "Linting: ruff" run: "poetry run invoke ruff" check-docs-build: @@ -57,7 +57,7 @@ jobs: - name: "Check out repository code" uses: "actions/checkout@v4" - name: "Setup environment" - uses: "networktocode/gh-action-setup-poetry-environment@v4" + uses: "networktocode/gh-action-setup-poetry-environment@v6" - name: "Check Docs Build" run: "poetry run invoke build-and-check-docs" flake8: @@ -68,7 +68,7 @@ jobs: - name: "Check out repository code" uses: "actions/checkout@v4" - name: "Setup environment" - uses: "networktocode/gh-action-setup-poetry-environment@v4" + uses: "networktocode/gh-action-setup-poetry-environment@v6" - name: "Linting: flake8" run: "poetry run invoke flake8" poetry: @@ -79,7 +79,7 @@ jobs: - name: "Check out repository code" uses: "actions/checkout@v4" - name: "Setup environment" - uses: "networktocode/gh-action-setup-poetry-environment@v4" + uses: "networktocode/gh-action-setup-poetry-environment@v6" - name: "Checking: poetry lock file" run: "poetry run invoke lock --check" yamllint: @@ -90,10 +90,10 @@ jobs: - name: "Check out repository code" uses: "actions/checkout@v4" - name: "Setup environment" - uses: "networktocode/gh-action-setup-poetry-environment@v4" + uses: "networktocode/gh-action-setup-poetry-environment@v6" - name: "Linting: yamllint" run: "poetry run invoke yamllint" - pylint: + check-in-docker: needs: - "bandit" - "ruff" @@ -114,7 +114,7 @@ jobs: - name: "Check out repository code" uses: "actions/checkout@v4" - name: "Setup environment" - uses: "networktocode/gh-action-setup-poetry-environment@v4" + uses: "networktocode/gh-action-setup-poetry-environment@v6" - name: "Set up Docker Buildx" id: "buildx" uses: "docker/setup-buildx-action@v3" @@ -136,53 +136,13 @@ jobs: run: "cp development/creds.example.env development/creds.env" - name: "Linting: pylint" run: "poetry run invoke pylint" - check-migrations: - needs: - - "bandit" - - "ruff" - - "flake8" - - "poetry" - - "yamllint" - - "black" - runs-on: "ubuntu-22.04" - strategy: - fail-fast: true - matrix: - python-version: ["3.11"] - nautobot-version: ["2.0.0"] - env: - INVOKE_NAUTOBOT_CHATOPS_PYTHON_VER: "${{ matrix.python-version }}" - INVOKE_NAUTOBOT_CHATOPS_NAUTOBOT_VER: "${{ matrix.nautobot-version }}" - steps: - - name: "Check out repository code" - uses: "actions/checkout@v4" - - name: "Setup environment" - uses: "networktocode/gh-action-setup-poetry-environment@v4" - - name: "Set up Docker Buildx" - id: "buildx" - uses: "docker/setup-buildx-action@v3" - - name: "Build" - uses: "docker/build-push-action@v5" - with: - builder: "${{ steps.buildx.outputs.name }}" - context: "./" - push: false - load: true - tags: "${{ env.APP_NAME }}/nautobot:${{ matrix.nautobot-version }}-py${{ matrix.python-version }}" - file: "./development/Dockerfile" - cache-from: "type=gha,scope=${{ matrix.nautobot-version }}-py${{ matrix.python-version }}" - cache-to: "type=gha,scope=${{ matrix.nautobot-version }}-py${{ matrix.python-version }}" - build-args: | - NAUTOBOT_VER=${{ matrix.nautobot-version }} - PYTHON_VER=${{ matrix.python-version }} - - name: "Copy credentials" - run: "cp development/creds.example.env development/creds.env" + - name: "Checking: App Config" + run: "poetry run invoke validate-app-config" - name: "Checking: migrations" run: "poetry run invoke check-migrations" unittest: needs: - - "pylint" - - "check-migrations" + - "check-in-docker" strategy: fail-fast: true matrix: @@ -204,7 +164,7 @@ jobs: - name: "Check out repository code" uses: "actions/checkout@v4" - name: "Setup environment" - uses: "networktocode/gh-action-setup-poetry-environment@v4" + uses: "networktocode/gh-action-setup-poetry-environment@v6" - name: "Set up Docker Buildx" id: "buildx" uses: "docker/setup-buildx-action@v3" @@ -240,7 +200,7 @@ jobs: with: fetch-depth: "0" - name: "Setup environment" - uses: "networktocode/gh-action-setup-poetry-environment@v4" + uses: "networktocode/gh-action-setup-poetry-environment@v6" - name: "Check for changelog entry" run: | git fetch --no-tags origin +refs/heads/${{ github.base_ref }}:refs/remotes/origin/${{ github.base_ref }} @@ -257,7 +217,7 @@ jobs: - name: "Check out repository code" uses: "actions/checkout@v4" - name: "Set up Python" - uses: "actions/setup-python@v4" + uses: "actions/setup-python@v5" with: python-version: "3.11" - name: "Install Python Packages" @@ -292,7 +252,7 @@ jobs: - name: "Check out repository code" uses: "actions/checkout@v4" - name: "Set up Python" - uses: "actions/setup-python@v4" + uses: "actions/setup-python@v5" with: python-version: "3.11" - name: "Install Python Packages" diff --git a/README.md b/README.md index 5af700d6..dff54f22 100644 --- a/README.md +++ b/README.md @@ -3,8 +3,8 @@


- - + +
diff --git a/development/Dockerfile b/development/Dockerfile index e3c3bec8..69d8a0f9 100644 --- a/development/Dockerfile +++ b/development/Dockerfile @@ -28,7 +28,7 @@ ENV INVOKE_NAUTOBOT_CHATOPS_LOCAL=true # Since this is only used for development and we don't ship this container, pinning Poetry back is not expressly necessary # We also don't need virtual environments in container RUN which poetry || curl -sSL https://install.python-poetry.org | python3 - && \ - poetry config virtualenvs.create false + poetry config virtualenvs.create false # !!! USE CAUTION WHEN MODIFYING LINES ABOVE # ------------------------------------------------------------------------------------- diff --git a/development/app_config_schema.py b/development/app_config_schema.py new file mode 100644 index 00000000..47009954 --- /dev/null +++ b/development/app_config_schema.py @@ -0,0 +1,64 @@ +"""App Config Schema Generator and Validator.""" +import json +from importlib import import_module +from os import getenv +from pathlib import Path +from urllib.parse import urlparse + +import jsonschema +import toml +from django.conf import settings +from to_json_schema.to_json_schema import SchemaBuilder + + +def _enrich_object_schema(schema, defaults, required): + schema["additionalProperties"] = False + for key, value in schema["properties"].items(): + if required and key in required: + value["required"] = True + default_value = defaults and defaults.get(key, None) + if value["type"] == "object" and "properties" in value: + _enrich_object_schema(value, default_value, None) + elif default_value is not None: + value["default"] = default_value + + +def _main(): + pyproject = toml.loads(Path("pyproject.toml").read_text()) + url = urlparse(pyproject["tool"]["poetry"]["repository"]) + _, owner, repository = url.path.split("/") + package_name = pyproject["tool"]["poetry"]["packages"][0]["include"] + app_config = settings.PLUGINS_CONFIG[package_name] # type: ignore + schema_path = Path(package_name) / "app-config-schema.json" + command = getenv("APP_CONFIG_SCHEMA_COMMAND", "") + if command == "generate": + schema = { + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": f"https://raw.githubusercontent.com/{owner}/{repository}/develop/{package_name}/app-config-schema.json", + "$comment": "TBD: Update $id, replace `develop` with the future release tag", + **SchemaBuilder().to_json_schema(app_config), # type: ignore + } + app_config = import_module(package_name).config + _enrich_object_schema(schema, app_config.default_settings, app_config.required_settings) + schema_path.write_text(json.dumps(schema, indent=4) + "\n") + print(f"\n==================\nGenerated schema:\n\n{schema_path}\n") + print( + "WARNING: Review and edit the generated file before committing.\n" + "\n" + "Its content is inferred from:\n" + "\n" + "- The current configuration in `PLUGINS_CONFIG`\n" + "- `NautobotAppConfig.default_settings`\n" + "- `NautobotAppConfig.required_settings`" + ) + elif command == "validate": + schema = json.loads(schema_path.read_text()) + jsonschema.validate(app_config, schema) + print( + f"\n==================\nValidated configuration using the schema:\n{schema_path}\nConfiguration is valid." + ) + else: + raise RuntimeError(f"Unknown command: {command}") + + +_main() diff --git a/development/nautobot_config.py b/development/nautobot_config.py index 52a474f4..06a7fb25 100644 --- a/development/nautobot_config.py +++ b/development/nautobot_config.py @@ -92,11 +92,11 @@ "disable_existing_loggers": False, "formatters": { "normal": { - "format": "%(asctime)s.%(msecs)03d %(levelname)-7s %(name)s :\n %(message)s", + "format": "%(asctime)s.%(msecs)03d %(levelname)-7s %(name)s : %(message)s", "datefmt": "%H:%M:%S", }, "verbose": { - "format": "%(asctime)s.%(msecs)03d %(levelname)-7s %(name)-20s %(filename)-15s %(funcName)30s() :\n %(message)s", + "format": "%(asctime)s.%(msecs)03d %(levelname)-7s %(name)-20s %(filename)-15s %(funcName)30s() : %(message)s", "datefmt": "%H:%M:%S", }, }, diff --git a/development/towncrier_template.j2 b/development/towncrier_template.j2 index 7010b057..b0f6e12f 100644 --- a/development/towncrier_template.j2 +++ b/development/towncrier_template.j2 @@ -1,6 +1,6 @@ {% if render_title %} -## [v{{ versiondata.version }} ({{ versiondata.date }})](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v{{ versiondata.version}}) +## [v{{ versiondata.version }} ({{ versiondata.date }})]({{ cookiecutter.repo_url }}/releases/tag/v{{ versiondata.version}}) {% endif %} {% for section, _ in sections.items() %} diff --git a/docs/admin/install.md b/docs/admin/install.md index a432d036..7039b7e6 100644 --- a/docs/admin/install.md +++ b/docs/admin/install.md @@ -71,7 +71,15 @@ Set up your chosen chat platform: !!! warning Follow the [Nautobot App Installation Instructions](https://nautobot.readthedocs.io/en/stable/plugins/#installing-plugins) for complete and most recent guidelines. -The App is a Python package available on PyPI, installable with `pip`: +!!! warning "Developer Note - Remove Me!" + What external systems (if any) it needs access to in order to work. + +## Install Guide + +!!! note + Apps can be installed from the [Python Package Index](https://pypi.org/) or locally. See the [Nautobot documentation](https://docs.nautobot.com/projects/core/en/stable/user-guide/administration/installation/app-install/) for more details. The pip package name for this app is [`nautobot-chatops`](https://pypi.org/project/nautobot-chatops/). + +The app is available as a Python package via PyPI and can be installed with `pip`: ```shell pip install nautobot-chatops diff --git a/docs/dev/contributing.md b/docs/dev/contributing.md index 1d03330e..30fa558d 100644 --- a/docs/dev/contributing.md +++ b/docs/dev/contributing.md @@ -181,33 +181,30 @@ these checks): The branching policy includes the following tenets: -- The `develop` branch is the primary branch to develop off of. +- The `develop` branch is the branch of the next major and minor paired version planned. - PRs intended to add new features should be sourced from the `develop` branch. -- PRs intended to address bug fixes and security patches should be sourced from the `develop` branch. -- PRs intended to add new features that break backward compatibility should be discussed before a PR is created. +- PRs intended to fix issues in the Nautobot LTM compatible release should be sourced from the latest `ltm-` branch instead of `develop`. -Nautobot ChatOps app will observe semantic versioning, as of 1.0. This may result in a quick turn around in minor versions to keep pace with an ever-growing feature set. +Nautobot ChatOps App will observe semantic versioning, as of 1.0. This may result in a quick turnaround in minor versions to keep pace with an ever growing feature set. ## Release Policy -Nautobot ChatOps currently has no intended scheduled release schedule, and will release new features in minor versions. +Nautobot ChatOps App has currently no intended scheduled release schedule, and will release new features in minor versions. -When a new release of any kind (e.g. from `develop` to `main`, or a release of a `stable-.`) is created the following should happen. +When a new release, from `develop` to `main`, is created the following should happen. -- A release PR is created: - - Add and/or update to the changelog in `docs/admin/release_notes/version_..md` file to reflect the changes. - - Update the mkdocs.yml file to include updates when adding a new release_notes version file. - - Change the version from `..-beta` to `..` in `pyproject.toml`. - - Set the PR to the proper branch, e.g. either `main` or `stable-.`. +- A release PR is created from `develop` with: + - Update the release notes in `docs/admin/release_notes/version_..md` file to reflect the changes. + - Change the version from `..-beta` to `..` in `pyproject.toml`. + - Set the PR to the `main` branch. - Ensure the tests for the PR pass. - Merge the PR. - Create a new tag: - - The tag should be in the form of `v..`. - - The title should be in the form of `v..`. - - The description should be the changes that were added to the `version_..md` document. -- If merged into `main`, then push from `main` to `develop`, in order to retain the merge commit created when the PR was merged. -- If there is a new `.`, create a `stable-.` for the **previous** version, so that security updates to old versions may be applied more easily. -- A post release PR is created: - - Change the version from `..` to `..-beta` in `pyproject.toml`. - - Set the PR to the proper branch, e.g. either `develop` or `stable-.`. - - Once tests pass, merge. + - The tag should be in the form of `v..`. + - The title should be in the form of `v..`. + - The description should be the changes that were added to the `version_..md` document. +- If merged into `main`, then push from `main` to `develop`, in order to retain the merge commit created when the PR was merged +- A post release PR is created with: + - Change the version from `..` to `..-beta` in both `pyproject.toml` and `nautobot.__init__.__version__`. + - Set the PR to the proper branch, `develop`. + - Once tests pass, merge. diff --git a/docs/dev/dev_environment.md b/docs/dev/dev_environment.md index 9a9a458e..621c4ea2 100644 --- a/docs/dev/dev_environment.md +++ b/docs/dev/dev_environment.md @@ -82,7 +82,7 @@ nautobot-server migrate !!! note If you want to develop on the latest develop branch of Nautobot, run the following command: `poetry add --optional git+https://github.com/nautobot/nautobot@develop`. After the `@` symbol must match either a branch or a tag. -You can now run `nautobot-server` commands as you would from the [Nautobot documentation](https://nautobot.readthedocs.io/en/latest/) for example to start the development server: +You can now run `nautobot-server` commands as you would from the [Nautobot documentation](https://docs.nautobot.com/projects/core/en/stable/user-guide/administration/tools/nautobot-server/) for example to start the development server: ```shell nautobot-server runserver 0.0.0.0:8080 --insecure @@ -478,3 +478,21 @@ To run an individual test, you can run any or all of the following: ➜ invoke ruff ➜ invoke pylint ``` + +### App Configuration Schema + +In the package source, there is the `nautobot_chatops/app-config-schema.json` file, conforming to the [JSON Schema](https://json-schema.org/) format. This file is used to validate the configuration of the app in CI pipelines. + +If you make changes to `PLUGINS_CONFIG` or the configuration schema, you can run the following command to validate the schema: + +```bash +invoke validate-app-config +``` + +To generate the `app-config-schema.json` file based on the current `PLUGINS_CONFIG` configuration, run the following command: + +```bash +invoke generate-app-config-schema +``` + +This command can only guess the schema, so it's up to the developer to manually update the schema as needed. diff --git a/docs/user/app_overview.md b/docs/user/app_overview.md index 0e8a188f..e27cfd55 100644 --- a/docs/user/app_overview.md +++ b/docs/user/app_overview.md @@ -1,6 +1,6 @@ # App Overview -This document provides an overview of the App including critical information and import considerations when applying it to your Nautobot environment. +This document provides an overview of the App including critical information and important considerations when applying it to your Nautobot environment. !!! note Throughout this documentation, the terms "app" and "plugin" will be used interchangeably. diff --git a/mkdocs.yml b/mkdocs.yml index 804d4f31..73677dc0 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -81,7 +81,11 @@ markdown_extensions: anchor_linenums: true - "pymdownx.inlinehilite" - "pymdownx.snippets" - - "pymdownx.superfences" + - "pymdownx.superfences": + custom_fences: + - name: "mermaid" + class: "mermaid" + format: !!python/name:pymdownx.superfences.fence_code_format - "footnotes" plugins: - "search" diff --git a/nautobot_chatops/app-config-schema.json b/nautobot_chatops/app-config-schema.json new file mode 100644 index 00000000..27ba77dd --- /dev/null +++ b/nautobot_chatops/app-config-schema.json @@ -0,0 +1 @@ +true diff --git a/pyproject.toml b/pyproject.toml index 77230393..163d94ed 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -7,6 +7,7 @@ license = "Apache-2.0" readme = "README.md" homepage = "https://github.com/nautobot/nautobot-app-chatops/" repository = "https://github.com/nautobot/nautobot-app-chatops/" +documentation = "https://docs.nautobot.com/projects/chatops/en/latest/" keywords = ["nautobot", "nautobot-app", "nautobot-plugin"] classifiers = [ "Intended Audience :: Developers", @@ -92,7 +93,8 @@ requests-mock = "^1.9.3" ruff = "*" toml = "*" towncrier = "~23.6.0" -yamllint = "*" +to-json-schema = "*" +jsonschema = "*" [tool.poetry.extras] all = [ @@ -257,7 +259,7 @@ requires = ["poetry_core>=1.0.0"] build-backend = "poetry.core.masonry.api" [tool.towncrier] -package = "nautobot" +package = "nautobot_chatops" directory = "changes" filename = "docs/admin/release_notes/version_X.Y.md" template = "development/towncrier_template.j2" diff --git a/tasks.py b/tasks.py index 8891db05..7b1e4891 100644 --- a/tasks.py +++ b/tasks.py @@ -151,15 +151,27 @@ def docker_compose(context, command, **kwargs): def run_command(context, command, **kwargs): """Wrapper to run a command locally or inside the nautobot container.""" if is_truthy(context.nautobot_chatops.local): + if "command_env" in kwargs: + kwargs["env"] = { + **kwargs.get("env", {}), + **kwargs.pop("command_env"), + } context.run(command, **kwargs) else: # Check if nautobot is running, no need to start another nautobot container to run a command docker_compose_status = "ps --services --filter status=running" results = docker_compose(context, docker_compose_status, hide="out") if "nautobot" in results.stdout: - compose_command = f"exec nautobot {command}" + compose_command = "exec" else: - compose_command = f"run --rm --entrypoint '{command}' nautobot" + compose_command = "run --rm --entrypoint=''" + + if "command_env" in kwargs: + command_env = kwargs.pop("command_env") + for key, value in command_env.items(): + compose_command += f' --env="{key}={value}"' + + compose_command += f" -- nautobot {command}" pty = kwargs.pop("pty", True) @@ -329,15 +341,22 @@ def logs(context, service="", follow=False, tail=0): # ------------------------------------------------------------------------------ # ACTIONS # ------------------------------------------------------------------------------ -@task(help={"file": "Python file to execute"}) -def nbshell(context, file=""): +@task( + help={ + "file": "Python file to execute", + "env": "Environment variables to pass to the command", + "plain": "Flag to run nbshell in plain mode (default: False)", + }, +) +def nbshell(context, file="", env={}, plain=False): """Launch an interactive nbshell session.""" command = [ "nautobot-server", "nbshell", + "--plain" if plain else "", f"< '{file}'" if file else "", ] - run_command(context, " ".join(command), pty=not bool(file)) + run_command(context, " ".join(command), pty=not bool(file), command_env=env) @task @@ -672,7 +691,7 @@ def pylint(context): def autoformat(context): """Run code autoformatting.""" black(context, autoformat=True) - ruff(context, action="both", fix=True) + ruff(context, fix=True) @task( @@ -800,6 +819,8 @@ def tests(context, failfast=False, keepdb=False, lint_only=False): pylint(context) print("Running mkdocs...") build_and_check_docs(context) + print("Checking app config schema...") + validate_app_config(context) if not lint_only: print("Running unit tests...") unittest(context, failfast=failfast, keepdb=keepdb) @@ -807,52 +828,24 @@ def tests(context, failfast=False, keepdb=False, lint_only=False): print("All tests have passed!") -# ------------------------------------------------------------------------------ -# APP CUSTOM -# ------------------------------------------------------------------------------ @task -def bootstrap_mattermost(context): - """Bootstrap Nautobot data to be used with Mattermost.""" - nbshell(context, file="development/mattermost/nautobot_bootstrap.py") +def generate_app_config_schema(context): + """Generate the app config schema from the current app config. + WARNING: Review and edit the generated file before committing. -@task -def backup_mattermost(context): - """Export Mattermost data to the SQL file. Certain tables are ignored.""" - output = "./development/mattermost/dump.sql" - - command = [ - "exec", - "--", - "mattermost", - "bash", - "-c", - "'", - "pg_dump", - "--inserts", - "--user=$POSTGRES_USER", - "--dbname=$POSTGRES_DB", - "'", - f"> {output}", - ] + Its content is inferred from: - docker_compose(context, " ".join(command)) + - The current configuration in `PLUGINS_CONFIG` + - `NautobotAppConfig.default_settings` + - `NautobotAppConfig.required_settings` + """ + start(context, service="nautobot") + nbshell(context, file="development/app_config_schema.py", env={"APP_CONFIG_SCHEMA_COMMAND": "generate"}) @task -def connect_awx_container(context, container_name="tools_awx_1"): - """Connect nautobot and celery containers to awx container. - - Bridge network is defined in `development/ansible/docker-compose.yaml`. - - To run testing awx instance, follow [instructions] - (https://github.com/ansible/awx/tree/devel/tools/docker-compose#getting-started) - - Before running `make docker-compose` comment out `- 8080:8080` port mapping in file - `tools/docker-compose/ansible/roles/sources/templates/docker-compose.yml.j2` to avoid port conflict with nautobot. - - After setting up awx, cd back to chatops repo and run `invoke connect-awx-container`. - """ - bridge_network = f"{context.nautobot_chatops.project_name}_awx" - context.run(f"docker network connect --alias awx {bridge_network} {container_name}") - print(f"Container {container_name} connected to {bridge_network} network") +def validate_app_config(context): + """Validate the app config based on the app config schema.""" + start(context, service="nautobot") + nbshell(context, plain=True, file="development/app_config_schema.py", env={"APP_CONFIG_SCHEMA_COMMAND": "validate"}) From 6f21e6574f6dfdd005f931ef9314755c9d8eff0d Mon Sep 17 00:00:00 2001 From: Jan Snasel Date: Thu, 7 Mar 2024 10:37:16 +0000 Subject: [PATCH 77/93] fix: Added changelog fragment --- changes/8.housekeeping | 1 + 1 file changed, 1 insertion(+) create mode 100644 changes/8.housekeeping diff --git a/changes/8.housekeeping b/changes/8.housekeeping new file mode 100644 index 00000000..653c54ac --- /dev/null +++ b/changes/8.housekeeping @@ -0,0 +1 @@ +Re-baked from the latest template. From 97f593abd527b2f7fbaddfe4e6f6f346235e5d92 Mon Sep 17 00:00:00 2001 From: Jan Snasel Date: Thu, 7 Mar 2024 11:47:36 +0000 Subject: [PATCH 78/93] fix: Lock poetry --- poetry.lock | 36 ++++++++++++++++-------------------- 1 file changed, 16 insertions(+), 20 deletions(-) diff --git a/poetry.lock b/poetry.lock index 88348e98..27b63337 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 1.7.1 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.1 and should not be changed by hand. [[package]] name = "aiodns" @@ -4463,6 +4463,20 @@ files = [ {file = "texttable-1.6.7.tar.gz", hash = "sha256:290348fb67f7746931bcdfd55ac7584ecd4e5b0846ab164333f0794b121760f2"}, ] +[[package]] +name = "to-json-schema" +version = "1.0.1" +description = "" +optional = false +python-versions = "*" +files = [ + {file = "to_json_schema-1.0.1-py3-none-any.whl", hash = "sha256:5708663f1c81815e4ff01fce910ac32ee3964d0c6b3587fd4fff2e38d5c9aa7b"}, + {file = "to_json_schema-1.0.1.tar.gz", hash = "sha256:ec747bd5129256dd571105f66a7bc9a4546228cd5e5fbf5e06dc9776e255400e"}, +] + +[package.extras] +testing = ["pytest", "pytest-cov", "setuptools"] + [[package]] name = "toml" version = "0.10.2" @@ -4846,24 +4860,6 @@ files = [ {file = "wrapt-1.15.0.tar.gz", hash = "sha256:d06730c6aed78cee4126234cf2d071e01b44b915e725a6cb439a879ec9754a3a"}, ] -[[package]] -name = "yamllint" -version = "1.32.0" -description = "A linter for YAML files." -optional = false -python-versions = ">=3.7" -files = [ - {file = "yamllint-1.32.0-py3-none-any.whl", hash = "sha256:d97a66e48da820829d96077d76b8dfbe6c6140f106e558dae87e81ac4e6b30b7"}, - {file = "yamllint-1.32.0.tar.gz", hash = "sha256:d01dde008c65de5b235188ab3110bebc59d18e5c65fc8a58267cd211cd9df34a"}, -] - -[package.dependencies] -pathspec = ">=0.5.3" -pyyaml = "*" - -[package.extras] -dev = ["doc8", "flake8", "flake8-import-order", "rstcheck[sphinx]", "sphinx"] - [[package]] name = "yarl" version = "1.9.2" @@ -4980,4 +4976,4 @@ panorama = ["defusedxml", "ipaddr", "netmiko", "netutils", "pan-os-python"] [metadata] lock-version = "2.0" python-versions = ">=3.8,<3.12" -content-hash = "9edc678921261739f715585db93b205eb9d4e92b525c11a27d87dbe7625d1196" +content-hash = "352d2cdc13f37b487004c249b50f331e5dfeec1aa37bed959a1da26a08348a82" From e499edfe525138b3ce7bba53b9319d9899dd102c Mon Sep 17 00:00:00 2001 From: Jan Snasel Date: Thu, 7 Mar 2024 13:22:44 +0000 Subject: [PATCH 79/93] fix: Remove trailing slash from repo url --- .cookiecutter.json | 2 +- README.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.cookiecutter.json b/.cookiecutter.json index f8d8c592..c90e2c72 100644 --- a/.cookiecutter.json +++ b/.cookiecutter.json @@ -8,7 +8,7 @@ "verbose_name": "Nautobot ChatOps App", "app_slug": "nautobot-chatops", "project_slug": "nautobot-app-chatops", - "repo_url": "https://github.com/nautobot/nautobot-app-chatops/", + "repo_url": "https://github.com/nautobot/nautobot-app-chatops", "base_url": "chatops", "min_nautobot_version": "2.0.0", "max_nautobot_version": "2.9999", diff --git a/README.md b/README.md index dff54f22..84579bd6 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@


- + From 4c65b1cec9d80051454faa8928afb7291c451f9c Mon Sep 17 00:00:00 2001 From: Jan Snasel Date: Thu, 7 Mar 2024 13:24:01 +0000 Subject: [PATCH 80/93] fix: Leaked cookiecutter template string --- development/towncrier_template.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/development/towncrier_template.j2 b/development/towncrier_template.j2 index b0f6e12f..7010b057 100644 --- a/development/towncrier_template.j2 +++ b/development/towncrier_template.j2 @@ -1,6 +1,6 @@ {% if render_title %} -## [v{{ versiondata.version }} ({{ versiondata.date }})]({{ cookiecutter.repo_url }}/releases/tag/v{{ versiondata.version}}) +## [v{{ versiondata.version }} ({{ versiondata.date }})](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v{{ versiondata.version}}) {% endif %} {% for section, _ in sections.items() %} From 973000b1e3166fd77caad704efee6dbc59c8d9e5 Mon Sep 17 00:00:00 2001 From: Jan Snasel Date: Thu, 7 Mar 2024 13:35:11 +0000 Subject: [PATCH 81/93] chore: Manual fixes --- docs/admin/install.md | 3 --- tasks.py | 51 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 51 insertions(+), 3 deletions(-) diff --git a/docs/admin/install.md b/docs/admin/install.md index 7039b7e6..5dcf3ddb 100644 --- a/docs/admin/install.md +++ b/docs/admin/install.md @@ -71,9 +71,6 @@ Set up your chosen chat platform: !!! warning Follow the [Nautobot App Installation Instructions](https://nautobot.readthedocs.io/en/stable/plugins/#installing-plugins) for complete and most recent guidelines. -!!! warning "Developer Note - Remove Me!" - What external systems (if any) it needs access to in order to work. - ## Install Guide !!! note diff --git a/tasks.py b/tasks.py index 7b1e4891..62dad57a 100644 --- a/tasks.py +++ b/tasks.py @@ -849,3 +849,54 @@ def validate_app_config(context): """Validate the app config based on the app config schema.""" start(context, service="nautobot") nbshell(context, plain=True, file="development/app_config_schema.py", env={"APP_CONFIG_SCHEMA_COMMAND": "validate"}) + + +# ------------------------------------------------------------------------------ +# APP CUSTOM +# ------------------------------------------------------------------------------ +@task +def bootstrap_mattermost(context): + """Bootstrap Nautobot data to be used with Mattermost.""" + nbshell(context, file="development/mattermost/nautobot_bootstrap.py") + + +@task +def backup_mattermost(context): + """Export Mattermost data to the SQL file. Certain tables are ignored.""" + output = "./development/mattermost/dump.sql" + + command = [ + "exec", + "--", + "mattermost", + "bash", + "-c", + "'", + "pg_dump", + "--inserts", + "--user=$POSTGRES_USER", + "--dbname=$POSTGRES_DB", + "'", + f"> {output}", + ] + + docker_compose(context, " ".join(command)) + + +@task +def connect_awx_container(context, container_name="tools_awx_1"): + """Connect nautobot and celery containers to awx container. + + Bridge network is defined in `development/ansible/docker-compose.yaml`. + + To run testing awx instance, follow [instructions] + (https://github.com/ansible/awx/tree/devel/tools/docker-compose#getting-started) + + Before running `make docker-compose` comment out `- 8080:8080` port mapping in file + `tools/docker-compose/ansible/roles/sources/templates/docker-compose.yml.j2` to avoid port conflict with nautobot. + + After setting up awx, cd back to chatops repo and run `invoke connect-awx-container`. + """ + bridge_network = f"{context.nautobot_chatops.project_name}_awx" + context.run(f"docker network connect --alias awx {bridge_network} {container_name}") + print(f"Container {container_name} connected to {bridge_network} network") From 04b6a998374503c3da28ee9fd14835e1d3e14325 Mon Sep 17 00:00:00 2001 From: Sergey Romanyuk Date: Thu, 14 Mar 2024 17:04:02 -0400 Subject: [PATCH 82/93] NSO integration - Remove NSOCommandFilter model and run_commands command --- nautobot_chatops/integrations/nso/forms.py | 26 ---------- nautobot_chatops/integrations/nso/models.py | 21 -------- .../integrations/nso/navigation.py | 16 ------ nautobot_chatops/integrations/nso/tables.py | 49 ----------------- nautobot_chatops/integrations/nso/urls.py | 25 --------- nautobot_chatops/integrations/nso/views.py | 49 ----------------- nautobot_chatops/integrations/nso/worker.py | 40 +------------- .../migrations/0008_nso_integration.py | 52 ------------------- nautobot_chatops/models.py | 3 -- nautobot_chatops/navigation.py | 6 --- nautobot_chatops/urls.py | 14 ----- 11 files changed, 1 insertion(+), 300 deletions(-) delete mode 100644 nautobot_chatops/integrations/nso/forms.py delete mode 100644 nautobot_chatops/integrations/nso/models.py delete mode 100644 nautobot_chatops/integrations/nso/navigation.py delete mode 100644 nautobot_chatops/integrations/nso/tables.py delete mode 100644 nautobot_chatops/integrations/nso/urls.py delete mode 100644 nautobot_chatops/integrations/nso/views.py delete mode 100644 nautobot_chatops/migrations/0008_nso_integration.py diff --git a/nautobot_chatops/integrations/nso/forms.py b/nautobot_chatops/integrations/nso/forms.py deleted file mode 100644 index 4b762f8a..00000000 --- a/nautobot_chatops/integrations/nso/forms.py +++ /dev/null @@ -1,26 +0,0 @@ -"""Forms for Nautobot.""" - -from django.forms import ModelForm, CharField -from nautobot.core.forms import BootstrapMixin, DynamicModelChoiceField -from nautobot.dcim.models.devices import Platform -from nautobot.extras.models import Role -from nautobot_chatops.integrations.nso.models import NSOCommandFilter - - -class NSOCommandFilterForm(BootstrapMixin, ModelForm): - """Form for editing command filters.""" - - command = CharField( - max_length=200, help_text=" Supports Regular Expression." - ) - role = DynamicModelChoiceField(queryset=Role.objects.all()) - platform = DynamicModelChoiceField( - queryset=Platform.objects.all(), - ) - - class Meta: - """Metaclass attributes of the command filters form.""" - - model = NSOCommandFilter - - fields = ("command", "role", "platform") diff --git a/nautobot_chatops/integrations/nso/models.py b/nautobot_chatops/integrations/nso/models.py deleted file mode 100644 index 9596f047..00000000 --- a/nautobot_chatops/integrations/nso/models.py +++ /dev/null @@ -1,21 +0,0 @@ -"""Django models for recording user interactions with Nautobot.""" -from django.db import models -from nautobot.core.models.generics import PrimaryModel - - -class NSOCommandFilter(PrimaryModel): - """An allowed command tied to a given object.""" - - command = models.CharField(max_length=200, help_text="Standard regex supported.") - role = models.ForeignKey(to="extras.Role", on_delete=models.CASCADE) - platform = models.ForeignKey(to="dcim.Platform", on_delete=models.CASCADE) - - def __str__(self): - """String representation of an NSOCommandFilter.""" - return f'cmd: "{self.command}; on: {self.role}:{self.platform}' - - class Meta: - """Meta-attributes of an NSOCommandFilter.""" - - ordering = ["command", "role", "platform"] - constraints = [models.UniqueConstraint(fields=["command", "role", "platform"], name="unique command filter")] diff --git a/nautobot_chatops/integrations/nso/navigation.py b/nautobot_chatops/integrations/nso/navigation.py deleted file mode 100644 index 05ae16cc..00000000 --- a/nautobot_chatops/integrations/nso/navigation.py +++ /dev/null @@ -1,16 +0,0 @@ -"""Custom navigation options for the nautobot_chatops.integrations.nso plugin.""" -from nautobot.apps.ui import NavMenuAddButton, NavMenuItem - -items = [ - NavMenuItem( - link="plugins:nautobot_chatops:nsocommandfilter_list", - permissions=["nautobot_chatops.view_nsocommandfilter"], - name="NSO Command Filter", - buttons=( - NavMenuAddButton( - link="plugins:nautobot_chatops:nsocommandfilter_add", - permissions=["nautobot_chatops.add_nsocommandfilter"], - ), - ), - ), -] diff --git a/nautobot_chatops/integrations/nso/tables.py b/nautobot_chatops/integrations/nso/tables.py deleted file mode 100644 index 7b5363ef..00000000 --- a/nautobot_chatops/integrations/nso/tables.py +++ /dev/null @@ -1,49 +0,0 @@ -"""Django table classes for Nautobot.""" -import django_tables2 as tables -from django_tables2 import TemplateColumn -from nautobot.core.tables import BaseTable, ColoredLabelColumn -from nautobot_chatops.integrations.nso.models import NSOCommandFilter - - -def _action_template(view: str) -> str: - return f""" - - - - - - - - - - -""" - - -class NSOCommandFilterTable(BaseTable): - """Table for rendering filter commands.""" - - command = TemplateColumn( - template_code="{{ record.command }}", - attrs={"span": {"class": "text-secondary"}}, - verbose_name="Command Regex", - ) - - role = ColoredLabelColumn(linkify=True, verbose_name="Role") - - platform = tables.Column(linkify=True, verbose_name="Platform") - - actions = TemplateColumn( - template_code=_action_template("nsocommandfilter"), - attrs={"td": {"class": "text-right noprint"}}, - verbose_name="", - ) - - class Meta(BaseTable.Meta): # pylint: disable=too-few-public-methods - """Meta for class PanelViewTable.""" - - model = NSOCommandFilter - fields = ("command", "role", "platform") diff --git a/nautobot_chatops/integrations/nso/urls.py b/nautobot_chatops/integrations/nso/urls.py deleted file mode 100644 index e5b63070..00000000 --- a/nautobot_chatops/integrations/nso/urls.py +++ /dev/null @@ -1,25 +0,0 @@ -"""Django urlpatterns declaration for nautobot_chatops.integrations.nso plugin.""" -from django.urls import path -from nautobot.extras.views import ObjectChangeLogView -from nautobot_chatops.integrations.nso.models import NSOCommandFilter -from nautobot_chatops.integrations.nso.views import ( - NSOCommandFilterView, - NSOCommandFilterListView, - NSOCommandFiltersCreateView, - NSOCommandFiltersUpdateView, - NSOCommandFiltersDeleteView, -) - -urlpatterns = [ - path("command-filter/", NSOCommandFilterListView.as_view(), name="nsocommandfilter_list"), - path( - "command-filter//changelog/", - ObjectChangeLogView.as_view(), - name="nsocommandfilter_changelog", - kwargs={"model": NSOCommandFilter}, - ), - path("command-filter/add/", NSOCommandFiltersCreateView.as_view(), name="nsocommandfilter_add"), - path("command-filter//edit/", NSOCommandFiltersUpdateView.as_view(), name="nsocommandfilter_update"), - path("command-filter//delete/", NSOCommandFiltersDeleteView.as_view(), name="nsocommandfilter_delete"), - path("command-filter//", NSOCommandFilterView.as_view(), name="nsocommandfilter"), -] diff --git a/nautobot_chatops/integrations/nso/views.py b/nautobot_chatops/integrations/nso/views.py deleted file mode 100644 index 8f031f81..00000000 --- a/nautobot_chatops/integrations/nso/views.py +++ /dev/null @@ -1,49 +0,0 @@ -"""Views module for the nautobot_chatops.integrations.nso plugin. - -The views implemented in this module act as endpoints for various chat platforms -to send requests and notifications to. -""" - -from django.contrib.auth.mixins import PermissionRequiredMixin -from nautobot.core.views.generic import ObjectListView, ObjectEditView, ObjectDeleteView, ObjectView -from nautobot_chatops.integrations.nso.tables import NSOCommandFilterTable -from nautobot_chatops.integrations.nso.models import NSOCommandFilter -from nautobot_chatops.integrations.nso.forms import NSOCommandFilterForm - - -class NSOCommandFilterListView(ObjectListView): - """View for command filters list.""" - - queryset = NSOCommandFilter.objects.all() - table = NSOCommandFilterTable - action_buttons = ("add", "export") - - -class NSOCommandFilterView(ObjectView): - """View for command filter details.""" - - queryset = NSOCommandFilter.objects.all() - template_name = "nautobot_chatops_nso/nsocommandfilter.html" - - -class NSOCommandFiltersCreateView(PermissionRequiredMixin, ObjectEditView): - """View for creating a new command filter.""" - - permission_required = "nautobot_chatops.add_nsocommandfilter" - model = NSOCommandFilter - queryset = NSOCommandFilter.objects.all() - model_form = NSOCommandFilterForm - - -class NSOCommandFiltersUpdateView(NSOCommandFiltersCreateView): - """View for editing an existing command filter.""" - - permission_required = "nautobot_chatops.change_nsocommandfilter" - - -class NSOCommandFiltersDeleteView(PermissionRequiredMixin, ObjectDeleteView): - """View for deleting a single command filter record.""" - - queryset = NSOCommandFilter.objects.all() - permission_required = "nautobot_chatops.delete_nsocommandfilter" - default_return_url = "plugins:nautobot_chatops:nsocommandfilter_list" diff --git a/nautobot_chatops/integrations/nso/worker.py b/nautobot_chatops/integrations/nso/worker.py index dc4d4065..2da09bb2 100644 --- a/nautobot_chatops/integrations/nso/worker.py +++ b/nautobot_chatops/integrations/nso/worker.py @@ -1,6 +1,4 @@ """Worker functions implementing Nautobot "nso" command and subcommands.""" -import re - from django.core.exceptions import ObjectDoesNotExist from nautobot.dcim.models import Device from nautobot.core.settings_funcs import is_truthy @@ -8,7 +6,6 @@ from nautobot_chatops.choices import CommandStatusChoices from nautobot_chatops.workers import handle_subcommands, subcommand_of from nautobot_chatops.integrations.nso.nso import NSOClient, REQUEST_TIMEOUT_SEC, SLASH_COMMAND -from nautobot_chatops.integrations.nso.models import NSOCommandFilter def nso_logo(dispatcher): @@ -128,25 +125,6 @@ def check_sync(dispatcher, device_name=None, compare_config=None): return CommandStatusChoices.STATUS_SUCCEEDED -def _allowed_command(device: Device, command: str): - """Validation function to check if a command is allowed on a particular device.""" - if not device.device_role.slug or not device.platform.slug: - raise ValueError( - f"{device.name} NSO Command Filter can not be determined! Be sure to assign a role and platform to the device." - ) - filters = NSOCommandFilter.objects.filter(device_role=device.device_role, platform=device.platform) - if not filters: - raise ValueError( - f"No filters defined for {device.device_role.slug}:{device.platform.slug}!\nGo to Nautobot->NSO->Command Filters to define one." - ) - - for cmd_filter in filters: - if re.compile(cmd_filter.command).match(command): - return - - raise ValueError(f"Sorry, command '{command}' not allowed on {device.device_role.slug}:{device.platform.slug}.") - - def _run_command_helper(dispatcher, device_name, device_commands, sub_command): """Helper function for run-commands and run-command-set NSO commands.""" # Create a dialog prompt for any missing parameters in the command. @@ -219,16 +197,6 @@ def _run_command_helper(dispatcher, device_name, device_commands, sub_command): # Split and strip device_commands, exclude empty results stripped_device_commands = [cmd.strip() for cmd in device_commands.split(",") if cmd.strip() != ""] - valid_device_commands = [] - - for cmd in stripped_device_commands: - try: - _allowed_command(nautobot_device, cmd) - except ValueError as exc: - dispatcher.send_error(f"{exc}‼️") - return False - - valid_device_commands.append(cmd) # Send a Markdown-formatted text message. dispatcher.send_markdown( @@ -245,7 +213,7 @@ def _run_command_helper(dispatcher, device_name, device_commands, sub_command): # Response we're going to send to the chat client. This will get built as commands # are run through NSO. response = "" - for cmd in valid_device_commands: + for cmd in stripped_device_commands: # Pull data from NSO using the live_status operand. data = nso_client.live_status(device_name, cmd) response += f"\n! {'-' * 30}\n! Command '{cmd}' results:\n! {'-' * 30}\n{data}" @@ -272,12 +240,6 @@ def _run_command_helper(dispatcher, device_name, device_commands, sub_command): return True -@subcommand_of("nso") -def run_commands(dispatcher, device_name, device_commands): - """Run a device commands using Cisco NSO. Separate multiple commands with comma.""" - return _run_command_helper(dispatcher, device_name, device_commands, "run-commands") - - @subcommand_of("nso") def run_command_set(dispatcher, device_name, device_commands): """Select a predefined command set to run on a device using Cisco NSO.""" diff --git a/nautobot_chatops/migrations/0008_nso_integration.py b/nautobot_chatops/migrations/0008_nso_integration.py deleted file mode 100644 index c6e049c2..00000000 --- a/nautobot_chatops/migrations/0008_nso_integration.py +++ /dev/null @@ -1,52 +0,0 @@ -# Generated by Django 3.2.21 on 2024-03-04 21:58 - -import django.core.serializers.json -from django.db import migrations, models -import django.db.models.deletion -import nautobot.core.models.fields -import nautobot.extras.models.mixins -import uuid - - -class Migration(migrations.Migration): - dependencies = [ - ("dcim", "0049_remove_slugs_and_change_device_primary_ip_fields"), - ("extras", "0098_rename_data_jobresult_result"), - ("nautobot_chatops", "0007_account_link"), - ] - - operations = [ - migrations.CreateModel( - name="NSOCommandFilter", - 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), - ), - ("command", models.CharField(max_length=200)), - ("platform", models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to="dcim.platform")), - ("role", models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to="extras.role")), - ("tags", nautobot.core.models.fields.TagsField(through="extras.TaggedItem", to="extras.Tag")), - ], - options={ - "ordering": ["command", "role", "platform"], - }, - bases=( - models.Model, - nautobot.extras.models.mixins.DynamicGroupMixin, - nautobot.extras.models.mixins.NotesMixin, - ), - ), - migrations.AddConstraint( - model_name="nsocommandfilter", - constraint=models.UniqueConstraint(fields=("command", "role", "platform"), name="unique command filter"), - ), - ] diff --git a/nautobot_chatops/models.py b/nautobot_chatops/models.py index 8561fcdc..b6b557b9 100644 --- a/nautobot_chatops/models.py +++ b/nautobot_chatops/models.py @@ -13,8 +13,6 @@ from .integrations.grafana.models import Panel as GrafanaPanel from .integrations.grafana.models import PanelVariable as GrafanaPanelVariable -from .integrations.nso.models import NSOCommandFilter - from .constants import ( COMMAND_LOG_USER_NAME_HELP_TEXT, COMMAND_LOG_USER_ID_HELP_TEXT, @@ -185,5 +183,4 @@ class Meta: "GrafanaDashboard", "GrafanaPanel", "GrafanaPanelVariable", - "NSOCommandFilter", ) diff --git a/nautobot_chatops/navigation.py b/nautobot_chatops/navigation.py index 95faa4ab..3bd9ec7b 100644 --- a/nautobot_chatops/navigation.py +++ b/nautobot_chatops/navigation.py @@ -8,11 +8,6 @@ else: grafana_items = () -if get_app_settings_or_config("nautobot_chatops", "enable_nso"): - from .integrations.nso.navigation import items as nso_items -else: - nso_items = () - items = [ NavMenuItem( @@ -54,7 +49,6 @@ permissions=["nautobot_chatops.view_commandlog"], ), *grafana_items, - *nso_items, ] menu_items = ( diff --git a/nautobot_chatops/urls.py b/nautobot_chatops/urls.py index 3da62af0..8da8f0ac 100644 --- a/nautobot_chatops/urls.py +++ b/nautobot_chatops/urls.py @@ -36,19 +36,6 @@ logger = logging.getLogger(__name__) logger.warning("Grafana ChatOps integration is not available.", exc_info=True) -if get_app_settings_or_config("nautobot_chatops", "enable_nso"): - try: - from nautobot_chatops.integrations.nso.urls import urlpatterns as nso_urlpatterns - # pylint: disable-next=broad-except - except Exception: - nso_urlpatterns = [] - logger = logging.getLogger(__name__) - logger.warning("NSO ChatOps integration is not available.", exc_info=True) -else: - nso_urlpatterns = [] - logger = logging.getLogger(__name__) - logger.warning("NSO ChatOps integration is not enabled.", exc_info=True) - urlpatterns = [ path("", CommandLogListView.as_view(), name="commandlog_list"), path( @@ -113,5 +100,4 @@ kwargs={"model": ChatOpsAccountLink}, ), *grafana_urlpatterns, - *nso_urlpatterns, ] From bc924d7f588aac85d96800f84eee759b67f3c11b Mon Sep 17 00:00:00 2001 From: bakebot Date: Fri, 15 Mar 2024 12:19:43 +0000 Subject: [PATCH 83/93] Cookie updated by NetworkToCode Cookie Drift Manager Tool Template: ``` { "template": "https://github.com/nautobot/cookiecutter-nautobot-app.git", "dir": "nautobot-app", "ref": "refs/tags/nautobot-app-v2.2.1", "path": null } ``` Cookie: ``` { "remote": "https://github.com/nautobot/nautobot-app-chatops.git", "path": "/tmp/tmpq_ms8yry/nautobot-app-chatops", "repository_path": "/tmp/tmpq_ms8yry/nautobot-app-chatops", "dir": "", "branch_prefix": "drift-manager", "context": { "codeowner_github_usernames": "@glennmatthews @jvanderaa @smk4664 @whitej6", "full_name": "Network to Code, LLC", "email": "opensource@networktocode.com", "github_org": "nautobot", "app_name": "nautobot_chatops", "verbose_name": "Nautobot ChatOps App", "app_slug": "nautobot-chatops", "project_slug": "nautobot-app-chatops", "repo_url": "https://github.com/nautobot/nautobot-app-chatops", "base_url": "chatops", "min_nautobot_version": "2.0.0", "max_nautobot_version": "2.9999", "camel_name": "NautobotChatOpsApp", "project_short_description": "Nautobot ChatOps App", "model_class_name": "None", "open_source_license": "Apache-2.0", "docs_base_url": "https://docs.nautobot.com", "docs_app_url": "https://docs.nautobot.com/projects/chatops/en/latest", "_template": "https://github.com/nautobot/cookiecutter-nautobot-app.git", "_output_dir": "/tmp/tmpq_ms8yry", "_repo_dir": "/github/home/.cookiecutters/cookiecutter-nautobot-app/nautobot-app", "_checkout": "refs/tags/nautobot-app-v2.2.1" }, "base_branch": "develop", "remote_name": "origin", "pull_request_strategy": "PullRequestStrategy.CREATE", "post_actions": [ "PostAction.BLACK" ], "baked_commit_ref": "b221d6a21e9b9a07df4b85782af19053e5c6c624", "draft": true } ``` CLI Arguments: ``` { "cookie_dir": "", "input": false, "json_filename": "", "output_dir": "", "push": true, "template": "", "template_dir": "", "template_ref": "refs/tags/nautobot-app-v2.2.1", "pull_request": null, "post_action": [], "disable_post_actions": false, "draft": null } ``` --- .cookiecutter.json | 4 +-- README.md | 2 +- docs/admin/release_notes/version_1.0.md | 48 +++++++++++++++++++++++++ docs/dev/contributing.md | 20 +++++------ mkdocs.yml | 2 +- pyproject.toml | 6 ++-- 6 files changed, 65 insertions(+), 17 deletions(-) create mode 100644 docs/admin/release_notes/version_1.0.md diff --git a/.cookiecutter.json b/.cookiecutter.json index c90e2c72..d1e2df97 100644 --- a/.cookiecutter.json +++ b/.cookiecutter.json @@ -21,7 +21,7 @@ "_drift_manager": { "template": "https://github.com/nautobot/cookiecutter-nautobot-app.git", "template_dir": "nautobot-app", - "template_ref": "refs/tags/nautobot-app-v2.2.0", + "template_ref": "refs/tags/nautobot-app-v2.2.1", "cookie_dir": "", "branch_prefix": "drift-manager", "pull_request_strategy": "create", @@ -29,7 +29,7 @@ "black" ], "draft": true, - "baked_commit_ref": "b221d6a21e9b9a07df4b85782af19053e5c6c624" + "baked_commit_ref": "cfd9475f3ea601572d0f3b23d4bb6d9655bc2721" } } } diff --git a/README.md b/README.md index 84579bd6..3616c31e 100644 --- a/README.md +++ b/README.md @@ -42,7 +42,7 @@ Full web-based HTML documentation for this app can be found over on the [Nautobo ## Try it Out -Interested to see Nautobot ChatOps in action? It's currently setup on the [Demo Instance](https://demo.nautobot.com/) and integrated into [NTC Slack](https://slack.networktocode.com). You can sign up for that Slack workspace and join the `#nautobot-chat` channel to understand what this bot can do and try it for yourself. You can try these exact chat commands and many more: +You can find all the Markdown source for the App documentation under the [`docs`](https://github.com/nautobot/nautobot-app-chatops/tree/develop/docs) folder in this repository. For simple edits, a Markdown capable editor is sufficient: clone the repository and edit away. ### Command: `/nautobot` diff --git a/docs/admin/release_notes/version_1.0.md b/docs/admin/release_notes/version_1.0.md new file mode 100644 index 00000000..44064e5b --- /dev/null +++ b/docs/admin/release_notes/version_1.0.md @@ -0,0 +1,48 @@ +# 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 + +- Major features or milestones +- Achieved in this `x.y` release +- Changes to compatibility with Nautobot and/or other apps, libraries etc. + +## [v1.0.1] - 2021-09-08 + +### Added + +### Changed + +### Fixed + +- [#123](https://github.com/nautobot/nautobot-app-chatops/issues/123) Fixed Tag filtering not working in job launch form + +## [v1.0.0] - 2021-08-03 + +### Added + +### Changed + +### Fixed diff --git a/docs/dev/contributing.md b/docs/dev/contributing.md index 30fa558d..d0875111 100644 --- a/docs/dev/contributing.md +++ b/docs/dev/contributing.md @@ -185,7 +185,7 @@ The branching policy includes the following tenets: - PRs intended to add new features should be sourced from the `develop` branch. - PRs intended to fix issues in the Nautobot LTM compatible release should be sourced from the latest `ltm-` branch instead of `develop`. -Nautobot ChatOps App will observe semantic versioning, as of 1.0. This may result in a quick turnaround in minor versions to keep pace with an ever growing feature set. +Nautobot ChatOps App will observe semantic versioning, as of 1.0. This may result in a quick turnaround in minor versions to keep pace with an ever-growing feature set. ## Release Policy @@ -194,17 +194,17 @@ Nautobot ChatOps App has currently no intended scheduled release schedule, and w When a new release, from `develop` to `main`, is created the following should happen. - A release PR is created from `develop` with: - - Update the release notes in `docs/admin/release_notes/version_..md` file to reflect the changes. - - Change the version from `..-beta` to `..` in `pyproject.toml`. - - Set the PR to the `main` branch. + - Update the release notes in `docs/admin/release_notes/version_..md` file to reflect the changes. + - Change the version from `..-beta` to `..` in `pyproject.toml`. + - Set the PR to the `main` branch. - Ensure the tests for the PR pass. - Merge the PR. - Create a new tag: - - The tag should be in the form of `v..`. - - The title should be in the form of `v..`. - - The description should be the changes that were added to the `version_..md` document. + - The tag should be in the form of `v..`. + - The title should be in the form of `v..`. + - The description should be the changes that were added to the `version_..md` document. - If merged into `main`, then push from `main` to `develop`, in order to retain the merge commit created when the PR was merged - A post release PR is created with: - - Change the version from `..` to `..-beta` in both `pyproject.toml` and `nautobot.__init__.__version__`. - - Set the PR to the proper branch, `develop`. - - Once tests pass, merge. + - Change the version from `..` to `..-beta` in both `pyproject.toml` and `nautobot.__init__.__version__`. + - Set the PR to the proper branch, `develop`. + - Once tests pass, merge. diff --git a/mkdocs.yml b/mkdocs.yml index 73677dc0..4a406693 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -4,7 +4,7 @@ edit_uri: "edit/main/nautobot-app-chatops/docs" site_dir: "nautobot_chatops/static/nautobot_chatops/docs" site_name: "Nautobot ChatOps App Documentation" site_url: "https://docs.nautobot.com/projects/chatops/en/latest/" -repo_url: "https://github.com/nautobot/nautobot-app-chatops/" +repo_url: "https://github.com/nautobot/nautobot-app-chatops" copyright: "Copyright © The Authors" theme: name: "material" diff --git a/pyproject.toml b/pyproject.toml index 163d94ed..964908be 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -5,8 +5,8 @@ description = "A app providing chatbot capabilities for Nautobot" authors = ["Network to Code, LLC "] license = "Apache-2.0" readme = "README.md" -homepage = "https://github.com/nautobot/nautobot-app-chatops/" -repository = "https://github.com/nautobot/nautobot-app-chatops/" +homepage = "https://github.com/nautobot/nautobot-app-chatops" +repository = "https://github.com/nautobot/nautobot-app-chatops" documentation = "https://docs.nautobot.com/projects/chatops/en/latest/" keywords = ["nautobot", "nautobot-app", "nautobot-plugin"] classifiers = [ @@ -264,7 +264,7 @@ directory = "changes" filename = "docs/admin/release_notes/version_X.Y.md" template = "development/towncrier_template.j2" start_string = "" -issue_format = "[#{issue}](https://github.com/nautobot/nautobot-app-chatops//issues/{issue})" +issue_format = "[#{issue}](https://github.com/nautobot/nautobot-app-chatops/issues/{issue})" [[tool.towncrier.type]] directory = "security" From 32e0da702aaec92e95575d76708dbf418effbb84 Mon Sep 17 00:00:00 2001 From: Sergey Romanyuk Date: Fri, 15 Mar 2024 16:31:40 -0400 Subject: [PATCH 84/93] NSO integration - Update documentation --- docs/admin/integrations/nso.md | 15 ++++----------- docs/images/nso-05.png | Bin 67750 -> 59815 bytes docs/images/nso-06.png | Bin 208288 -> 194928 bytes docs/images/nso-07.png | Bin 122015 -> 242133 bytes docs/images/nso-08.png | Bin 83881 -> 109409 bytes docs/images/nso-09.png | Bin 226249 -> 202554 bytes docs/images/nso-10.png | Bin 69588 -> 203014 bytes docs/images/nso-11.png | Bin 180411 -> 0 bytes docs/images/nso-12.png | Bin 182140 -> 0 bytes docs/user/integrations/nso.md | 1 - 10 files changed, 4 insertions(+), 12 deletions(-) delete mode 100644 docs/images/nso-11.png delete mode 100644 docs/images/nso-12.png diff --git a/docs/admin/integrations/nso.md b/docs/admin/integrations/nso.md index f0c33787..10e7a0e2 100644 --- a/docs/admin/integrations/nso.md +++ b/docs/admin/integrations/nso.md @@ -46,18 +46,11 @@ PLUGINS_CONFIG = { } ``` -## Command Filters - -To use the remote command capabilities of NSO Plugin, a command filter needs to be defined. Command filter consist of command regex, device role, and device platform. - -![Add a new command filter](../../images/nso-07.png) -![Command Filters list](../../images/nso-08.png) - ## Computed Fields Optionally, a computed field might be created to display NSO status on a device details page. Please note, that it might delay the page load depending on NSO response time. -![Add a new computed field](../../images/nso-09.png) -![Computed fields list](../../images/nso-10.png) -![Device details 1](../../images/nso-11.png) -![Device details 2](../../images/nso-12.png) \ No newline at end of file +![Add a new computed field](../../images/nso-07.png) +![Computed fields list](../../images/nso-08.png) +![Device details 1](../../images/nso-09.png) +![Device details 2](../../images/nso-10.png) \ No newline at end of file diff --git a/docs/images/nso-05.png b/docs/images/nso-05.png index b1df3575e9a15edaba415228b8642906c185737c..cc9caac9156941a7e1cf790ca947b346f5d04d2b 100644 GIT binary patch literal 59815 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 literal 67750 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

s{Wzc#8kpj`F}=)E&Ni>%Z;ZU(h63 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 diff --git a/docs/images/nso-06.png b/docs/images/nso-06.png index 3223c94fe2d1f97a4196d74c40894adac9070e91..59e92b96716ad53ec76952f77aab75cf4d5a864d 100644 GIT binary patch literal 194928 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 literal 208288 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 K8p4cShdA3<+2>AdLqRY!s11ZS$1(IHcWy&Jg@Z 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Ð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 diff --git a/docs/images/nso-07.png b/docs/images/nso-07.png index b208713c6068cb07b69dc3732dee395b1f7c4e00..33ddc9b2b8ed04149c44588e92abdb338f8fdfa9 100644 GIT binary patch literal 242133 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 literal 122015 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 T-RRvj;OB|FsvJt@`J4X*+9QC} diff --git a/docs/images/nso-08.png b/docs/images/nso-08.png index 4617a203cf5bf7ea4c51b06fbf9b19da1f58def1..5fb55544dafc5d1c44a4808501e8861a068b2f31 100644 GIT binary patch literal 109409 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

+%E(uiE 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 literal 83881 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 diff --git a/docs/images/nso-09.png b/docs/images/nso-09.png index 0786d0f51d9f49faad09f32d12ea0b2faa4c0bf6..a4a1fe86eab7774207092d116408768ee7930e07 100644 GIT binary patch literal 202554 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͖H2-IRPEQ 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 z zvAZ{-uywU@df5y97}hM&|l$41Y7UmH_f~=gx8Bb?-v_R2dL^|`NQXk z{MJ8iZs~2iwBZ)@5u2Fk=zq<$8{AIfzn$!~IMMyluY|>+E3hafh7u1;Kx0)T?!Xyj zpsM(w%x{&iN@VrPti7Eu>y-r4uhU1L&tQ zBdO<$(N4mQR)znDWmWHww5^h>uG7IL1Ak0Y5Fy|8Sxf)Ir5Q$9L}^!ClhW(F`3p{( z@aBeEDy}!c;ans>_PJ-g8oMlN8nRoZeoshIo8GmT7C7Z6%U7x$aInQ~=F@GS zOm_yp3z&`0h!P)JceyfR#pYlpCMi;(!wf=t$wedYMRn^3qC#b@FTVFh)p*uO(7hg*=7^S zue&wO=ngP;3x2`cD3hw+4$>cYau0NBJ{VY&H2XzhoQh^@n2Cm``6v)eh3|tdLZAKO z#~_tRW4s~z5(Uj43K)G3PFAx*Lovb7H>MlS#MlW%Q05D&3`G>hrl+4e==^;k2#9&# zyFOse(B1yC=*~(r_#ZlWVw+^UK-*E6b`W>6^&9VD{}g21V@Ul;<3mh}kis0GLZfM) zKNO@FFqio(^OX89G1E7cc4{qOv8dv&Zhw{(E1&A~=*2O@k4`O%#6S{=ZiW$pE=TM( z>o~g&7#a+lTu={DSIHEc`GM^TXd5kOO)!~h6KvY?xc@=XDNecE021E=z&XbzKpNPn z_{TI#@@q^*tsy=^>G6r5x*8Ib%d`^S8SOtHNYlB^!##}|K4H`#nxERRQ>~1|v8M2_ zhyEb5CO>S|zNHTZ&L!3|2N__{JvsZMe%X`96{&ebb#C_5Bw_X&SLt?j6CTMYv&=Yp zgp2Eiatr(IXw;2std*RevaxQ{p3V5#={7QUeIH3e)S5~Z=MH-`Rm$f)QSOSV5UVvx zD|s#BH+o&6?hF8Qbdo--tSI0Hn5M4ug4t;ju@Thh=+Mcj8S!X3s4K2drda-JXyV>^8C>@-#9{vUC8Ai}T(K|2w|?kLRINg(x|k2~*;_A%k51M;??; zl7}3B?jX7E(4obM)_RFMs->#y+(-8R6ej-ho4Y=PwjF*usXap{UE|p=cr){L_E}X@ z2Ngc&&9jCTtDVFBBzo*5^PU-dAnxLH+?7XWl2z)^wmaw!NRo96=Rb*;P0&h^jB_ISLYR_I3G6nJC15jQJeRD97+_z=e!P;qJKa`RH z+R=)fl!59{-`lbn9GUg8Ky{c-Boc>~cX$6+6;!i${rZSm>Ja7Qtc&^kNrnCBOKYy7 z_m6)AwCcvjSfe444V~uWxxpk2qf{i-rdB)mCd$GPve){!2Y~%S60S~4Dk?&QE2ZsI zkL&8{%Jq1nT7s_TKOp`6?ozT_>9`>vr?!~WopB^iYQOKZ3 z4dNf$gt1wnG2cXTwLG$pp`+~);?dNo!`VY-VT_XiElImG`ulRqulriF9iUZ1DP=O% zQ3{VzYA_nOEjs$FVT)wWVe4yjxbB(K;M_&o?N$~CH)Z!55qlRG>o

j1bq$ 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

JoEt0#p|!1nQTDt(d0hGrd>&!W#p7kn(+l6 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

4j+?Va&yXs%Q`Of8W5*y7Fd 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 diff --git a/docs/images/nso-10.png b/docs/images/nso-10.png index 0c367d9671da00c1b1ca7028a13db6db0491ba0b..a30ba1180aeb2b48fd52990f67ae91c15858efa9 100644 GIT binary patch literal 203014 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

)Igq}&!Q-$Cbi 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 literal 69588 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�jrf$b3)a=`b*1AeS4*M+M*7p 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 W@xG6xeL=SSfDL}Z>^#{B6Y+0e>bo-l diff --git a/docs/images/nso-11.png b/docs/images/nso-11.png deleted file mode 100644 index 67b15b302a169d292634b7cb5702c90e201a9b45..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 180411 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 z�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 diff --git a/docs/user/integrations/nso.md b/docs/user/integrations/nso.md index 8f14c963..7280a960 100644 --- a/docs/user/integrations/nso.md +++ b/docs/user/integrations/nso.md @@ -9,7 +9,6 @@ Interact with Cisco NSO by utilizing the following sub-commands: | `ping` | `[device-name]` | Ping a device. | | `connect` | `[device-name]` | Check device connection with NSO. | | `check-sync` | `[device-name]` `[compare-config]` | Check sync between current device config and stored in NSO. | -| `run-commands` | `[device-name]` `[commands]` | Run commands on a device. | | `run-command-set` | `[device-name]` `[commands]` | Run predefined set of commands on a device. | !!! note From 7e2def7a7c61de102c1e73d1086b80cf379b1abf Mon Sep 17 00:00:00 2001 From: Sergey Romanyuk Date: Fri, 15 Mar 2024 16:34:31 -0400 Subject: [PATCH 85/93] NSO integration - Add NSO to mattermost dump.sql --- development/mattermost/dump.sql | 1 + development/mattermost/nautobot_bootstrap.py | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/development/mattermost/dump.sql b/development/mattermost/dump.sql index f353bb8d..26260c29 100644 --- a/development/mattermost/dump.sql +++ b/development/mattermost/dump.sql @@ -1612,6 +1612,7 @@ INSERT INTO public.commands VALUES ('urmj87oqbbynir8nzc33by1f4c', '3wxwh3m8mjrzx INSERT INTO public.commands VALUES ('mw51fho6ojd3fxqmrgfkt9xykw', 'ppm316za33ritm3xgpobcmmgre', 1698322479271, 1698322479271, 0, '5md7bsji6pbijpxitu8bwezaqy', 'rkpuunm3rp8fffhzkjxw63usyc', 'ipfabric', 'P', '', '', false, '', '', 'IP Fabric', 'IP Fabric Slash Command', 'http://nautobot:8080/api/plugins/chatops/mattermost/slash_command/', ''); INSERT INTO public.commands VALUES ('11cwjihduffn3ceybits6n5zty', '11ix54hycjr4dmxcgw4d77qc4w', 1698322532951, 1698322532951, 0, '5md7bsji6pbijpxitu8bwezaqy', 'rkpuunm3rp8fffhzkjxw63usyc', 'meraki', 'P', '', '', false, '', '', 'Cisco Meraki', 'Cisco Meraki Slash Command', 'http://nautobot:8080/api/plugins/chatops/mattermost/slash_command/', ''); INSERT INTO public.commands VALUES ('p43ko8rim3r89d78yexbg3fiww', 'fh1kbk45xtgm8r48jzr39ru1ww', 1698322585580, 1698322585580, 0, '5md7bsji6pbijpxitu8bwezaqy', 'rkpuunm3rp8fffhzkjxw63usyc', 'panorama', 'P', '', '', false, '', '', 'Panorama', 'Panorama Slash Command', 'http://nautobot:8080/api/plugins/chatops/mattermost/slash_command/', ''); +INSERT INTO public.commands VALUES ('qbxb8a33cimdw77hyxjeuyg80i', 'j9bcga71hl4lreaczecen7i5dz', 1698322527456, 1698322527456, 0, '5md7bsji6pbijpxitu8bwezaqy', 'rkpuunm3rp8fffhzkjxw63usyc', 'nso', 'P', '', '', false, '', '', 'Cisco NSO', 'Cisco NSO Slash Command', 'http://nautobot:8080/api/plugins/chatops/mattermost/slash_command/', ''); -- diff --git a/development/mattermost/nautobot_bootstrap.py b/development/mattermost/nautobot_bootstrap.py index 5a89c2c2..bdd6462c 100644 --- a/development/mattermost/nautobot_bootstrap.py +++ b/development/mattermost/nautobot_bootstrap.py @@ -49,7 +49,7 @@ with contextlib.suppress(ObjectDoesNotExist): admin = User.objects.get(name="admin") ChatOpsAccountLink.objects.update_or_create( - user_id="jactwicuqb8bu8pau8mgjydzeo", + user_id="w7uyhzuo7fnfueen6og9cxmn9h", platform=PlatformChoices.MATTERMOST, defaults={"nautobot_user": admin}, ) From faedee36d63634a1862f07e32d11332f3fd74e18 Mon Sep 17 00:00:00 2001 From: Jan Snasel Date: Mon, 18 Mar 2024 11:41:42 +0000 Subject: [PATCH 86/93] chore: Added changelog fragment --- changes/307.housekeeping | 1 + 1 file changed, 1 insertion(+) create mode 100644 changes/307.housekeeping diff --git a/changes/307.housekeeping b/changes/307.housekeeping new file mode 100644 index 00000000..653c54ac --- /dev/null +++ b/changes/307.housekeeping @@ -0,0 +1 @@ +Re-baked from the latest template. From f0a2bddd99f8fabc460e5f889e771319935d8581 Mon Sep 17 00:00:00 2001 From: Jan Snasel Date: Mon, 18 Mar 2024 12:24:41 +0000 Subject: [PATCH 87/93] chore: Manual fixes --- README.md | 48 ++++++++++++++++--------- docs/admin/release_notes/version_1.0.md | 48 ------------------------- 2 files changed, 31 insertions(+), 65 deletions(-) delete mode 100644 docs/admin/release_notes/version_1.0.md diff --git a/README.md b/README.md index 3616c31e..43a0c439 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Nautobot ChatOps +# Nautobot ChatOps App

+## Overview + - Support for multiple chat platforms: - Mattermost - Microsoft Teams @@ -29,32 +31,44 @@ - Automatic generation of basic help menus (accessed via `help`, `/command help`, or `/command sub-command help`). - Metrics of command usage via the `nautobot_capacity_metrics` app. +### Screenshots + +#### Command: `/nautobot` + +![image](https://user-images.githubusercontent.com/6332586/118281576-5db4e980-b49b-11eb-8574-1332ed4b9757.png) + +#### Command: `/nautobot get-devices` + +![image](https://user-images.githubusercontent.com/6332586/118281772-95239600-b49b-11eb-9c79-e2040dc4a982.png) + +#### Command: `/nautobot get-interface-connections` + +![image](https://user-images.githubusercontent.com/6332586/118281976-ca2fe880-b49b-11eb-87ad-2a41eaa168ed.png) + +## Try it out! + +This App is installed in the Nautobot Community Sandbox found over at [demo.nautobot.com](https://demo.nautobot.com/)! + +> 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/). + ## Documentation -Full web-based HTML documentation for this app can be found over on the [Nautobot Docs](https://docs.nautobot.com/projects/chatops/en/latest/) website: +Full documentation for this App can be found over on the [Nautobot Docs](https://docs.nautobot.com) website: -- [User Guide](https://docs.nautobot.com/projects/chatops/en/latest/user/app_overview/) - Overview, Using the App, Getting Started +- [User Guide](https://docs.nautobot.com/projects/chatops/en/latest/user/app_overview/) - Overview, Using the App, Getting Started. - [Administrator Guide](https://docs.nautobot.com/projects/chatops/en/latest/admin/install/) - How to Install, Configure, Upgrade, or Uninstall the App. - [Developer Guide](https://docs.nautobot.com/projects/chatops/en/latest/dev/contributing/) - Extending the App, Code Reference, Contribution Guide. -- [Release Notes / Changelog](https://docs.nautobot.com/projects/chatops/en/latest/admin/release_notes/) -- [Frequently Asked Questions](https://docs.nautobot.com/projects/chatops/en/latest/user/app_faq/) +- [Release Notes / Changelog](https://docs.nautobot.com/projects/chatops/en/latest/admin/release_notes/). +- [Frequently Asked Questions](https://docs.nautobot.com/projects/chatops/en/latest/user/faq/). - [Glossary](https://docs.nautobot.com/projects/chatops/en/latest/glossary/) -## Try it Out +### Contributing to the Documentation You can find all the Markdown source for the App documentation under the [`docs`](https://github.com/nautobot/nautobot-app-chatops/tree/develop/docs) folder in this repository. For simple edits, a Markdown capable editor is sufficient: clone the repository and edit away. -### Command: `/nautobot` - -![image](https://user-images.githubusercontent.com/6332586/118281576-5db4e980-b49b-11eb-8574-1332ed4b9757.png) - -### Command: `/nautobot get-devices` - -![image](https://user-images.githubusercontent.com/6332586/118281772-95239600-b49b-11eb-9c79-e2040dc4a982.png) +If you need to view the fully-generated documentation site, you can build it with [MkDocs](https://www.mkdocs.org/). A container hosting the documentation can be started using the `invoke` commands (details in the [Development Environment Guide](https://docs.nautobot.com/projects/chatops/en/latest/dev/dev_environment/#docker-development-environment)) on [http://localhost:8001](http://localhost:8001). Using this container, as your changes to the documentation are saved, they will be automatically rebuilt and any pages currently being viewed will be reloaded in your browser. -### Command: `/nautobot get-interface-connections` - -![image](https://user-images.githubusercontent.com/6332586/118281976-ca2fe880-b49b-11eb-87ad-2a41eaa168ed.png) +Any PRs with fixes or improvements are very welcome! ## Questions diff --git a/docs/admin/release_notes/version_1.0.md b/docs/admin/release_notes/version_1.0.md deleted file mode 100644 index 44064e5b..00000000 --- a/docs/admin/release_notes/version_1.0.md +++ /dev/null @@ -1,48 +0,0 @@ -# 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 - -- Major features or milestones -- Achieved in this `x.y` release -- Changes to compatibility with Nautobot and/or other apps, libraries etc. - -## [v1.0.1] - 2021-09-08 - -### Added - -### Changed - -### Fixed - -- [#123](https://github.com/nautobot/nautobot-app-chatops/issues/123) Fixed Tag filtering not working in job launch form - -## [v1.0.0] - 2021-08-03 - -### Added - -### Changed - -### Fixed From 6ff064fda2fe7f49e58a2babe06e699cd659a774 Mon Sep 17 00:00:00 2001 From: Sergey Romanyuk Date: Mon, 18 Mar 2024 11:20:00 -0400 Subject: [PATCH 88/93] NSO integration - Add NSO and responses to pyproject.toml --- pyproject.toml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pyproject.toml b/pyproject.toml index 163d94ed..667b0da5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -36,6 +36,7 @@ include = [ "meraki" = "nautobot_chatops.integrations.meraki.worker:cisco_meraki" "nautobot" = "nautobot_chatops.workers.nautobot:nautobot" "panorama" = "nautobot_chatops.integrations.panorama.worker:panorama" +"nso" = "nautobot_chatops.integrations.nso.worker:nso" [tool.poetry.dependencies] Markdown = "!=3.3.5" @@ -95,6 +96,7 @@ toml = "*" towncrier = "~23.6.0" to-json-schema = "*" jsonschema = "*" +responses = "^0.24.0" [tool.poetry.extras] all = [ From 347a1fa80943ca2040cdf02282f0d4581f9c38f5 Mon Sep 17 00:00:00 2001 From: Sergey Romanyuk Date: Mon, 18 Mar 2024 11:47:13 -0400 Subject: [PATCH 89/93] NSO integration - Update poetry.lock --- poetry.lock | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/poetry.lock b/poetry.lock index 27b63337..2f76ab43 100644 --- a/poetry.lock +++ b/poetry.lock @@ -3792,6 +3792,7 @@ files = [ {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69b023b2b4daa7548bcfbd4aa3da05b3a74b772db9e23b982788168117739938"}, {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:81e0b275a9ecc9c0c0c07b4b90ba548307583c125f54d5b6946cfee6360c733d"}, {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba336e390cd8e4d1739f42dfe9bb83a3cc2e80f567d8805e11b46f4a943f5515"}, + {file = "PyYAML-6.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:326c013efe8048858a6d312ddd31d56e468118ad4cdeda36c719bf5bb6192290"}, {file = "PyYAML-6.0.1-cp310-cp310-win32.whl", hash = "sha256:bd4af7373a854424dabd882decdc5579653d7868b8fb26dc7d0e99f823aa5924"}, {file = "PyYAML-6.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:fd1592b3fdf65fff2ad0004b5e363300ef59ced41c2e6b3a99d4089fa8c5435d"}, {file = "PyYAML-6.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6965a7bc3cf88e5a1c3bd2e0b5c22f8d677dc88a455344035f03399034eb3007"}, @@ -3799,8 +3800,15 @@ files = [ {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42f8152b8dbc4fe7d96729ec2b99c7097d656dc1213a3229ca5383f973a5ed6d"}, {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:062582fca9fabdd2c8b54a3ef1c978d786e0f6b3a1510e0ac93ef59e0ddae2bc"}, {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d2b04aac4d386b172d5b9692e2d2da8de7bfb6c387fa4f801fbf6fb2e6ba4673"}, + {file = "PyYAML-6.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e7d73685e87afe9f3b36c799222440d6cf362062f78be1013661b00c5c6f678b"}, {file = "PyYAML-6.0.1-cp311-cp311-win32.whl", hash = "sha256:1635fd110e8d85d55237ab316b5b011de701ea0f29d07611174a1b42f1444741"}, {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"}, + {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"}, + {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"}, + {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"}, + {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"}, + {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"}, + {file = "PyYAML-6.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:0d3304d8c0adc42be59c5f8a4d9e3d7379e6955ad754aa9d6ab7a398b59dd1df"}, {file = "PyYAML-6.0.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:50550eb667afee136e9a77d6dc71ae76a44df8b3e51e41b77f6de2932bfe0f47"}, {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1fe35611261b29bd1de0070f0b2f47cb6ff71fa6595c077e42bd0c419fa27b98"}, {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:704219a11b772aea0d8ecd7058d0082713c3562b4e271b849ad7dc4a5c90c13c"}, @@ -3817,6 +3825,7 @@ files = [ {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a0cd17c15d3bb3fa06978b4e8958dcdc6e0174ccea823003a106c7d4d7899ac5"}, {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:28c119d996beec18c05208a8bd78cbe4007878c6dd15091efb73a30e90539696"}, {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7e07cbde391ba96ab58e532ff4803f79c4129397514e1413a7dc761ccd755735"}, + {file = "PyYAML-6.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:49a183be227561de579b4a36efbb21b3eab9651dd81b1858589f796549873dd6"}, {file = "PyYAML-6.0.1-cp38-cp38-win32.whl", hash = "sha256:184c5108a2aca3c5b3d3bf9395d50893a7ab82a38004c8f61c258d4428e80206"}, {file = "PyYAML-6.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:1e2722cc9fbb45d9b87631ac70924c11d3a401b2d7f410cc0e3bbf249f2dca62"}, {file = "PyYAML-6.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9eb6caa9a297fc2c2fb8862bc5370d0303ddba53ba97e71f08023b6cd73d16a8"}, @@ -3824,6 +3833,7 @@ files = [ {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5773183b6446b2c99bb77e77595dd486303b4faab2b086e7b17bc6bef28865f6"}, {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b786eecbdf8499b9ca1d697215862083bd6d2a99965554781d0d8d1ad31e13a0"}, {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc1bf2925a1ecd43da378f4db9e4f799775d6367bdb94671027b73b393a7c42c"}, + {file = "PyYAML-6.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04ac92ad1925b2cff1db0cfebffb6ffc43457495c9b3c39d3fcae417d7125dc5"}, {file = "PyYAML-6.0.1-cp39-cp39-win32.whl", hash = "sha256:faca3bdcf85b2fc05d06ff3fbc1f83e1391b3e724afa3feba7d13eeab355484c"}, {file = "PyYAML-6.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:510c9deebc5c0225e8c96813043e62b680ba2f9c50a08d3724c7f28a747d1486"}, {file = "PyYAML-6.0.1.tar.gz", hash = "sha256:bfdf460b1736c775f2ba9f6a92bca30bc2095067b8a9d77876d1fad6cc3b4a43"}, @@ -4031,6 +4041,25 @@ files = [ [package.dependencies] requests = ">=2.0.1,<3.0.0" +[[package]] +name = "responses" +version = "0.24.1" +description = "A utility library for mocking out the `requests` Python library." +optional = false +python-versions = ">=3.8" +files = [ + {file = "responses-0.24.1-py3-none-any.whl", hash = "sha256:a2b43f4c08bfb9c9bd242568328c65a34b318741d3fab884ac843c5ceeb543f9"}, + {file = "responses-0.24.1.tar.gz", hash = "sha256:b127c6ca3f8df0eb9cc82fd93109a3007a86acb24871834c47b77765152ecf8c"}, +] + +[package.dependencies] +pyyaml = "*" +requests = ">=2.30.0,<3.0" +urllib3 = ">=1.25.10,<3.0" + +[package.extras] +tests = ["coverage (>=6.0.0)", "flake8", "mypy", "pytest (>=7.0.0)", "pytest-asyncio", "pytest-cov", "pytest-httpserver", "tomli", "tomli-w", "types-PyYAML", "types-requests"] + [[package]] name = "rfc3339-validator" version = "0.1.4" @@ -4976,4 +5005,4 @@ panorama = ["defusedxml", "ipaddr", "netmiko", "netutils", "pan-os-python"] [metadata] lock-version = "2.0" python-versions = ">=3.8,<3.12" -content-hash = "352d2cdc13f37b487004c249b50f331e5dfeec1aa37bed959a1da26a08348a82" +content-hash = "2494c3e26a2bd784e48c4ed707faa4c9667f047d4e160a58cffc8138bce6b637" From 110b66e076463388e92c805f3cf8de9a1836e184 Mon Sep 17 00:00:00 2001 From: Stephen Kiely Date: Thu, 28 Mar 2024 11:01:30 -0500 Subject: [PATCH 90/93] Run black. --- nautobot_chatops/dispatchers/ms_teams.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nautobot_chatops/dispatchers/ms_teams.py b/nautobot_chatops/dispatchers/ms_teams.py index fba4e999..563461fb 100644 --- a/nautobot_chatops/dispatchers/ms_teams.py +++ b/nautobot_chatops/dispatchers/ms_teams.py @@ -160,8 +160,8 @@ def _send(self, content, content_type="message"): logger.debug("DEBUG: _send() - Sending content with %s", content) logger.debug( "DEBUG: _send() - Sending to URL %s/v3/conversations/%s/activities", - self.context['service_url'], - self.context['conversation_id'], + self.context["service_url"], + self.context["conversation_id"], ) response = requests.post( f"{self.context['service_url']}/v3/conversations/{self.context['conversation_id']}/activities", From d4c17e0d7e22b8209bf218c926645c404cb28908 Mon Sep 17 00:00:00 2001 From: Stephen Kiely Date: Thu, 28 Mar 2024 11:15:59 -0500 Subject: [PATCH 91/93] Add Changelogs --- changes/293.fixed | 1 + changes/293.housekeeping | 1 + 2 files changed, 2 insertions(+) create mode 100644 changes/293.fixed create mode 100644 changes/293.housekeeping diff --git a/changes/293.fixed b/changes/293.fixed new file mode 100644 index 00000000..12da8844 --- /dev/null +++ b/changes/293.fixed @@ -0,0 +1 @@ +Fix Aristacv not disabling with the setting. diff --git a/changes/293.housekeeping b/changes/293.housekeeping new file mode 100644 index 00000000..255d0670 --- /dev/null +++ b/changes/293.housekeeping @@ -0,0 +1 @@ +Add debug logs to msteams dispatcher and api view. From a9113b4ab16a672f62f47a3738d4ae28d39fb3e2 Mon Sep 17 00:00:00 2001 From: Stephen Kiely Date: Thu, 28 Mar 2024 12:28:40 -0500 Subject: [PATCH 92/93] Prepare for 3.0.2 release --- .gitignore | 1 + changes/265.changed | 1 - changes/270.added | 4 ---- changes/288.added | 1 - changes/293.fixed | 1 - changes/293.housekeeping | 1 - changes/297.changed | 1 - changes/307.housekeeping | 1 - changes/8.housekeeping | 1 - docs/admin/release_notes/version_3.0.md | 26 ++++++++++++++++++++++++- pyproject.toml | 2 +- 11 files changed, 27 insertions(+), 13 deletions(-) delete mode 100644 changes/265.changed delete mode 100644 changes/270.added delete mode 100644 changes/288.added delete mode 100644 changes/293.fixed delete mode 100644 changes/293.housekeeping delete mode 100644 changes/297.changed delete mode 100644 changes/307.housekeeping delete mode 100644 changes/8.housekeeping diff --git a/.gitignore b/.gitignore index ccca6f0a..e0e74aa7 100644 --- a/.gitignore +++ b/.gitignore @@ -307,3 +307,4 @@ public /compose.yaml /dump.sql /nautobot_chatops/static/nautobot_chatops/docs +docs/admin/release_notes/version_X.Y.md diff --git a/changes/265.changed b/changes/265.changed deleted file mode 100644 index 5dbed3a4..00000000 --- a/changes/265.changed +++ /dev/null @@ -1 +0,0 @@ -Aligned integrations documentation structure with SSoT. diff --git a/changes/270.added b/changes/270.added deleted file mode 100644 index a5f14277..00000000 --- a/changes/270.added +++ /dev/null @@ -1,4 +0,0 @@ -Add run_job Nautobot subcommand, which initiates a job with kwargs or a job requiring no manual form input. -Add run_job_form Nautobot subcommand, which presents job's form widgets to the user. -Add get_jobs Nautobot subcommand, which returns all Nautobot jobs viewable to user. -Add filter_jobs Nautobot subcommand, which returns filtered set of Nautobot jobs viewable to user. diff --git a/changes/288.added b/changes/288.added deleted file mode 100644 index 80ad085b..00000000 --- a/changes/288.added +++ /dev/null @@ -1 +0,0 @@ -Added Cisco NSO integration diff --git a/changes/293.fixed b/changes/293.fixed deleted file mode 100644 index 12da8844..00000000 --- a/changes/293.fixed +++ /dev/null @@ -1 +0,0 @@ -Fix Aristacv not disabling with the setting. diff --git a/changes/293.housekeeping b/changes/293.housekeeping deleted file mode 100644 index 255d0670..00000000 --- a/changes/293.housekeeping +++ /dev/null @@ -1 +0,0 @@ -Add debug logs to msteams dispatcher and api view. diff --git a/changes/297.changed b/changes/297.changed deleted file mode 100644 index 7a7cdde0..00000000 --- a/changes/297.changed +++ /dev/null @@ -1 +0,0 @@ -Replaced pydocstyle with ruff. diff --git a/changes/307.housekeeping b/changes/307.housekeeping deleted file mode 100644 index 653c54ac..00000000 --- a/changes/307.housekeeping +++ /dev/null @@ -1 +0,0 @@ -Re-baked from the latest template. diff --git a/changes/8.housekeeping b/changes/8.housekeeping deleted file mode 100644 index 653c54ac..00000000 --- a/changes/8.housekeeping +++ /dev/null @@ -1 +0,0 @@ -Re-baked from the latest template. diff --git a/docs/admin/release_notes/version_3.0.md b/docs/admin/release_notes/version_3.0.md index 0c5ecaff..c02dd2bf 100644 --- a/docs/admin/release_notes/version_3.0.md +++ b/docs/admin/release_notes/version_3.0.md @@ -13,4 +13,28 @@ ### Fixed -- [[#281](https://github.com/nautobot/nautobot-app-chatops/issues/281) - Address permissions bug found during release review. \ No newline at end of file +- [#281](https://github.com/nautobot/nautobot-app-chatops/issues/281) - Address permissions bug found during release review. + +## [v3.0.2 (2024-03-28)](https://github.com/nautobot/nautobot-app-chatops/releases/tag/v3.0.2) + +### Added + +- [#270](https://github.com/nautobot/nautobot-app-chatops/issues/270) - Add run_job Nautobot subcommand, which initiates a job with kwargs or a job requiring no manual form input. +- [#270](https://github.com/nautobot/nautobot-app-chatops/issues/270) - Add run_job_form Nautobot subcommand, which presents job's form widgets to the user. +- [#270](https://github.com/nautobot/nautobot-app-chatops/issues/270) - Add get_jobs Nautobot subcommand, which returns all Nautobot jobs viewable to user. +- [#270](https://github.com/nautobot/nautobot-app-chatops/issues/270) - Add filter_jobs Nautobot subcommand, which returns filtered set of Nautobot jobs viewable to user. +- [#288](https://github.com/nautobot/nautobot-app-chatops/issues/288) - Added Cisco NSO integration + +### Changed + +- [#265](https://github.com/nautobot/nautobot-app-chatops/issues/265) - Aligned integrations documentation structure with SSoT. +- [#297](https://github.com/nautobot/nautobot-app-chatops/issues/297) - Replaced pydocstyle with ruff. + +### Fixed + +- [#293](https://github.com/nautobot/nautobot-app-chatops/issues/293) - Fix Aristacv not disabling with the setting. + +### Housekeeping + +- [#8](https://github.com/nautobot/nautobot-app-chatops/issues/8), [#307](https://github.com/nautobot/nautobot-app-chatops/issues/307) - Re-baked from the latest template. +- [#293](https://github.com/nautobot/nautobot-app-chatops/issues/293) - Add debug logs to msteams dispatcher and api view. diff --git a/pyproject.toml b/pyproject.toml index c03a3c3d..118823bd 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "nautobot-chatops" -version = "3.0.1" +version = "3.0.2" description = "A app providing chatbot capabilities for Nautobot" authors = ["Network to Code, LLC "] license = "Apache-2.0" From 54dc6e86146649cd41eee096ff3038adef122f28 Mon Sep 17 00:00:00 2001 From: Stephen Kiely Date: Thu, 28 Mar 2024 12:55:42 -0500 Subject: [PATCH 93/93] Add Changelog fragment --- changes/309.housekeeping | 1 + 1 file changed, 1 insertion(+) create mode 100644 changes/309.housekeeping diff --git a/changes/309.housekeeping b/changes/309.housekeeping new file mode 100644 index 00000000..9d48b6f2 --- /dev/null +++ b/changes/309.housekeeping @@ -0,0 +1 @@ +Release v3.0.2

@@ -8,9 +8,11 @@
- A multi-platform ChatOps bot App for Nautobot. + A multi-platform ChatOps bot App for Nautobot.