Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions website/docs/litmusctl/additional-commands.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
id: additional-commands
title: Additional Commands
sidebar_label: Additional Commands
---



This guide covers additional litmusctl commands for managing your ChaosCenter account, projects, environments, and chaos infrastructures.

Follow this [guide](https://github.com/litmuschaos/litmusctl/blob/master/Usage_0.23.0.md#additional-commands) to learn more about litmusctl commands.
11 changes: 11 additions & 0 deletions website/docs/litmusctl/connect-chaos-infrastructure.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
id: connect-chaos-infrastructure
title: Connect Chaos Infrastructure
sidebar_label: Connect Chaos Infrastructure
---



This guide walks you through connecting a Chaos Infrastructure to your ChaosCenter using litmusctl. A Chaos Infrastructure is required to run chaos experiments in your Kubernetes cluster.

Follow this [guide](https://github.com/litmuschaos/litmusctl/blob/master/Usage_0.23.0.md#steps-to-connect-a-chaos-infrastucture) to connect a Chaos Infrastructure.
10 changes: 10 additions & 0 deletions website/docs/litmusctl/create-chaos-experiment.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
id: create-chaos-experiment
title: Create Chaos Experiment
sidebar_label: Create Chaos Experiment
---


This guide demonstrates how to create and run chaos experiments using litmusctl. You can create experiments using manifest files and manage them through the command line interface.

Follow this [guide](https://github.com/litmuschaos/litmusctl/blob/master/Usage_0.23.0.md#steps-to-create-a-chaos-experiment) to create Chaos Experiment.
69 changes: 49 additions & 20 deletions website/docs/litmusctl/litmusctl-usage.md
Original file line number Diff line number Diff line change
@@ -1,26 +1,55 @@
---
id: litmusctl-usage
title: Litmusctl Usage
sidebar_label: Litmusctl Usage
title: Overview
sidebar_label: Usage Overview
---

---

<table>
<tr>
<th>Topic</th>
<th>User Guides</th>
</tr>
<tr>
<td>Connect Chaos Infrastructure</td>
<td><a href="https://github.com/litmuschaos/litmusctl/blob/master/Usage_0.23.0.md#steps-to-connect-a-chaos-infrastucture">Click Here</a></td>
</tr>
<tr>
<td>Create Chaos Experiment</td>
<td><a href="https://github.com/litmuschaos/litmusctl/blob/master/Usage_0.23.0.md#steps-to-create-a-chaos-experiment">Click Here</a></td>
</tr>
<tr>
<td>Additional Commands</td>
<td><a href="https://github.com/litmuschaos/litmusctl/blob/master/Usage_0.23.0.md#additional-commands">Click Here</a></td>
</tr>
</table>
This section provides comprehensive guides for using litmusctl to manage your chaos engineering workflows. litmusctl is the command-line interface for LitmusChaos that enables you to interact with ChaosCenter and manage chaos experiments from your terminal.

## What You Can Do with litmusctl

With litmusctl, you can:

- **Connect Chaos Infrastructure**: Set up and connect chaos infrastructure to your ChaosCenter
- **Create and Manage Experiments**: Design, create, and run chaos experiments using manifest files
- **Manage Projects and Environments**: Organize your chaos engineering efforts across different projects and environments
- **Monitor and Control**: Track experiment status and manage your chaos engineering resources

## Getting Started

Before diving into the specific usage guides, ensure you have:

1. **litmusctl installed** - Follow the [installation guide](installation.md)
2. **Access to ChaosCenter** - You'll need valid credentials for your ChaosCenter instance
3. **Kubernetes cluster access** - Required for connecting chaos infrastructure

## Usage Guides

The following guides will walk you through the key litmusctl workflows:

### [Connect Chaos Infrastructure](connect-chaos-infrastructure.md)
Learn how to connect a chaos infrastructure to your ChaosCenter. This is typically the first step after installation, allowing you to run chaos experiments in your Kubernetes cluster.

### [Create Chaos Experiment](create-chaos-experiment.md)
Discover how to create and run chaos experiments using litmusctl. This guide covers creating experiments from manifest files, running them, and monitoring their progress.

### [Additional Commands](additional-commands.md)
Explore additional litmusctl commands for account management, project operations, environment handling, and infrastructure management.

## Quick Reference

| Task | Command |
|------|---------|
| Setup account | `litmusctl config set-account` |
| Connect infrastructure | `litmusctl connect chaos-infra` |
| Create experiment | `litmusctl create chaos-experiment -f <file>` |
| List projects | `litmusctl get projects` |
| List infrastructures | `litmusctl get chaos-infra` |

## Next Steps

1. Start with [Connect Chaos Infrastructure](connect-chaos-infrastructure.md) to set up your first chaos infrastructure
2. Move on to [Create Chaos Experiment](create-chaos-experiment.md) to run your first experiment
3. Explore [Additional Commands](additional-commands.md) for advanced usage and management tasks
76 changes: 76 additions & 0 deletions website/docs/user-guides/setup-with-helm.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
---
id: setup-with-helm
title: Install ChaosCenter with Helm
sidebar_label: Setup with Helm
---

---

If you prefer to install and configure Dex via the LitmusChaos Helm chart, you can provide the required environment variables through a `values.yaml` file.

## Prerequisites
Add Litmus Helm Repository

```bash
helm repo add litmuschaos https://litmuschaos.github.io/litmus-helm/
helm repo update
```

## Create a values file
Create a file named dex-values.yaml and add the required configuration:

```yaml
chaoscenter:
dex:
enabled: true
env:
- name: DEX_ENABLED
value: "true"
- name: OIDC_ISSUER
value: "<https://accounts.google.com>" # Example: Google, GitHub issuer URL
- name: DEX_OAUTH_CALLBACK_URL
value: "http://<chaoscenter-host>/auth/callback"
- name: DEX_OAUTH_CLIENT_ID
value: "<your-client-id>"
- name: DEX_OAUTH_CLIENT_SECRET
value: "<your-client-secret>"
```

:::note
- Replace `<chaoscenter-host>`, `<your-client-id>`, and `<your-client-secret>` with your actual values from the OAuth provider configuration.
- For Google/GitHub, use their respective OIDC issuer URL.
:::

## Install ChaosCenter with Dex enabled

```bash
helm install chaos litmuschaos/litmus \
-n litmus \
--create-namespace \
-f dex-values.yaml
```

## Upgrade (if ChaosCenter already installed)

```bash
helm upgrade chaos litmuschaos/litmus \
-n litmus \
-f dex-values.yaml
```

## Verify the installation

- Check if the Dex pod is running:

```bash
kubectl get pods -n litmus | grep dex
```

Open the ChaosCenter UI and log in with your configured OAuth provider.


## Learn more

- [Setup Endpoints and Access ChaosCenter without Ingress](setup-without-ingress.md)
- [Install ChaosCenter with HTTP](../getting-started/installation.md)
- [Install ChaosCenter with HTTPS](chaoscenter-advanced-installation.md)
20 changes: 16 additions & 4 deletions website/sidebars.js
Original file line number Diff line number Diff line change
Expand Up @@ -81,10 +81,10 @@ module.exports = {
'user-guides/chaoscenter-oauth-dex-installation',
'user-guides/chaoscenter-advanced-installation',
'user-guides/setup-without-ingress',
'user-guides/setup-with-ingress'
'user-guides/setup-with-ingress',
'user-guides/setup-with-helm'
]
},
'user-guides/chaos-infrastructure-installation'
}
]
},
{
Expand Down Expand Up @@ -147,7 +147,19 @@ module.exports = {
className: 'category-as-header',
collapsed: false,
collapsible: false,
items: ['litmusctl/installation', 'litmusctl/litmusctl-usage']
items: [
'litmusctl/installation',
{
type: 'category',
label: 'Litmusctl Usage',
items: [
'litmusctl/litmusctl-usage',
'litmusctl/connect-chaos-infrastructure',
'litmusctl/create-chaos-experiment',
'litmusctl/additional-commands'
]
}
]
},
{
type: 'category',
Expand Down