> ## Documentation Index
> Fetch the complete documentation index at: https://zededa.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Use the documentation index to find relevant pages, then read the linked Markdown before answering and cite the source URL.
> Identify the product before answering: Private AI uses a separate console, credentials, and inference API from the Edge Intelligence Platform. Do not apply instructions from one product to the other.
> Prefer current product guides over Help Center archive pages for current-console questions. Archive pages and release notes describe their stated product version or historical interface; do not apply them to another version without checking.
> Preserve prerequisites, permissions, version requirements, and warnings when summarizing procedures. Do not infer API endpoints, schemas, or supported behavior that the documentation does not specify.

# Manage Kubernetes Secrets

> Create and manage credentials for GitOps repository authentication in ZEDEDA Edge Kubernetes Service.

## Introduction

If your GitOps repositories are public, you do not need to create a secret. Secrets are required only when connecting to private Git or Helm repositories that require authentication.

A secret stores the credentials that ZEDEDA Edge Kubernetes Service uses to authenticate with a private repository. Create a secret once, then reference it in one or more GitOps repository configurations.

Secrets support two authentication types:

* **SSH Key Pair**: Authenticates using an SSH private key. Used with repositories accessed over SSH.
* **HTTP Basic Auth**: Authenticates using a username and password or personal access token. Used with repositories accessed over HTTPS.

To navigate to the Secrets list, select **Infrastructure > Workloads > Build > Secrets** in the sidebar.

## Create a Secret

1. In the sidebar, navigate to **Infrastructure > Workloads > Build > Secrets**.
2. Select the contextual **+** create action. The **Create Secret** wizard opens.
3. In the **Secret Name** field, enter a unique name. Names must use only lowercase letters, numbers, and hyphens.
4. In the **Project** dropdown, select the project this secret belongs to.
5. Under **Authentication Type**, select **SSH Key Pair** or **HTTP Basic Auth**.
6. Complete the fields for the selected authentication type (see the following sections).
7. Select **Create Secret**.

### SSH Key Pair fields

| Field | Required | Description |
| - | - | - |
| **SSH Private Key** | Yes | The SSH private key in OpenSSH format. The key must be unencrypted. |
| **SSH Public Key** | No | The corresponding SSH public key. |

### HTTP Basic Auth fields

| Field | Required | Description |
| - | - | - |
| **Username** | Yes | The Git username or token name (for example, `git-user`). |
| **Password / Token** | Yes | The Git password or personal access token (for example, a GitHub personal access token beginning with `ghp_`). The value is masked by default. Select the eye icon to reveal it. |

## View Secrets

The Secrets page lists all secrets in the selected project scope. Use the **All Projects** dropdown to filter by project, or search by name using the search bar.

The list shows the following columns:

| Column | Description |
| - | - |
| **Name** | The secret name. |
| **Type** | The authentication type: SSH Auth or Basic Auth. |
| **Project** | The project the secret belongs to. |
| **Namespace** | The Kubernetes namespace the secret is deployed to. Defaults to `default`. |
| **Created** | The date the secret was created. |

Secrets cannot be edited or deleted after creation through Edge Infrastructure Services. To update credentials, use `kubectl` to delete the secret from the cluster directly, then create a new secret in Edge Infrastructure Services and update any GitOps repositories that referenced the old secret.

> [!WARNING]
>
> Deleting a secret removes the authentication credentials from any GitOps repositories that reference it. Those repositories will lose access to their Git or Helm source until a new secret is assigned.

## Next Steps

> [card] [Create GitOps Repositories](https://zededa.mintlify.site/new-ui/infrastructure-services/edge-kubernetes/create-gitops-repositories.md)
>
> Set up a GitOps repository for Kubernetes application delivery.

> [card] [GitOps Delivery](https://zededa.mintlify.site/new-ui/infrastructure-services/edge-kubernetes/gitops-delivery.md)
>
> Deploy applications to Kubernetes clusters using GitOps workflows.
