# eSignet Deployment

## Introduction

This doc provides instructions on installing eSignet on the OpenG2P cluster.

This is only required for sandbox/pilot environments. Or when eSignet is not present or is not provided by the ID Provider. If an eSignet instance is already available, OpenG2P Modules can just connect to that instance.

This doc only provides instructions to install eSignet with Mock ID System (for integration with real ID system, refer to [eSignet docs](https://docs.esignet.io)).

## Prerequisites

* The following utilities/tools must be present on the user's machine.
  * `kubectl`, `istioctl`, `helm`, `jq`, `curl`, `wget`, `git`, `bash`, `envsubst`.
* [PostgreSQL](/1.2/deployment/external-components-setup/postgresql-server.md)
* [Keycloak](/1.2/deployment/external-components-setup/keycloak-deployment.md) for API Authentication
* [Keymanager](/1.2/deployment/external-components-setup/keymanager-deployment.md)

## Installation

* Clone the <https://github.com/openg2p/openg2p-deployment> repo and navigate to [kubernetes/esignet](https://github.com/OpenG2P/openg2p-deployment/tree/main/kubernetes/esignet) directory.
* Run:

  ```bash
  SANDBOX_HOSTNAME="openg2p.sandbox.net" \
      ./install.sh
  ```

## Post-installation

After installation is successful, eSignet can be accessed at <https://esignet.openg2p.sandbox.net>, depending on the hostname given above.

To seed more data of beneficiaries into the mock ID system APIs, use the APIs available at <https://esignet.openg2p.sandbox.net/v1/mock-identity-system/swagger-ui/index.html.&#x20>;

Or edit and use this script <https://github.com/OpenG2P/openg2p-data/blob/develop/scripts/upload_data_to_mock_esignet.py> to upload data. TODO: elaborate.


---

# Agent Instructions: 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:

```
GET https://docs.openg2p.org/1.2/deployment/external-components-setup/esignet-deployment.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
