> For the complete documentation index, see [llms.txt](https://docs.openg2p.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.openg2p.org/operations/deployment/deployment-guide/deployment-of-novu.md).

# Deployment of Novu

The instructions here pertain to the deployment of Novu and associated components on the Kubernetes cluster using [Novu helm chart](https://github.com/OpenG2P/openg2p-deployment/tree/main/charts/novu). All the components are installed in the same namespace.

## Prerequisites

Before you deploy, make sure the following are in place:

* ✅ [Infrastructure setup](/operations/deployment/infrastructure-setup/production-automation.md) is completed.
* ✅ [Environment](/operations/deployment/infrastructure-setup/environment-setup-multi-node.md) has been setup with common resources installed.
* ✅ Domain name `novu.<your environment>.<your domain name>` (e.g. `novu.qa.openg2p.org`) is available along with SSL certificate for the domain (*the wild certificate should have already been loaded during Infrastructure setup*)
* ✅ **Project Owner access** on the OpenG2P namespace

## Installation using Rancher UI

1. Log in to Rancher admin console.
2. Select your cluster.
3. Under **Apps -> Repositories** click on Create to add a repository.
4. Provide Name as `openg2p` and target HTTPS Index URL as <https://openg2p.github.io/openg2p-helm/rancher> and click Create.

   <figure><img src="/files/KcCFRU6l02S3cUkAT1mF" alt=""><figcaption></figcaption></figure>
5. To display prerelease versions of OpenG2P apps, click on your user avatar in the upper right corner of the Rancher dashboard. Then click on `Include Prerelease Versions` under Preferences under Helm Charts.

   <figure><img src="/files/CqBzyh0OR4U65ZEpuYNd" alt=""><figcaption></figcaption></figure>
6. Select the namespace in which you would like to install novu, from the namespace filter on the top-right.
7. Navigate to **Apps->Charts** page on Rancher. You should see `novu` Helm charts listed.

   <figure><img src="/files/ca8m0vnZBxnN7lCKWXih" alt=""><figcaption></figcaption></figure>
8. Proceed to Install `novu` chart select the latest version to be installed, and click Install.
9. On the next screen, choose a name for installation, like `novu`. Select the checkbox `Customise Helm options` before install, and click Next.
10. Go through each app's configuration page, and configure the following:
    1. Configure a hostname for each app in the following way. `<appname>.<base-hostname>` , where base host name is the environment's wildcard base domain set up during the [Environment](/operations/deployment/infrastructure-setup/environment-setup-multi-node.md) stage (the Istio `Gateway` for `*.<base_domain>`). Example: `novu-api.qa.openg2p.org`, etc. `<appname>` is arbitrary - default names have been provided.
11. Click Next to reach Helm Options page. Disable `wait` flag. Click on Install.
12. Wait for all the pods to get into **Running state**. This may take several minutes.

    <div align="left"><figure><img src="/files/m8ilImTUVKgCIfuFnUsJ" alt=""><figcaption></figcaption></figure></div>

## Post Installation

### Accessing the novu

On the browser connect to URL

<https://novu.dev.your.org/>

#### Configuring the novu (TODO)<br>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.openg2p.org/operations/deployment/deployment-guide/deployment-of-novu.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
